|
|
Рейтинг языков программирования: SQL впереди
C/C++ Язык структурного программирования "Си" за три десятилетия своей жизни покорил сердца не одного миллиона программистов всего мира. "Си — это инструмент, острый, как бритва: с его помощью можно создать и элегантную программу, и кровавое месиво" - слова создателя языка Брайана Кернигана. На языке "Си" было создано такое количество программного обеспечения, с которым сравниться не может, пожалуй, ни один другой язык. Ахиллесовой пятой языка "Си" является отсутствие поддержки модулей и, следовательно, полноценной раздельной компиляции. C++, потомок "Си", объектно-ориентированный язык высокого уровня. Одно из главных преимуществ ООП (объектно-ориентированное программирование) — не только адекватное отображение объектов реального мира, а способность поддерживать эволюционное развитие программ за счет сочетания виртуализации и наследования. ООП практически вытеснило все прочие при создании больших программных систем. Новые версий этих языков программирования работают с графическим пользовательским интерфейсом в среде Windows, в них встроен механизм "управления от событий" (Microsoft Visual C++). Это существенно снижает трудоемкость разработки прикладных программ, что особенно важно для таких, например, задач, как создание систем искусственного интеллекта. К сожалению, у сообщества С++ никогда не было координирующего центра, финансовые возможности которого позволяли бы ему заниматься популяризацией языка, вследствие чего C++ потихоньку сдает позиции другим языкам ООП. HTML, DHTML, CFML Языки разметки, или тегированные языки, стоят несколько поодаль от магистральной линии развития сценарных языков. Их главная отличительная черта — встраивание специального кода (в виде обособленных "команд" — тегов) непосредственно в обычные тексты. Язык HTML (Hypertext Markup Language), с появлением которого понятие "гипертекст" стало простым и обыденным - это основной язык представления информации в веб-среде, включая интернет. CFML (Cold Fusion) и DHTML — языки разметки, напрямую предназначенные для динамического создания веб-страниц и доступа к БД. Оба они являются расширениями HTML, но CFML — чисто коммерческий язык компании Allaire, не имеющий других реализаций, а DHTML, возникший из Dynamic HTML — результат многочисленных компромиссов и конкуренции Netscape и Microsoft, которые были подытожены консорциумом W3C. Близкие им ASP (Active Server Pages, Microsoft) и JSP (Java Server Pages, Sun) — уже не языки, а, скорее, технологические "плавильные печи". Тот же ASP по сути не что иное, как сценарий на VBScript, который исполняется на сервере. Visual Basic, VBscript, Map Basic Легкость освоения приемов программирования всегда являлась отличительной чертой семейства BASIC. Для Visual Basic предусмотрена возможность работы с графическим пользовательским интерфейсом в среде Windows и встроен механизм "управления от событий". Visual Basic — это "пограничный" язык, который скорее относится к прикладным сценарным, чем к традиционным. Особенно такая его разновидность для офисного программирования, как VBA (Visual Basic for Applications). Под его влиянием был создан язык VBScript (особый диалект языка Visual Basic, ориентированный на создание OLE-компонентов и на работу в рамках браузеров). Это семейство занимает почетное шестое место в опросе с 65%. XSL XSL – это всего лишь подъязык семейства XML. XSL позволяет определить формат групп похожих страниц. Часто в рейтингах XLS идет "в связке" с XML. Delphi Delphi – это скорее среда программирования, чем язык. Delphi принадлежит к классу нестандартных языков, представляющих собой традиционные (процедурные или функциональные) языки, дополненные средствами ООП. В основе Delphi лежит язык Pascal. Примерно 17% российских программистов считают Delphi самым перспективным языком программирования. 55% компаний, участвующих в опросе, используют этот язык, а среди языков ООП Delphi - на третьем месте по популярности. Сценарные языки Perl , Tcl/Tk , Zsh scripts Язык Perl (Practical Extraction and Report Language) выполняет функции управления данными и генерирования отчетов. Принадлежит к сценарным языкам, причем применительно к веб-среде. Создавались самые популярные из сценарных языков совсем не для веб-программирования: языки Perl, Tcl и Python появились еще тогда, когда не было даже первой версии HTML. Все они вышли из операционной системы UNIX. Perl - главный поставщик серверных скриптов для формирования веб-страниц по запросу. В нем прямо под рукой такие удобные средства, как ассоциативные массивы (хеш-структуры) и регулярные выражения, выполняемые для традиционных языков в виде вспомогательных библиотек. Это очень сложный и мощный "сиподобный" язык. Цель создания сценарного языка Tcl (Tool Command Language) была совсем иной — интенсивная обработка строк и тесная интеграция с пакетом Tk, обеспечивающим удобное построение пользовательского интерфейса для любых интерактивных приложений. Он позиционируется как язык расширения приложений. В отличие от Perl и Python язык Tcl в значительной мере опирается на подключение расширений, написанных на языках Си и Си++. Язык Tcl за счет подключаемого модуля SafeTcl нашел свое применение и в веб-программировании для поддержки в рамках браузера специальных апплетов, названных тиклетами (Tclets). Инструментарий Tcl/Tk примерно в три раза менее популярен, чем язык Perl, согласно нашему опросу. Zsh scripts – скрипт платформы UNIX. Альтернативный взгляд на вещи Совсем не вошли в данный рейтинг новые языки .NET и С#. Тем, кто только хочет освоить технологию .NET, специалисты советуют: не бояться работать по-другому. Ведь технология .NET радикально меняет всю парадигму Windows-программирования и программирования для интернета (а с выходом Mono 1.0 - и программирования для Linux). Одним из самых коренных изменений в .NET является то, что компиляция (в привычном смысле этого слова) откладывается до времени установки или первого выполнения приложения. .NET компиляторы на самом деле компилируют в некий общий для всех промежуточный язык, который при запуске преобразуется в машинный код. Именно поэтому не существует принципиальных отличий между .NET-языками, а проблема выбора между ними не стоит так остро. Интересно сравнить полученную диаграмму популярности языков программирования с диаграммой Дэвида Велтона, полученной на основании анализа запросов поисковой машины Google в октябре 2005 года. Диаграмма Велтона отражает знание языков программирования разработчиками ПО. По оси абсцисс отложена величина популярности языка (указано в количестве вакансий по каждому из языков с пециализированном поисковом движке Craigs List Jobs). Автор диаграммы отмечает, что в аналогичной диаграмме от 2004 года Java находилась на втором месте по популярности после SQL, а в этот раз уступила второе место языку C. Диаграмма Велтона популярности языков программирования * Источник: Дэвид Велтон, 2005 В последние годы в области создания языков программирования наблюдается некоторый застой. Возможно, это затишье перед бурей. Стремительное развитие компьютерной индустрии не может не поставить перед создателями "средств производства" программ (компиляторов) новые задачи. Компиляторы должны стать адекватны эпохе визуального программирования и интернет.
Елена Турдакина / CNews |