Тема: Корни Php
Показать сообщение отдельно
Старый 27.12.2003, 00:52     # 1
FreeSpace
Технический администратор
 
Аватар для FreeSpace
 
Регистрация: 01.03.2003
Адрес: Киев, Украина
Сообщения: 327

FreeSpace Имеются все основания чтобы гордиться собойFreeSpace Имеются все основания чтобы гордиться собойFreeSpace Имеются все основания чтобы гордиться собойFreeSpace Имеются все основания чтобы гордиться собойFreeSpace Имеются все основания чтобы гордиться собойFreeSpace Имеются все основания чтобы гордиться собойFreeSpace Имеются все основания чтобы гордиться собойFreeSpace Имеются все основания чтобы гордиться собойFreeSpace Имеются все основания чтобы гордиться собой
Корни Php

Корни PHP
(перевод одноименной главы книги Core PHP Programming, Third Edition)
Копирование и распространение этого перевода допускается только со ссылкой на эту страницу!

Удивительные вещи получаются из обычного вдохновления. Изначально PHP был лишь способом подсчета посетителей на странице резюме Расмуса Лердорфа (Rasmus Lerdorf). Так же он позволял встраивать SQL-запросы в веб-страницы. Но, как часто происходит в Сети, восхищенные посетители сразу стали просить себе копию этого движка. Как приверженец интернетовской этики и вообще, как достаточно открытая особа, Расмус выпустил на просторы ничего не подозревающей Сети свой движок Personal Home Page Tools (Инструмент для создания Личных Домашних Страниц) версии 1.0.

"Выпустил на просторы своего сознания" будет немного точнее. PHP стал очень популярен. Следствием был поток предложений по улучшению. PHP 1.0 фильтровал входящие данные, заменяя простые команды на HTML. По мере роста его популярности, люди задумывались, что ещё можно из него выжать. Циклы, условные переходы, расширенные структуры данных - все удобства современного структурного программирования виделись следующим логичным шагом. Расмус изучал языковые парсеры, читал про YACC и GNU Bison, и создал PHP 2, иначе известный как PHP/FI.

PHP/FI позволял разработчикам встраивать структурный код внутрь HTML-тегов. PHP-скрипты могли обрабатывать данные, полученные из HTML-форм, работать с базами данных и производить сложные вычисления "на лету". Так же он был очень быстрым, благодаря свободно распространяемому исходному коду, компилируемому в веб-сервер Apache. PHP-скрипты исполнялись как часть веб-сервера и не требовали форкинга (forking) - частого предмета критики Common Gateway Interface (CGI) скриптов.

PHP был законным средством разработки и начал использоватся для коммерческих веб-сайтов. В 1996, Clear Ink создала сайт SuperCuts (www.supercuts.com) и использовала PHP чтобы создать уникальное впечатление для веб-сёрферов. Веб-сайт PHP отслеживает популярность PHP измеряя количество разных веб-сайтов, которые используют модуль PHP. Во время написания второй редакции этого текста, казалось действительно интересным то, что PHP вырос с 100 000 сайтов до 350 000 сайтов за 1999 год. По последним сведениям, более 10 миллионов доменов используют PHP!

В 1997 году пара Израильских студентов по имени Энди Гутманс (Andi Gutmans) и Зеев Сураски (Zeev Suraski) пытались использовать его для создания онлайновой корзины покупок интернет-магазина, посчитав его достаточно продвинутым для того, чтобы стать университетским проектом. Немного спустя, они начали натыкаться на разнообразные баги в PHP, что заставило их заглянуть глубже в его исходный код. К своему удивлению, они обнаружили то, что PHP не соблюдает большинство принципов языкового дизайна (language design), что вызывало неожиданные повороты в его работе и ошибки. Всегда находясь в поиске хорошей причины чтобы не готовится к экзаменам, они начали создавать новый вариант. Частично это было проверкой их программистских способностей, частично - отдыхом. Несколько месяцев спустя, они переписали PHP с нуля, впервые сдеелав его настоящим, связным и формализированным языком. Проведя над проектом столько времени, они попросили своего начальника курса, доктора Майкла Родега (Dr. Michael Rodeh) о помощи для избежания ненужных экзаменов. Будучи менеджером исследовательского центра IBM в Хайфе и хорошо осведомленного в огромном количестве разных языков программирования, он согласился, но с оговоркой, что они начнут сотрудничать с существующими разработчиками PHP/FI вместо того, чтобы создавать свой собственный язык.

Когда Энди и Зеев отправили е-мейл Расмусу, в котором сообщали о своей переработке, они размышляли, примет ли он эту новую работу, так как это означало бы отказ от его собственной версии. Расмус таки принял её, и был сформирован новый состав PHP Core Team, известной сейчас как PHP Group. Вместе с Энди, Расмусом и Зеевым, три других разработчика - Стиг Баккен (Stig Bakken), Шейн Каравио (Shane Caraveo) и Джим Винстед (Jim Winstead) - были приняты в Core Team. Вокруг PHP начало рости общество разработчиков.

После семи месяцев разработки, альфа- и бета-тестирования, 6-го июня 1998 года свет увидела версия PHP 3.0, которая дала начало необыкновенно активному росту PHP популярности. Функциональность PHP расла буквально ежедневно, и PHP-программы росли как грибы после дождя. Следом за релизом, начали расцветать PHP-проекты с открытым кодом. Проекты вроде Phorum'а обслуживали долговременные интернет-нужды, такие как поддержание онлайновых дискуссий. Проект PHPLib организовал фреймворк (фундамент) для работы с пользовательскими сессиями, который вдохновил разработчиков PHP. FreeTrade, проект, который я (автор - прим. пер.) вёл, предлагал инструменты для создания сайтов электронной коммерции.

Так же увеличилось количество печатных материалов о PHP. Более 20 статей появилось на достаточно известных сайтах вроде webmonkey.com и techweb.com. Запускались сайты, направленные на поддержку PHP-разработчиков. Первые две книги о PHP были опубликованы в мае 1999 года. Эгон Шмид (Egon Schmid), Кристиан Картус (Christian Cartus) и Ричард Блум (Richard Blume) написали книгу на немецком, названную PHP: Профессионально реализованные динамические веб-соединения (Dynamische Webauftritte professionell realisieren). Прентис Холл (Prentice Hall) опубликовал первую редакцию моей книги, Core PHP Programming. С тех пор, бесчисленное количество книг о PHP заполнили полки книжных магазинов.

Учитывая такую историю, небыло причин не радоватся тому, каким PHP был в те времена. Возможно, внутреннее осознание того, что происходит "внутри", а так же чувство, знакомое каждому разработчику - "Я бы мог сделать это намного лучше" — были причинами, почему Энди и Зеев были одними из тех людей, кто разочаровался в PHP 3. Как по привычке, они отвернулись от PHP-общества и попытались создать новый подход к исполнению PHP-скриптов.

Несколько месяцев спустя, 4-го января 1999 года, Зеев и Энди анонсировали фреймворк, который обещал значительно увеличить производительность PHP-скриптов. Они назвали новый фреймворк Zend Engine. Ранние тесты показывали уменьшение времени выполнения скриптов в 100 раз. К тому же, планировались новые возможности компиляции скриптов в байткод, дебаггинг, оптимищация и профайлинг. Это объявление официально положило конец проекту PHP 3.1, который должен был принести лучшую поддержку Windows в PHP 3, но так и не получил необходимый толчок, и официально началось планирование PHP 4.

Работа над Zend Engine и PHP 4 продолжалась паралельно с исправлением ошибок и совершенствованием PHP 3. На протяжение 1999 года, были выпущены восемь возростающих версий, и 21 декабря 1999 года была анонсирована версия PHP 3.0.13. Бета-версия PHP, основанная на Zend Engine была открыта общественности 19 июля 1999 года, а далее следовал период интенсивной разработки различных компонентов, некоторые из которых были абсолютно новыми, такие как встроенная поддержка сессий, буферизация вывода и абстракция от веб-сервера (Web server abstraction layer). Релиз PHP 4 произошел 22 мая 2000 года, став ещё одной важной датой на становлении PHP как самой популярной платформы веб-разработки на земле. Количество людей, разрабатывающих PHP на разных уровнях, росло просто невероятно, и новые проекты, наиболее значительный из которых - PEAR, набирали обороты и продвигали PHP на вершину популярности.

PHP-общество ведет разработку новых возможностей. Многие программисты находят вдохновление в объектно-ориентированном программировании. В PHP 3 объекты существовали чисто синтаксически. Это означает, что хотя синтаксис объектов отличался, внутренняя реализация не сильно отличалась от массивов. Таким образом, PHP привлек многих приверженцев объектно-ориентированного подхода, но ограниченное применение заставило их желать большего. PHP 5 удовлетворяет эти потребности при помощи сильной, переписанной объектной системы.

PHP - это не коробочный продукт, создаваемый безликими роботами или волшебниками в башне из слоновой кости. Вначале PHP был простым инструментом, вышедшим на Базар, описанный Эриком Реймондом (Eric Raymond) в своём очерке Собор и Базар (The Cathedral and the Bazaar). Как только он появился, каждый мог вносить улучшения, и многие именно так и поступали. Их цель кажется лишь достяжением прямых, личных интересов. Если появляется клиент, которому нужен проект с использованием такого типа баз данных, который не поддерживает PHP, ты просто садишься и пишешь модуль-расширение. А потом отдаешь его Проекту PHP. Дальше другие люди исправляют твои баги.

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

Вы можете найти свежий список разработчиков на веб-сайте PHP (http://www.php.net/credits.php).
FreeSpace вне форума