Материализация SKY.

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

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

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

Параллельно с разрабатываемым приложением, в SKY. всегда используется приложение DEV.SKY., которое содержит ВСЕ что необходимо программисту для разработки приложения! Нужно добавить, что также необходимо использовать браузер Google Chrome, ваш любимый редактор текстов и если проект приватный, с закрытым кодом, нужно также пользоваться системой контроля версий например GIT, если публичный то GIT необязателен. В SKY. код классифицируется по 1-3 крылу, что сразу акцентирует его важность и частоту использования (этого нет в Zend). В SKY. код не гибкий (точнее не так гибкий), что это дает? Вы думаете это ограничивает область его применения? Это не так! Простой код очень быстро работает, он прост в понимании, почти не надо читать документацию. Простой код легко поддается формальному построению, попросту говоря, его легко сгенерировать визуальными средствами редактирования. В частных случаях, он может быть адаптирован к необходимому виду с помощью утилит визуального редактирования, скриптов разворачивания кода и прочими способами, которые представлены в DEV.SKY. Гибкость кода 1-2 крыла заключена не в самом коде, а в средствах разработки, генерации этого кода, еще акцентируем внимание, что в большинстве случаях, к тому же, модификаций кода "clear cloud" на самом деле, не требуется.

Итак, логика создания кода 1-2 крыла... Код первого крыла, это тот который всегда запускается, будем писать его в файл main/sky.php. Итак, всегда будут в помощь средства отладки, включим такой код в этот файл, также очень нужна функция обертка sql() для выполнения SQL запросов, она будет делать автоматическую трассировку запросов, добавит "сигнализацию" об ошибках в запросах в обработчик ошибок, смотрите код функции... В sql() для запросов select введены модификаторы +-~@%^>, их использование чрезвычайно удобно, мы предлагаем даже ввести суб-стандарт на их значения. Вместо однообразного значительного количества байтов кода, часто используемого практически во всех framework, для выбора массива значений, единичного значения и т.п. в sql() используется всего лишь один байт модификатора запроса select! Это так удобно, что в данный момент, рассматривается целесообразность наличия методов типа "function row()" в базовом абстрактном классе SKY_model_t (см. файл main/mvc.php), зачем они нужны, если количество байт кода существенно не уменьшается, функционал не увеличивается, но требуется дополнительно помнить о их специальном синтаксисе использования и способе применения?