?

Log in

No account? Create an account
Main

Эволюция программиста на php

Кажется, можно выделить эволюционные ступени развития программиста веб-приложений на LAMP, т.е. простейшем скриптовом языке и БД

0. Движки гостевых и форумов.

Проблемы:
а) Оптимизация двойных кавычек
б) Magic quotes, sql-инъекции, экранирование переменных при выводе
в) спор нрмально ли использование HTML кода в теле скрипта.
(contra: шаблонизаторы отстой, медленно, все хорошо когда в одном скрипте)

Императив:
[за ночь/выходные/месяц] напишем мега шаблонизатор и программирование сведется к верстке с параметрами


1. CMS — контент страниц сайта можно править пользователю, который не знает HTML

Проблемы
а) Где и как экранировать при выводе введенные пользователем поля.
б) загрузка и вставка картинок
в) SQL дерево
г) Поиск по сайту

Императив:
а) [за ночь/выходные/месяц] напишем мега модульную cms, разработка сведется к выставлению параметров и изредка разработку модулей
б) Купите коробучную CMS, зачем вам наколеночная самописка, у нас уже потрачено куча человекочасов, зачем их тратить еще раз.
в) "Купите нашу CMS и программист вам больше не понадобится", перетекающее в "программисты! вы нам нужны, продвигайте нашу CMS своим клиентам

2. CMF

Проблемы
а) А что это на самом деле за буквы MVC? То, что у меня в классе myForm это M? или С? Ой нет, да там вообще все намешано.... омг....
б) ORM — ересь или рулез? Не увязнуть в разработке ОРМ
в) web 2.0 и AJAX

Императив:
а) [за ночь/выходные/месяц] напишем мега cmf, мы же умные, да и чего там писать!
б) требование заказчика использовать что-то известное бесплатное вместо своего
в) переделанное известное все равно либо не гибкое, либо очень сильно переделанное....

——
Что будет в следующем витке эволюции?

Comments

3. Руководим
Проблемы:
а) подчиненные, которые знают слова MVC
б) самописную CMF никто не хочет поддерживать
в) переписать код подчиненного или заставить переписывать, объясняя азы

Империтив:
а) Нанятый программист не признает мега CMF, все норовит взять голый Rails/написать с нуля
б) Подчиненные не понимают сути CMF, найти время и написать доку
в) [за ночь/выходные/месяц] взять стандартную CMF и обучить персонал ей.

P.S. Nothing personal, просто помечталось
это эволюция уже не разработчика, а переход с должности на должность.

это немного другое.

т.е. Вы посути вытащили базовые проблемы нулевого витка для менеджера проекта и MVC, CMF, Ruby -- вообще говоря, лишняя конкретика. А вот дальше должна быть эволюция какая-то тоже, но своя.

Edited at 2009-11-18 03:25 pm (UTC)
О, Друпал - это теперь CMF. Я-то всегда считал, что CMS.
хехе... теперя все CMS хотят быть CMF. Я в друпал не лазил, но если там есть доступная разработчику MVC, какая-нибудь ORM, шаблонизатор наверняка есть, раутинг, то его можно считать CMS над CMF. И это есть хорошо.

Обычно не так просто выделить CMF из CMS. Аможно наоборот написать над CMF надстройку в виде CMS....

уууу во как :)
Я почти ни слова не понял. Шаблонизаторы есть, модули есть.
Например если делать на Друпале кталог.

Вот есть Бренды, есть товары, есть категории товаров. Есть в друпале удобные инструменты работать с такими объектами. Чтобы, если я хочу получить объект товара с id=4, то я могу написать

$myItem=goods::find(4);

$myItem->price=50;
$myItem->save();

И если я вывожу товары, то получить их список

$goods=goods::getAll();

А в шаблоне вывода товаров использовать ссылку на бренд типа:

<a href='<?php echo link("brands/view/{$item->getId()}"'><?php echo $item->getBrandName(); ?></a>

Чтобы поля объектов можно было описать файликами со структурой полей и ими потом опреировать.

Не исключено, что Друпал, как передовой товарищь все это умеет :)

Edited at 2009-11-18 03:55 pm (UTC)
Ой не знаю, у меня написан модуль каталога, но я в нем все сам делаю. Может быть все это он умеет, но я его использовал по принципу: побыстрее прикрутить и баста (кстати, не докрутил еще, докручивать буду через месяцчишко-другой).
таки друпал могуч. ORM Доктрину к нему приделывают:
http://drupal.org/project/doctrine

так, что он вполне себе CMF и CMS.
Недаром же на нем сайт Белого Дома будет работать. По поводу могучести Друпала: до недавнего времени в нем было нормального autosave модуля. Не факт даже, что сейчас естью