BlockSet - ТОП 50 лучших книг
Статья рассматривает комплексную методику оценки программного кода на основе системы критериев, связанных как с особенностями самого языка, так и с психологическими факторами испытуемых. Каждый элемент системы предполагает отдельное исследование. В настоящей статье детально рассматриваются характеристики оценки программного кода. Цель работы – построение эффективной методики оценки качества и состоятельности языка BML, рассмотренного в предыдущих публикациях. Построение методики оценки основано на учете типа языка – предметно-специфичного, декларативного.
Разработка веб-ресурса в наши дни – очень частая, но не всегда простая задача. Особенно если речь идет не о статическом одностраничном сайте, а о полнофункциональном динамическом веб-приложении с неограниченным количеством страниц, а также возможностью выдерживать большие нагрузки, свойственные подобного рода проектам. Использование языков программирования общего назначения для построения логики серверной части имеет большой порог вхождения, а традиционные CMS и фреймворки ЯП не обеспечивают достаточную гибкость. Наиболее верным решением в такой ситуации будет использовать DSL- подобные языки, которые просты в обращении и при этом имеют обширные возможности благодаря тому, что заранее ориентированы на решение конкретных задач. Однако на данный момент существует очень мало готовых решений. Заметным лидером в этой области является WebDSL, однако даже он имеет ряд недостатков, унаследованных от языка реализации данного проекта Java, таких как, например, малая гибкость, большие затраты производительности и не…
Современные клиент-серверные модели представляют собой сложные инженерные решения, структура которых состоит из множества компонентов. Актуальной задачей является обеспечение комплексного функционирования такой архитектуры, особенно если речь идет о высоконагруженных системах, где важнейший фактор – корректное масштабирование, причем как в пространстве, так и во времени. В работе решена задача перестроения больших внутренних структур данных согласно обновляющейся пользовательской логике, исполняемой интерпретатором. В связи с возможностью возникновения серьезных задержек в обработке клиентских запросов интерпретатора предложено решение перенести данный функционал во внешнее приложение – синхронизатор.
В статье рассматривается теоретическое обоснование применения новой методологии в разработке Web-узлов серверной и клиентской сторон. Авторами была разработана методология BlockSet, включающая в себя декларативный язык программирования BML и интерпретатор, понимающий этот язык. Рассматриваются преимущества декларативного программирования перед императивным. Отмечена прямая связь структуры BML и визуального редактора, с помощью которого стало возможным моделирование логики и представления Web-документа без использования алгоритмического программирования.
В работе показана архитектура модуля обработки данных, используемого в интерпретаторе декларативного языка моделирования BML. В статье дается теоретическое обоснование и рассматривается практическое применение элемента «Block» в рамках языка BML.
В работе также описывается архитектура класса элемента и его дочерних классов, дается детальное обоснование использования паттерна «абстрактная фабрика».
В статье рассмотрена архитектура и принципы работы системы прав доступа в проекте BlockSet. Показано устройство как с позиции администрирования, так и с позиции внутренней организации. Авторами показана возможность реализации разграничений прав доступа различного уровня сложности простыми и доступными инструментами проекта BlockSet.
Рассматривается архитектура интерпретатора декларативного языка программирования серверной стороны. Представленный интерпретатор предназначен для работы в высоконагруженных облачных вычислительных комплексах. Исследуются инструменты разработки проекта.
Предлагается серверная архитектура. В интерпретаторе выявляются наиболее уязвимые компоненты, требующие больших вычислительных мощностей, исследуются сторонние библиотеки на предмет эффективности. Результатом работы является производительный интерпретатор языка BML и проект его серверной архитектуры.