В настоящее время существует масса решений для создания web-приложений - масса языков программирования, фреймворков и библиотек. Спорить о том, какая платформа для web-программирования лучше всего, глупо и бесперспективно - если бы кому-то удалось выбиться в безоговорочные лидеры, остальных в скором времени забыли бы. Поэтому гораздо полезнее и интереснее посмотреть, кто сегодня в лидерах среди web-разработчиков.
Этот рейтинг не претендует на абсолютную достоверность, потому что базируется не на статистических данных, а на субъективных наблюдениях автора на основе количества вакансий для специалистов по конкретным технологиям, количеству сайтах на тех или иных платформах, количеству библиотек и различных вспомогательных инструментов... Рейтинг в большей степени отражает предпочтения белорусских разработчиков и работодателей, нежели общемировые тенденции, но, в целом, поскольку Беларусь - страна, живущая в значительной степени офшорным программированием, влияние мировых тенденций хорошо чувствуется у нас. Что ж, наверное, вступление и так несколько затянулось - давайте, наконец, перейдем к тому, ради чего и затевалась статья, то есть, к самому рейтингу.
1. PHP
Вряд ли среди наших читателей найдется человек, который сможет с чистой совестью утверждать, что вообще ни разу не слышал ничего о языке программирования, название которого является рекурсивным акронимом, то есть, расшифровывается само через себя: "PHP: Hypertext Preprocessor". Возможно, основной причиной потрясающей популярности этого языка является как раз то, что разрабатывался он с самого начала как средство написания приложений, размещаемых на серверах во Всемирной паутине. Правда, удобство PHP и его повсеместная распространенность сыграли с ним не очень приятную для PHP-разработчиков штуку: в связи с тем, что освоить эту технологию сравнительно просто, разработчиков на PHP на рынке труда достаточно много, что негативно сказывается на их заработной плате.
2. ASP.NET
Технология web-программирования, предложенная корпорацией Microsoft, может считаться сравнительно молодой - если говорить именно об ASP.NET, а не об ASP, которая может считаться предком современной платформы. Тем не менее, количество сайтов, написанных на ASP.NET, растет буквально на глазах - соответственно, увеличивается и спрос на специалистов, которые владеют ей. По своей функциональности эта платформа превосходит многих своих конкурентов, однако многие разработчики предпочитают их в силу своей нелюбви к корпорации Microsoft и коммерческому программному обеспечению, в целом. Хотя, конечно, это все вторично, по сравнению с привязкой ASP.NET к операционной системе Windows.
3. JSP (Java Server Pages)
Сложно сказать, какая из технологий - JSP или ASP.NET - на самом деле популярнее, так что здесь, скорее, уместнее говорить о том, что они разделили между собой второе и третье места. В отличие от ASP.NET, JSP, базирующаяся на Java, является открытой технологией и не привязана к каким-то определенным программным платформам, что, несомненно, является её большим плюсом. Не меньшим плюсом является и то, что основана эта технология именно на Java - языке, на котором написано уже огромное количество кода на все случаи жизни. И этот код может использоваться написанным на основе JSP web-приложением. Хотя, конечно, нельзя сказать, чтобы с JSP все было так уж безоблачно, но количество приложений, написанных на её основе, стабильно растет, и специалисты по данной технологии также весьма востребованы.
4. Различные MVC-решения для Java
Помимо, собственно, JSP, для Java есть ряд сопутствующих решений для создания web-приложений, которые, в силу их отличия от идей, лежащих в основе "классической" концепции Java Server Pages, можно выделить также в отдельную платформу. На самом деле, конечно, никакая это не платформа, а настоящий зоопарк из разных фреймворков, как известных, так и не очень, изредка более-менее совместимых между собой. Быть специалистом в этой области не очень удобно по причине того, что, в отличие от ASP.NET, нет единообразия, и опыт, полученный при работе с одним фреймворком, может быть совершенно бесполезным при работе с другим.
5. Ruby (который on Rails)
Эта платформа пока что, скорее, диковинка, нежели полноценный рабочий инструмент, не только для белорусских ИТ-работодателей, но и для всего мира. Но ситуация постепенно меняется - причем в лучшую, с точки зрения Rails-разработчиков, сторону. В Минске уже есть своё сообщество разработчиков, использующих эту технологию, так что наша страна, как видите, не стоит в стороне от прогресса. На самом же деле, Ruby on Rails - это MVC-фреймворк для языка программирования Ruby, и говоря о нём как о платформе web-программирования, нужно отделять особенности, присущие Ruby (самая важная и неприятная из которых - сравнительно медленная скорость работы, что, впрочем, решается с помощью таких вещей, как JRuby, о котором я не так давно рассказывал читателям "Компьютерных вестей") от особенностей, собственно, самих "Рельсов". Впрочем, как бы то ни было, бурное развитие самой технологии и увеличение интереса к ней со стороны работодателей позволяют Rails-разработчикам надеяться на достаточно светлое и безоблачное будущее.
6. Perl
Несмотря на достаточно длинную историю развития этого языка программирования и большое количество проектов, выполненных с его использованием, востребованность его как платформы web-программирования уже, скажем прямо, совсем не та, что раньше. Во многом это обусловлено особенностями самого языка, который не слишком прост в изучении, развивается медленно, по сравнению со многими своими конкурентами (шестая версия языка разрабатывается с 2000 года - кто из конкурентов может "похвастаться" подобным?), и не продвигается никем из гигантов софтверного рынка. Лаконичность кода на Perl делает его не слишком удобным для повторного использования, а малое количество специалистов по этому языку делают его менее интересным для среднестатистического работодателя, чем, скажем, тот же PHP. Но если вы хорошо освоите Perl, можете не сомневаться в том, что всегда сможете найти себе высокооплачиваемую работу.
7. Python
Еще один язык общего назначения, первоначально задуманный совсем не для Web, но нашедший во Всемирной паутине самое что ни на есть широкое применение. Python, как и Perl, отличается не совсем стандартным синтаксисом, но здесь этот синтаксис не запутывает программу, а, напротив, делает её понятнее для других и читабельнее. Один из несомненных плюсов языка - поддержка нескольких разных парадигм программирования (структурное, объектно-ориентированное, функциональное, императивное и аспектно-ориентированное). Конечно, если говорить именно о web-проектах, то в Беларуси на Python'е их реализуется сравнительно небольшое количество, но специалисты по этому языку достаточно востребованы на рынке труда, и тенденция на сегодняшний день такова, что в дальнейшем интерес к Python'у должен только усиливаться.
8. Flash/ActionScript
Раз уж мы говорим о web-программировании вообще, то не будем забывать, что есть такая категория сайтов, как "сайты на Flash'е". Их, конечно, не очень много в силу минусов, которые характерны для Flash, - сайт получается достаточно "тяжелым" и при этом его содержимое остаётся недоступным для поисковых систем, что, скажем прямо, не очень желательно для тех, для кого сайт - это, прежде всего, средство рассказать о себе обитателям сети. Зато сайт получается очень красивым и чрезвычайно интерактивным, что и позволило ActionScript'у войти в этот рейтинг. Специалисты по нему, конечно, востребованы, и даже очень, но если вы грезите именно web-разработкой, то придется поискать подходящие проекты. В принципе, то же самое можно сказать и о платформе Silverlight - хотя сайтов на ней пока несколько меньше, как и вакансий для разработчиков.
9. ColdFusion
Сегодня эта платформа тоже в разряде тех, о ком можно сказать, что нынешнее сообщество разработчиков, использующих её, это всего лишь остатки былой роскоши. Что и говорить, ColdFusion сегодня действительно не так популярна, как раньше - во многом это обусловлено тем фактом, что это средство разработки является коммерческим программным продуктом, требующим платы со стороны того, кто использует его для создания своего сайта, что и позволило обойти его таким свободным конкурентам, как стоявший в самом верху этого рейтинга PHP. Опять же, хостинг-провайдеры предлагают поддержку ColdFusion только за дополнительную плату, а при использовании в действительно масштабных проектах, таких, как социальные сети, эта платформа тоже показывает себя не так хорошо, как хотелось бы. Но вакансии ColdFusion-разработчиков появляются на сайтах, в том числе и белорусских, регулярно, хотя и не так часто, как вакансии для PHP'истов.
Как видите, все платформы, входящие в этот "топ", достаточно широко известны и востребованы белорусскими софтверными компаниями. Конечно, повторюсь, позиции в топе достаточно условны и отражают, скорее, общее положение той или иной платформы - ближе к "верхушке" или ближе ко "дну". Заранее приношу свои извинения, если что-то забыл или кого-то обидел - если вы программируете на ColdFusion'е, оказавшемся в конце, не значит, что вы делаете это хуже тех, кто программирует на PHP, стоящем в начале списка. В любом случае, гораздо важнее, как вы программируете, а не на чём.
Вадим СТАНКЕВИЧ,
dreamdrusch@tut.by
Комментарии
Десятка(для полного счета, типа):
10. GWT
имхо