Russian Apache Switch to English
Switch to Russian koi8-r
windows=1251
cp-866
iso8859-5
Russian Apache Как это работает Рекоммендации Где взять Как установить Как настроить Статус и поддержка
Краткий обзор FAQ Список рассылки Благодарности Поиск по серверу Powered by Russian Apache
Russian Apache mailing list archive (apache-rus@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] Zope



On Tue, Nov 02, 1999 at 01:18:58PM +0300, Victor Wagner wrote:

> Глюка заключается в том, что php дает слишком много возможностей
> дизайнеру html, и слишком мало - программисту (поелику тому и другому
> дает ровно одинаковые). В Zope реализована многоуровневая структура
> позволяющая на каждом уровне выдать пользователю столько возможностей,
> сколько надо. На mod_perl это тоже делается.

  Жили-были CGI-скрипты на Си. И представляли они из себя программный код,
обильно приправленный printf("<b>NAME: %s: %d...."). Программа попросту 
содержит в себе html-страничку. Копаться в этом было весьма неудобно. 
  Люди решили вынести все HTML'ки во внешние файлы -- появилась концепция 
шаблонов: шаблон есть HTML-файл с дополнительными тегами. CGI-скрипт работает, 
что-то вычисляет, затем заменяет теги в HTML-файле на результаты работы и 
показывает файл пользователю. Код - в одном месте, HTML - в другом. Удобно.
Да только лишь для простых систем. 
  Теги в шаблонах стали усложняться -- то таблицу нужно циклически вывести, то 
какой-то хитрый <SELECT><OPTION..></SELECT> сформировать.. помимо простых
тегов, меняющих свое значение на строку/число/что-то, появились элементы
управления - циклы, переходы, функции.. php/fi. Понравилось. Название тоже
по вкусу пришлось. 
  php3. Страница содержит в себе программу. Славно. Написали огромное
количество библиотек, связей с базами данных и т.п.
  Только почему-то все чаще при реализации на php3 сложно проекта оказывается, 
что разбираться в смеси HTML и кода ничуть не проще, чем в смеси кода и HTML. 
И то в одном, то в другом проекте все оформление (==HTML) начинает выносится 
в отдельные файлы-шаблоны.  php-код работает-работает, затем делает 
require/include соответствующего шаблона.
  Таким образом, мы вернулись в первоначальной ситуации с той разницей, что:

  - php/perl-скрипты не нужно компилировать (круто, да? :)

  - php больше похож на бейсик и позволяет программировать неаккуратно: 
    переменные не объявляй, типы не декларируй.. 

  - здорово упрощено общение с внешним миром (от БД до $QUERY_STRING и
    соседнего web-сервера); нет проблем с переносимостью..

  - et cetera

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

  Но зачем сочинять новый php4, если есть другие языки, не менее замечательные
и переносимые?

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

  Не знаю, зачем написал все эти банальности. Может потому, что хочу
на Zope посмотреть, да Питона не знаю :-) Стоит браться? Будет большое
человеческое Щастье? 

V.
=============================================================================
=               Apache-Talk@xxxxxxxxxxxxx mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =






Спонсоры сайта:

[ Russian Apache ] [ Как это работает ] [ Рекомендации ] [ Где взять ] [ Как установить ] [ Как настроить ] [ Статус и поддержка ] [ Краткий обзор ] [ FAQ ] [ Список рассылки ] [ Благодарности ] [ Поиск по серверу ] [ Powered by Russian Apache ] [ Apache-talk archive ]

"Russian Apache" includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/) See Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C) 1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.