Какие языки сейчас используются в веб-программировании? Навскидку я могу составить такой список: C#, Java EE, Python, Ruby, PHP, Perl. JavaScript брать в расчет не буду - сейчас я хочу поговорить именно о server-side языках.
C# - первая версия этого языка появилась в 2000 году, для веба стал использоваться с приходом ASP.NET, который вышел в 2002м году.
Java EE - первая версия, которая называлась J2EE и имела версию 1.2, вышла в далеком1991м году. Следующая версия 1.3 была выпущена аж через 11 лет. Сейчас новые версии выпускаются гораздо чаще. Используется в основном для разработки веб-сервисов. По крайней мере я не встречал мелкие или небольшие компании, которые писали бы “просто сайты” на Java EE.
Python - на самом деле достаточно древний язык. Первая версия языка была выпущена в 1990м году. Когда его начали достаточно сильно использовать в веб-приложениях сказать трудно. Можно считать, что в интернет он вошел с появлением таких легких и быстрых фреймворков, как Django/Turbogears и т.д. В таком случае получается что в инете он с 2004-2005-го года. На самом деле все было несколько раньше, но приход в интернет в то время был не совсем очевиден. Фреймворк Zope, который был изначально нацелен на интернет, был выпущен в 1995-1997 годах. Точнее на данный момент сказать не могу. Но еще раз повторюсь - это не было массовым явлением.
Ruby - разработан в 1995м году. В интернете стал использоваться с появлением, ясное дело, Ruby On Rails, который вышел в 2004-м году.
PHP - эдакий старичок программирования сайтов. Первая версия, которая называлась PHP/FI вышла в 1994м. А тот PHP, который мы знаем появился в 1997м году с выходом PHP3 и именно с этого момента он начал набирать популярность как язык для веб-разработки.
Perl - вышел в 1987м году, а вот когда появился в вебе - для меня остается тайной. Я этот язык особо никогда не любил и уж тем более никогда не использовал. Пользуются ли им еще в вебе - пользуются, но, как мне кажется, популярность этого языка неуклонно падает.
Теперь, собственно, к чему я вел это все. Выводы по Perl’у я делать не могу, а вот по всем остальным языкам получается интересная картина. C#/Python/Ruby - заявили массово о себе совсем недавно, причем их массовое распространение связанно с написанными для них фреймворками (ASP.NET/Django и компания/ROR). Java - в вебе используется только Java EE, и, хоть и появилась она давно, сейчас явно не собирается скидывать обороты. PHP - язычок, который пришел в веб сам, для которого до недавнего времени и фреймворков то не было, а те что были - их не использовали.
Я веду к тому, что все современные языки в вебе используют фреймворки, причем используют чуть ли не в обязательном порядке (да, вы можете на руби писать веб приложение, не используя рельсы, но никто этого при здравом уме делать не будет). А вот писать приложение на PHP не используя никаких уже созданных компонент - вполне обычное дело. И народ наоборот не хочет использовать фреймворки аргументируя это тем, что они “слишком сложные”, “тормозные” и т.д. И очень большая часть сайтов делается потом непонятно как… посмотришь код - убиться хочется. такое впечатление, что фраза “PHP портит нормальных программистов” - это не бред, а самая настоящая реальность.
В итоге (все ИМХО):
- смысла использовать PHP, если есть возможность использовать что-то более современное, - НЕТ
- если уж использовать PHP, то с умом - не писать все сначала, а выбрать удобные компоненты для разработки нужного вам веб приложения
Из PHP Framework’ов я бы посоветовал выбрать Zend Framework, как наиболее конфигурируемый и обьектно-ориентированный. Для себя я выбрал именно его. Но в нем есть одно “но” - если вы в качестве wrapper’а для DB собираетесь использовать зендовские классы - вам возможно прийдется сменить хостера, так как нужна будет поддержка PDO/PDO_MySQL/PDO_PgSQL, которая, как мне кажется, не у всех хостеров есть.
PS. Лично мне сейчас нравится:
- для веб-разработки для себя - Python, для заказов - PHP + Zend_Framework
- для desktop-gui-приложений - C#
- для консольных - C++
PPS. Пару часов назад гуглил украинских хостеров. Завтра буду узнавать - есть ли у них поддержка PHP >= 5.1.3 и PDO_MySQL (требования к Zend Framework’у). Посмотрим, какие результаты это даст. Кто знает хороших укр. хостеров - отписывайтесь, составлю табличку - кто и что поддерживает.






August 28th, 2007 at 09:05
Perl можно сказать пришли в инет когда сами-то и появились, перл был очень популярен в написании CGI-приложений.
Хостер толковый tophost.com.ua, но в принципе можно и VDS взять, если нужен самый новый софт.
August 28th, 2007 at 11:48
Zend не понравился. Сейчас пробую Code Igniter и CakePHP. Не понравятся - допишу свой.
August 28th, 2007 at 11:56
crash
Ага, ок. Но сути не меняет - в вебе, имхо, перл позиции сдает.
Sam
А чем не понравился-то? :)
August 28th, 2007 at 12:00
Жирный очень уж для своих возможностей. Посмотреть тот же CakePHP… там есть даже ORM нормальный, а весит в разы меньше. Дело даже не в весе, а в том, как это повлияет на производительность… инклюды кучи файлов всё-таки при каждом запросе - жёсткая штука.
August 28th, 2007 at 12:04
Где в cakephp orm? ткни пальцем. нет там ничего.
August 28th, 2007 at 12:11
http://manual.cakephp.org/chapter/models
August 28th, 2007 at 12:14
Угумс. То же самое что и в Zend_Db_Table на самом деле.
August 28th, 2007 at 12:40
crash
По поводу VDS - я тогда смысла с PHP заморачиваться не вижу. :) Ставишь туда Рельсы/Джанго/Zope и радуешься жизни :)
August 28th, 2007 at 13:51
Вообще самый приятный orm в ezpdo. Лучше пока ничего не видел.
August 28th, 2007 at 13:53
Django? :)
Zope - но там немного непривычная архитектура.
Для PHP - Propel говорят самый классный.
August 28th, 2007 at 14:09
Ну уж нет! Propel ты не развернёшь где попало, да и пока развернёшь голову всю пробьёшь. А потом ещё конфиги в xml фигачить…
Так да конечно, с точки зрения производительности предгенерация Propel хороша…
August 28th, 2007 at 14:13
Для организации хорошей ORM все равно прийдется прописывать, какие поля у тебя в таблице есть. И неважно где это делать - в xml-файле или где-то еще.
August 28th, 2007 at 14:17
Очень даже важно. Глянь на досуге ezpdo.
August 28th, 2007 at 14:21
Так и хочется прочитать - “епздО”. :)
А нафлудили мы тут…
February 26th, 2008 at 10:45
Новый 2008 год внушает много оптимизма по поводу развития Java. ожидается много новшеств.