>А если вы захотите передавать имя функции в, скажем, переменных окружения.
($_ENV['controller '] установить, например),
Не представляю зачем это бы нужно было бы и чем не угодил $_GET — так что не захочу. Не надо решать несущесвующих проблем.
>А как будете решать задачу генерации урлов
Писать их в коде, очевидно же. Структура простая — контроллер/экшн или модуль/контроллер/экшн.
>А при обновлении что будете писать клиентам?
>Парсить конфиги nginx, apache или IIS? А если внезапно lighttpd?
>А он вам в ответ «нет у меня такого пути, nginx точно есть, а пути такого нет».
Ну а если скажет что php нет у него, что тогда? Опять какая-то проблема из пальца высосаная. Клиент правящий конфиги — это сильно конечно. Клиентам вообще на такие тонкости пофиг должно быть. Им надо функционал рабочий чтобы был и все, а это уже задача разработчиков — как реализовать, какие требования к ПО должны быть.
global это нормально — если применять там где нужно. Это такой Registry, только в привычном виде.
Просто есть люди, типа создателя симфони, которые все хотят абстрагироваться от ЯП и делать сферических коней в вакууме, вместо того чтобы использовать инструмент на полную мощь и делать полезный функционал.
При этом ООП использовать тоже нужно. Иначе рождается на свет такое недоразумение как ваш «фрейморк» (набор файлов и пара функций), здравые идеи конечно есть — типа файл как контроллер, конфиги в виде php). Но зачем он тогда в принципе и такая структура вообще? Если процедурный стиль и можно использовать копипаст по шаблону и далее:
— контроллер — файл со свитчкейсом и набор функций экшонов или разные файлы для экшонов как у вас.
— content() -> include $content
— headTitle -> $title = ‘...’;
->
— роут выкинуть нафиг (опять какой-то перебор в цикле, похоже что нет ни одного фрейморка с продвинутым роутингом, чтоб без регулярок и перебора) — тогда лучше уж разбор параметров средствами сервера делать (mod_rewrite, etc)
— лейауты, снова include ‘layouts/default.phtml (сюрприз!);
— PDO, переменные $_POST, $_GET,http://www.php.net/manual/ru/ref.filter.php
и т.п. заместо ненужной кустарщины.
Если комп купили с предустановленной Windows 7, это мог бы быть MS Office Starter, который включает Exel и Word.
Правда Exel Starter не поддерживает VBA макросы. так что по функционалу это почти то же что и в SkyDrive
единcтвенный расово верный сбособ интерактивного взаимодейсвия в CLI это имеено автодополнение. отсюда и отсутствие «фреймворков для построения меню» (слово то какое! просто «библиотека» ща не в моде)
минусы вот такие:
я «новичок»
установил nodejs из пакетов репозитария Ubuntu, набираю npm install grunt-cli -g
и команда тупо не работает, чего то кукарекает про несовместимость версий grunt.
ищу решение в гугл — оказывается надо версию не ниже 0.8
ну ок, ищу репы в launchpad — не ебатся же с компилированием из сорцов (мы же «новички» фронтенд разработчики)
нашел, добавил launchpad.net/~chris-lea/+archive/node.js
установил grunt, gunt-cli sudo npm install -g grunt
набираю grunt для проверки, а он опять кукарекает про то что не может grunt найти.
для такой простой задачи как реализовано — не суть. главное что работает как надо.
а использование tokenizer имеет смысл при реализации например хитрой системы макросов для php или
конвертера кода под новые версии php в старые версии и наоборот.
К слову о серверных приложениях
>Running the code in Production mode
>To run code in production mode use the «exec» command instead of «run». Open command prompt. Cd to the application directory and type
>fan tales exec
>That's it. Your code is running production mode now.
И как же прикрутить к другому серверу, например к jetty? Или что придется весь функционал веб-сервера еще самому реализовывать?
Или например как реализовать сервлет на этом Fantom?
>Avian можно встроить в ваше приложение вместе с его весьма урезанной, но терпимой по функционалу стандартной библиотекой классов
и вдоволь нажравшись кактуса получаем урезаное нечто, в котором не факт что получится использовать нужные библиотеки + пиздецовое GUI на свинге (если оно вообще заработает).
Намного проще разрабатывать используя QtCreator или даже Lazarus (дада то самый паскаль).
какое-то практическое применение будет?
>Эта работа изменит правила игры
и что же изменится?
($_ENV['controller '] установить, например),
Не представляю зачем это бы нужно было бы и чем не угодил $_GET — так что не захочу. Не надо решать несущесвующих проблем.
>А как будете решать задачу генерации урлов
Писать их в коде, очевидно же. Структура простая — контроллер/экшн или модуль/контроллер/экшн.
>А при обновлении что будете писать клиентам?
>Парсить конфиги nginx, apache или IIS? А если внезапно lighttpd?
>А он вам в ответ «нет у меня такого пути, nginx точно есть, а пути такого нет».
Ну а если скажет что php нет у него, что тогда? Опять какая-то проблема из пальца высосаная. Клиент правящий конфиги — это сильно конечно. Клиентам вообще на такие тонкости пофиг должно быть. Им надо функционал рабочий чтобы был и все, а это уже задача разработчиков — как реализовать, какие требования к ПО должны быть.
а дальше все очевидно как использовать.
можно свободно использовать неймспейсы без всяких фреймворков.
> Задумался над роутингом без регулярок и цикла
написал же — средствами сервера.
любой популярный сервер (apache, nginx, iis) умеет нормальный роутинг
Как говорят — «Со своим самоваром в Тулу не лезь».
Просто есть люди, типа создателя симфони, которые все хотят абстрагироваться от ЯП и делать сферических коней в вакууме, вместо того чтобы использовать инструмент на полную мощь и делать полезный функционал.
При этом ООП использовать тоже нужно. Иначе рождается на свет такое недоразумение как ваш «фрейморк» (набор файлов и пара функций), здравые идеи конечно есть — типа файл как контроллер, конфиги в виде php). Но зачем он тогда в принципе и такая структура вообще? Если процедурный стиль и можно использовать копипаст по шаблону и далее:
— контроллер — файл со свитчкейсом и набор функций экшонов или разные файлы для экшонов как у вас.
— content() -> include $content
— headTitle -> $title = ‘...’;
->
— роут выкинуть нафиг (опять какой-то перебор в цикле, похоже что нет ни одного фрейморка с продвинутым роутингом, чтоб без регулярок и перебора) — тогда лучше уж разбор параметров средствами сервера делать (mod_rewrite, etc)
— лейауты, снова include ‘layouts/default.phtml (сюрприз!);
— PDO, переменные $_POST, $_GET,http://www.php.net/manual/ru/ref.filter.php
и т.п. заместо ненужной кустарщины.
Правда Exel Starter не поддерживает VBA макросы. так что по функционалу это почти то же что и в SkyDrive
я «новичок»
установил nodejs из пакетов репозитария Ubuntu, набираю npm install grunt-cli -g
и команда тупо не работает, чего то кукарекает про несовместимость версий grunt.
ищу решение в гугл — оказывается надо версию не ниже 0.8
ну ок, ищу репы в launchpad — не ебатся же с компилированием из сорцов (мы же «новички» фронтенд разработчики)
нашел, добавил launchpad.net/~chris-lea/+archive/node.js
установил grunt, gunt-cli sudo npm install -g grunt
набираю grunt для проверки, а он опять кукарекает про то что не может grunt найти.
«Делаем жизнь проще» ??? Ну-ну…
а использование tokenizer имеет смысл при реализации например хитрой системы макросов для php или
конвертера кода под новые версии php в старые версии и наоборот.
-w Отображает исходный текст без комментариев и пробелов
Composer — если указать папку для файлов:
autoload": {
«classmap»: [«lib»],
— сгенерит autoload_classmap.php файл со списком всех файлов, обработает и папки и подпапки.
качать jre весит 50 mb и устанавливается в пару кликов, стоит того?
>Running the code in Production mode
>To run code in production mode use the «exec» command instead of «run». Open command prompt. Cd to the application directory and type
>fan tales exec
>That's it. Your code is running production mode now.
И как же прикрутить к другому серверу, например к jetty? Или что придется весь функционал веб-сервера еще самому реализовывать?
Или например как реализовать сервлет на этом Fantom?
и вдоволь нажравшись кактуса получаем урезаное нечто, в котором не факт что получится использовать нужные библиотеки + пиздецовое GUI на свинге (если оно вообще заработает).
Намного проще разрабатывать используя QtCreator или даже Lazarus (дада то самый паскаль).
>Write code portable to the Java VM, .NET CLR, and JavaScript in the browser.
fantom.org/doc/sql/index.html
Что то не видно примера для Javascript или хотя бы для .NET