структура проекта приложения с

Оформление приложений проектной работы

Содержание статьи

Приложения к проектной работе оформляется так же, как и основной текст проекта, приложения – это дополнительный материал, но при оформлении текста, картинок, рисунков и таблиц расположенных в приложении есть и отличия от основного текста.

Оформление заголовка приложения

Если в проектной работе от 1 до 5 приложений, то каждое приложение начинается с нового листа, а заголовок помещается в начале листа с выравниванием по центру, записывается прописными буквами, полужирным начертанием и обозначается заглавной буквой русского алфавита (ПРИЛОЖЕНИЕ А, ПРИЛОЖЕНИЕ Б и т.д.). При этом нельзя использовать буквы: Ё, З, Й, О, Ъ, Ы, Ь.

Все приложения необходимо включить в содержание проектной работы, в содержании указывается буква приложения и с какой страницы оно начинается (подробнее о том, как сделать содержание проекта можно прочитать на странице «Оформление содержания проектной работы»).

структура проекта приложения с. oboznachenie prilozheniy v soderzhanii. структура проекта приложения с фото. структура проекта приложения с-oboznachenie prilozheniy v soderzhanii. картинка структура проекта приложения с. картинка oboznachenie prilozheniy v soderzhanii.

Обозначение приложений в содержании проектной работы

Если в проектной работе более 5 приложений, в таком случае после списка литературы, посередине следующего листа необходимо сделать заголовок «ПРИЛОЖЕНИЯ» (как показано на рисунке ниже), далее все приложения оформляются как в предыдущем примере. Ещё одним отличием является то, что в содержание проекта необходимо выносить не все приложения с буквенными обозначениями, а лишь слово «ПРИЛОЖЕНИЯ» и указать номер страницы с которого начинаются приложения.

структура проекта приложения с. otdelnyiy blok dlya prilozheniy. структура проекта приложения с фото. структура проекта приложения с-otdelnyiy blok dlya prilozheniy. картинка структура проекта приложения с. картинка otdelnyiy blok dlya prilozheniy.

Оформление раздела с приложениями проектной работы

Название приложения в проектной работе

Все приложения должны иметь название, оно располагается по центру листа через 1 пустую строку от заголовка, записывается тем же шрифтом, что и весь текст работы, с первой прописной, может выделятся полужирным начертанием.

структура проекта приложения с. nazvanie prilozheniya v proektnoy rabote. структура проекта приложения с фото. структура проекта приложения с-nazvanie prilozheniya v proektnoy rabote. картинка структура проекта приложения с. картинка nazvanie prilozheniya v proektnoy rabote.

Пример оформления заголовка приложения проектной работы

Текст в приложении проектной работы – оформление и особенности

В отличие от текста в основной части проекта текст в приложении можно записывать меньшим шрифтом (до 12 pt) и использовать одинарный интервал (делать это не обязательно, но при большом объёме приложений рекомендуется). Во всём остальном оформление текста в основной части и в приложении ничем не отличается.

структура проекта приложения с. oformlenie teksta v prilozhenii. структура проекта приложения с фото. структура проекта приложения с-oformlenie teksta v prilozhenii. картинка структура проекта приложения с. картинка oformlenie teksta v prilozhenii.

Оформления текста в приложении проектной работы

Также необходимо помнить, что необходимо придерживаться единого оформления для всех приложений, например, если текст в ПРИЛОЖЕНИЕ А оформлен через один интервал 14 шрифтом, то и последующие приложения должны быть оформлены в таком же стиле.

Оформление таблиц и рисунков в приложении проекта

При оформлении таблиц и рисунков в приложениях необходимо ориентироваться на их оформление в основной части проектной работы, но есть и отличия их мы и рассмотри:

структура проекта приложения с. ssyilka na risunok v prilozhenii. структура проекта приложения с фото. структура проекта приложения с-ssyilka na risunok v prilozhenii. картинка структура проекта приложения с. картинка ssyilka na risunok v prilozhenii.

Пример ссылки на рисунок в приложении проектной работы

Ссылки на приложения в проектной работе

На все приложения, представленные в проектной работе, должны быть ссылки. Если в приложении есть таблицы или рисунки и на них ставится ссылка, правильно ссылаться не на все приложение, а на конкретную таблицу или рисунок, сделать это необходимо так:

структура проекта приложения с. ssyilka na prilozhenie variant 1. структура проекта приложения с фото. структура проекта приложения с-ssyilka na prilozhenie variant 1. картинка структура проекта приложения с. картинка ssyilka na prilozhenie variant 1.

Пример ссылкок на приложение проектной работы

Таким образом, оформление приложений проектной работы особо не отличается от оформления основной части проектно-исследовательской работы, но необходимо обязательно учитывать особенности оформления приложений при написании проекта, так, например, неправильные ссылки на таблицы и рисунки приложений могут запутать учителя или преподавателя, что в итоге скажется на итоговой оценке работы.

Источник

Must-have документация для мобильного разработчика. Часть 1

Во время разработки приложений необходимо учитывать интересы сразу нескольких групп участников: заказчики (бизнес), проектировщики, тестировщики, разработчики и дизайнеры. Однако документация обычно готовится только для заказчиков, а про разработчиков и тестировщиков почему-то постоянно забывают. В нашей первой статье мы расскажем о том, как можно самостоятельно подготовить необходимый комплект документации, утереть нос проектировщикам и получить документацию, которая будет соответствовать коду, а не абстрактным бизнес-фичам.

структура проекта приложения с. m8t1yy5kwujket1nvg5zze6iozk. структура проекта приложения с фото. структура проекта приложения с-m8t1yy5kwujket1nvg5zze6iozk. картинка структура проекта приложения с. картинка m8t1yy5kwujket1nvg5zze6iozk.

Это серия статей «Must-have документация для мобильного разработчика»: Часть 1 и Часть 2.

Передаю слово Вячеславу Черникову.

В первой части мы расскажем о том, почему важно уделять внимание техническому проектированию и опишем необходимый минимум документации, которая позволит создать «скелет» проекта на основе пользовательского интерфейса.

Данная статья является сокращенной версией руководства, доступного по ссылке в конце статьи.

Первичная документация

Ключевую идею, с которой мы начнем, можно коротко сформулировать следующим образом:

Мобильные бизнес-приложение — это в первую очередь пользовательский интерфейс для взаимодействия с внешним сервисом.

При разработке технической документации на проект это стоит обязательно учитывать, так как интерфейс нагляден и на его основе проще проводить разделение проекта на разделы. Да и сама модель предметной области очень хорошо описывается интерфейсом — в ней необходимо учитывать в основном те данные (и их производные), которые вводятся пользователем, отображаются на экране и управляют его поведением. Бизнес-сценарии также напрямую завязаны на поведение пользовательского интерфейса.

В то же самое время большинство ТЗ готовится для бизнес-заказчиков и описывают не конкретные экраны или сервисы, а целые бизнес-сценарии и блоки функциональности. В дальнейшем эта документация и спецификации дизайна используются командой разработки. Для кодирования и последующей реализации используются многократные перечитки и пересказы ТЗ.

В следующих главах мы опишем минимально необходимый набор документов, которые позволят команде использовать простые чек-листы для контроля реализации.

Прежде чем мы перейдем к разбору артефактов и извлечению из них полезных данных, давайте рассмотрим весь процесс разработки целиком. Для простоты мы выберем линейный процесс разработки, так как при использовании циклических или спиральных методологий возникают те же самые классы задач, только последовательность их выполнения может отличаться.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Итак, у проекта обычно выделяют следующие производственные классы задач:

Можно выделить и больше, но они по факту будут являться производными от обозначенных.

На этапе аналитики производится поиск решения, описание общих требований к приложению. На выходе с этапа аналитики появляются спецификации, которые являются вводными для этапа проектирования.

Так как наше руководство предназначено в первую очередь для разработчиков, то считаем, что бриф или базовое ТЗ у вас есть.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Дальше начинается самое интересное – проектирование пользовательского интерфейса. Этот этап является ключевым и при правильном подходе очень сильно облегчает и упрощает процесс разработки. Если же данный этап пропущен, то дальше успех проекта будет зависеть только от опыта команды.

На этапе проектирования самым важным является продумывание пользовательского интерфейса и создание схем экранов.

Если начинать сразу с дизайна (вместо схем экранов), то придется постоянно переделывать его (дизайн) для согласования с заказчиком. На этапе проектирования это сильно замедлит процесс. Дизайн фактически является производным от UX и наполняет изначальные схемы эмоциями, выправляет композицию, добавляет анимации и другие аспекты внешнего вида и визуального поведения. Схемы экранов, в свою очередь, создают структуру приложения и моделей данных — какие данные отображать, как они будут сгруппированы, как они будут влиять на поведение интерфейса.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

На выходе с этапа проектирования будет получен комплект необходимых спецификаций и ресурсов, которые вместе с ТЗ уйдут разработчику. Этап кодирования разумно начинать с построения фундамента – базовой структуры проекта, в чем нам очень поможет понимание ключевых пользовательских сценариев.

Экраны, данные и логика

Напомним еще раз, что мобильные приложения это в первую очередь пользовательский интерфейс, поэтому и проектирование лучше начать со схем экранов и последовательности переходов между ними. Это необходимо для того, чтобы определить набор шагов, которые предстоит пройти пользователю для получения желаемого результата. Ведь бизнес-приложение создается для определенного набора ключевых сценариев (последовательности действий пользователя), с помощью которых человек может решить свои задачи.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Так как среднее время контакта человека со смартфоном составляет всего несколько минут, то количество шагов в бизнес-приложениях не должно быть большим — для пользователя в первую очередь важно получить результат (выполнить задачу или удовлетворить потребность) за время контакта с устройством. Для сложных приложений с большим количеством функциональных возможностей следует учитывать этот фактор. Хорошим выбором станет разделение приложения на относительно короткие сценарии не более 10 шагов каждый.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Для того, чтобы определить глубину ключевых сценариев, можно использовать карту переходов и состояний, подробнее о которой будет рассказано в следующих разделах. Но для начала требуется привести в порядок структуру интерфейса.

Группировка экранов и сквозное именование

Итак, у нас на руках есть схемы экранов от проектировщиков/дизайнеров и последовательность переходов между ними.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Для того, чтобы разбить приложение на части (разделы предметной области), мы пойдем от экранов. Еще раз напомним, что мобильное приложение это в первую очередь интерфейс взаимодействия с пользователем, поэтому наши экраны и являются прямым отражением доступной ему модели предметной области.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Первым делом необходимо выделить экраны, которые связаны между собой, обычно они должны идти друг за другом в пользовательских сценариях. Например, часто в приложениях можно выделить раздел Account с просмотром и редактированием всей информации, связанной с профилем пользователя.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Если вы опытный программист, то легко справитесь с разделением списка экранов на связанные разделы. В любом случае, потребуется немного практики.

Итак, у нас могут получиться следующие разделы:

Каждый раздел должен иметь название и номер. Названия разделов следует использовать для горизонтального разделения слоя работы с данными, бизнес-логики и пользовательского интерфейса. Это позволит в дальнейшем проще развивать проект.

Например, слой работы с данными (группы методов для различных серверных API) в этом случае разделится на разделы (репозитории, если вам так привычнее), каждый из которых будет обслуживать свой набор экранов:

AccountDataService.cs (или AccountRepository.cs)

В дальнейшем каждый из репозиториев может полностью скрывать всю работу с сервером, дисковым кешем и локальной СУБД. Это позволит на уровне бизнес-логики работать с репозиториями как с черными ящиками.

Дальше предстоит пронумеровать и назвать экраны (страницы, окна). На выходе у нас получится древовидная (хотя и плоская) структура интерфейса без учета последовательности переходов между экранами и их вложенности.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Имена экранов будут использоваться у нас в названиях классов для соответствующих страниц (Page) и ViewModel (или Controller для MVС):

В первую очередь это важно для разработчиков, которые фактически получают готовую структуру проекта:

Как видим, уже вырисовывается скелет проект. Слой DAL можно легко выделить в отдельную библиотеку. Если же у вас используется типовая архитектура или шаблон проекта (Base-классы, NavigationService, и т.д.), то считайте, что костяк приложения у вас уже имеется.

Пример структуры проекта представлен ниже.

UI (User Interface, пользовательский интерфейс)

BL (Business Logic, бизнес-логика)

DAL (Data Access Layer, доступ к данным)

Для того, чтобы дальше реализовывать поведение экранов, нам потребуется дополнительная информация, поэтому продолжим знакомство с необходимыми артефактами.

Таблица экранов

После того, как у нас есть схемы экранов, мы также можем провести их анализ до фактического старта разработки. Следующим полезным артефактом для нас станет таблица экранов, оперировать которой будут не только разработчики, но и тестировщики. В сводной таблице легко собрать воедино всю текстовую информацию. Ключевыми столбцами таблицы для нас станут:

2. Краткое название (Name)

3. Список возможных состояний (States)

4. Поля ввода для валидации (Validation)

5. Описание экрана и его поведения (Behavior)

Как видим, в представленном наборе полей собрана та информация, которая позволит корректно проверить работу каждого экрана в отдельности. Можно также каждому разделу присвоить свой цвет — это упростит работу с картой переходов и состояний.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Дополнительно, в эту таблицу могут быть добавлены следующие столбцы:

6. Список всплывающих уведомлений (alerts, sheets, dialogs)

7. Идентификаторы UI-контролов (например, LoginButton) для написания автоматизированных UI-тестов

8. Используемые модели (Models/Data Objects) данных

9. Используемые на каждом экране методы DAL

10. Используемые стили (Styles)

О каждом экране по столбцам достаточно просто вписывать короткие обозначения, которые в дальнейшем будут использоваться в программном коде и понятны в первую очередь разработчикам. Кроме столбца Behaviour (Описание экрана и его поведение), здесь ограничений лучше не делать.

Отдельно остановимся на состояниях экранов. Большинство современных приложений работает через Интернет, поэтому стоит корректно отображать пользователю информацию о состоянии загрузки:

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Хорошей практикой считается, если каждый экран, загружающий данные из сети (или из локальной СУБД) будет корректно отображать пользователю каждое из описанных состояний. Фактически, отдельное состояние описывается своим набором визуальных элементов (тексты, картинки, кнопки, другие элементы), и на уровне программного кода легко управлять переключением из одного состояния в другое. Также можно фиксировать негативные сценарии (ошибка загрузки, пустые данные) для дальнейшего анализа и устранения на стороне сервера или приложения.

Можно взять за правило и на всех экранах, загружающих данные, добавлять переключение состояний. Это упростит взаимодействие пользователя с приложением. Можно также использовать различные анимации или графику в негативных состояниях (ошибки, пустые данные), чтобы сгладить эффект.

Итак, у нас уже есть схемы экранов, список Page и ViewModel, а также детальная информация по каждому экрану. Каркас приложения можно построить, однако сейчас у нас экраны описаны независимо друг от друга и нет четкой и понятной последовательности переходов. Поэтому следующим полезным артефактом для нас станет карта переходов и состояний.

Карта переходов и состояний

Итак, карта переходов начинается с точки старта – момента запуска приложения пользователем. Точек старта может быть несколько, например, один вариант запуска для авторизованного пользователя, второй – для неавторизованного, а третий – из Push-уведомления.

Дальше добавляются прямоугольники для каждого экрана и обозначаются стрелками последовательности переходов. Можно добавить идентификаторы (AutomationId) кнопок или событий, из-за которых произошел переход, и для наглядности еще указать данные, которые будут передаваться на новый экран.

Также у нас уже есть таблица экранов (предыдущая глава), где обозначены возможные состояния каждого из них и которые необходимо отобразить на карте переходов. Это позволит лучше понять возможные прерывания пользовательских сценариев, например, в случае ошибок или пустых данных. Если состояние прерывает (человек не может идти дальше) пользовательский сценарий, то обозначаем его минусом «-», если не прерывает, то плюсом «+». Стрелочки «назад» можно не добавлять.

структура проекта приложения с. image loader. структура проекта приложения с фото. структура проекта приложения с-image loader. картинка структура проекта приложения с. картинка image loader.

Как видим, теперь у нас имеется практически вся необходимая для разработки информация в компактном виде. Эти три онлайн-документа (список экранов, таблица экранов, карта переходов) могут обновляться по мере развития проекта.

Для создания описанных выше артефактов нам будет достаточно 3 онлайн-инструментов:

На подготовку каждого из артефактов уходит не больше одного дня, зато в дальнейшем это очень сильно упрощает процесс разработки, тестирования и развития продукта. За время медитативной подготовки документов и схем команда глубже понимает проект целиком и может уже финально оценить сложность и длительность его разработки (цифры для внутреннего использования).

Продолжение следует обязательно прочитать.

Полную версию руководства вы можете найти на Medium «Техническое проектирование мобильных приложений». Пообщаться напрямую с автором и сообществом Xamarin-разработчиков можно в нашем уютном чатике в Telegram.

Во второй части мы расскажем о том, как работать со стилями, фоновой функциональностью и пользовательскими сценариями. Оставайтесь на связи и задавайте свои вопросы в комментариях!

Об авторе

структура проекта приложения с. f70e9ce7a2bd45a98e19652a08b15e26. структура проекта приложения с фото. структура проекта приложения с-f70e9ce7a2bd45a98e19652a08b15e26. картинка структура проекта приложения с. картинка f70e9ce7a2bd45a98e19652a08b15e26.Вячеслав Черников — руководитель отдела разработки компании Binwell, Microsoft MVP и Xamarin Certified Developer. В прошлом — один из Nokia Champion и Qt Certified Specialist, в настоящее время — специалист по платформам Xamarin и Azure. В сферу mobile пришел в 2005 году, с 2008 года занимается разработкой мобильных приложений: начинал с Symbian, Maemo, Meego, Windows Mobile, потом перешел на iOS, Android и Windows Phone. Статьи Вячеслава вы также можете прочитать в блоге на Medium.

Другие статьи автора вы можете найти в нашей колонке #xamarincolumn.

Источник

Построение гибких PHP приложений

Эра фулстэк фрэймворков в прошлом. Современные разработчики фрэймворков разделяют свои монолитные репозитории на компоненты с помощью ответвлений в Git, позволяя разработчику выбрать то, что действительно необходимо его проекту. Это означает, что вы можете построить свое приложение на топовых Zend Service Manager, Aura Router, Doctrine ORM, Laravel (Illuminate) Eloquent, Plates, Monolog, Symfony Cache или любых других компонентах, которые можно установить через Composer.

структура проекта приложения с. 9acdbed47ffacd36b80143aed62c3194. структура проекта приложения с фото. структура проекта приложения с-9acdbed47ffacd36b80143aed62c3194. картинка структура проекта приложения с. картинка 9acdbed47ffacd36b80143aed62c3194.

Надежная структура проекта

Основным шагом является создание и поддержка строгой структуры проекта, с целью установки и комбинирования компонентов из инфраструктуры любых фрэймворков. Я посвятил этому целую статью, чтобы охватить вопросы структуры каталогов, организации и группировки исходников, соглашений об именовании и прочим связанным вещам.

Выбор правильного инструмента для работы

В течении разработки проекта, необходимо всегда уделять внимание бизнес логики ядра. Для всех общих задач, которые необходимо реализовать в вашем проекте, вы должны использовать различные open source решения, компоненты и библиотеки, который облегчат процесс разработки приложения. DBAL, ORM, routing, mailer, cache, logger – это далеко не полный список примеров того, что не нужно заново создавать.

Напомню, что вы можете использовать компоненты независимо от фрэймворка (Zend Framework, Symfony, Laravel, Aura и т.д.) Соответственно, зависимости в созданном composer.json могут выглядеть так:

Составляющие фрэймворка

Использование различных компонентов фрэймворка дает нам большое преимущество, но, если пользоваться ими не обдуманно, это может привести к безвыходным ситуациям. Главной, но не простой задачей, является разделение вашей бизнес логики фрэймворка или библиотеки для автономного использования. Если не уделить этой задаче достаточно внимания, то у вас могут возникнуть проблемы при попытке перейти на компонент другого разработчика или, даже, при обновлении версии текущего компонента.

Невозможно на 100% разделить код от фрэймворка, только если вы совсем не используете его, но вы можете значительно уменьшить связанности. Создайте интерфейсный уровень абстракций и разделите ваш код на внешние зависимости или используете PSR интерфейсы для того, чтобы снизить трудозатраты при переходе на альтернативные имплементации компонента. Короче говоря, создание интерфейсов – является лучшей практикой, который вы должны овладеть и уметь применять ее на деле.
В идеале, вот список того, где у вас могут быть прямые зависимости:

Управление конфигурацией

Вместо того, чтобы хардкодом писать параметры для подключения к БД, вы должны использовать отдельные файлы, в которых можно переопределить различные настройки. Это будет полезно, при использовании разных сред (например, для разработки, для продакшен версии и т.д.)
Существуют несколько подходов при конфигурации файлов. Самым распространенным является наличие одного конфигурационного файла для каждой из сред, который, соответственно, загружается в зависимости от установленной переменной среды:

Основным недостатком такого подхода является дублирование параметров в нескольких конфигурационных файлах.

Я предпочитаю другой способ для работы с конфигурацией сред, который практикует Zend Framework (о нем хорошо написано в документации). При использовании этого метода, структура конфигурационных файлов выглядит так:

В этом примере параметры могут быть четко распределены по разным конфигурационным файлам, основываясь на их назначении, при этом они переопределяются в зависимости от среды окружения. Такие конфигурационные файлы содержат только переопределяемые параметры. Эти файлы объединяются в единую конфигурацию с помощью glob brace.

Инъекция зависимостей

Практическое использование инъекции зависимостей (Dependency Injection) очень важна для гибкости и надежности вашего кода. DI контейнер – это ключевая концепция, которая управляет логикой при построении блоков вашего приложения.

Вот что должно быть определено в DI контейнере:

Другие группы классов представляют такие типы как доменные объекты, сущности, значения объектов. Думайте о User, Post, DateTime, как о конкретных примерах этих классов. Все они не являются сервисами, поэтому не должны определятся в контейнере.

Настройка DI контейнера

Вместо того, чтобы программно заполнять DI контейнер, логичнее определить все зависимости внутри конфигурации:

Некоторые DI контейнеры, такие как, например, Zend Service Manager, поддерживают такой подход из коробки, в противном случае вам придется написать простую логику для его заполнения на основе массива конфигурации.

Возможно вы заметили, что я предпочитаю использовать полное имя интерфейса в качестве имени сервиса на котором реализуется интерфейс. В местах, где нет интерфейса, я использую полное имя класса. причина проста, извлечение служб из контейнеров не только делает код более читаемым, но и облегчает для пользователя понимание того с чем он работает.

Бутстрэппинг

Код, который загружает конфигурацию и инициализирует DI контейнер обычно содержится в, так называемом, сценарии начальной загрузки. В зависимости от конфигурации и реализации DI контейнера, он может принимать следующие формы:

DI контейнер – это конечный результат операции начальной загрузки, через который реализуются все дальнейшие действия.

Хотя это очень простой пример, логика загрузки и слияния конфигурации может быть достаточно сложной. В случае модульных систем, конфигурация собирается из разных источников, поэтому в бутстрэппинге будет использован более расширенный механизм настройки.

Phoundation

Логика бутстрэппинга может быть достаточно громоздкой и дублироваться между проектами, поэтому я создал библиотеку Phoundation, благодаря которой у меня получается более компактный загрузочный файл:

Полный пример

Чтобы получить общую картину, возьмите, в качестве примера, это простое приложение для работы с блогами, которым можно воспользоваться как через браузер (public/index.php), так и через командную строку (bin/app). Он использует микро-фреймворк Slim для вэб части приложения и Symfony Console для CLI.

Подводя итоги

Описанная концепция — это скелет, оболочка вокруг ядра кодовой базы, состоящая из логики домена, поддерживаемой различными компонентами общего назначения. Эта оболочка является фундаментом для создания приложений с использованием библиотек и инструментов на свой вкус.

Когда приступаешь к новому проекту, вопрос должен быть не в том «какой фреймворк мне использовать?», а в том «какие компоненты я буду использовать в проекте?».

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *