Системы для разработки сайтов

На конец 2008 года в мире около 3000 языков программирования, не считая их версий. Некоторыми языками умеет пользоваться только небольшое число их собственных разработчиков.

Самыми популярными языками программирования в настоящее время считаются:

Java C C++ (Visual) Basic PHP Perl Python C# Delphi JavaScript SAS Visual FoxPro PL/SQL COBOL Lisp/Scheme

Ни один профессиональный программист (веб-дизайнер) никогда не знал, не знает, и никогда не будет знать даже малой части всех языков программирования.

Профессиональный программист (веб-дизайнер) не сможет даже перечислить все языки программирования.

Язык программирования - формальная знаковая система, предназначенная для описания алгоритмов в форме, которая удобна для исполнителя: компьютера, программиста или веб-дизайнера.

Язык программирования для Интернет (веб-программирования) - частный случай языков программирования, предназначенных для решения задач, связанных с разработкой программного обеспечения для Интернет. В частности, для создания сайта.

Язык программирования определяет набор лексических, синтаксических и семантических правил, используемых при составлении компьютерной программы, в частности, сайта. Язык программирования позволяет программисту (веб-дизайнеру) точно определить, на какие события будет реагировать компьютер, как будут храниться и передаваться данные, и какие действия следует выполнять над этими данными при различных обстоятельствах.

Большинство новых языков программирования создается на основе совершенствования старых. Если построить условное "родословное дерево" языков программирования, то в его основе будут расположены только несколько языков. Чем менее распространен язык программирования, на основе которого создан сайт, тем ниже надежность сайта. Тем выше зависимость владельца сайта от веб-дизайнера, создавшего сайт на основе малораспространенного языка программирования. Профессиональные веб-дизайнеры иногда применяют в своей работе более десятка разнообразных языков программирования.

Язык html - "международный язык Интернет-программирования". Язык html - универсальный язык, используемый при разработке сайта. Создание сайта, основанного на применении языка html, делает сайт максимально независимым от сервера. Язык html обязан знать любой профессиональный веб-программист (веб-дизайнер). Внесение изменений в программу-редактор требует внесения изменений в ее исходный программный код. Для этого необходимо не только иметь 100% открытый исходный программный код, но и хорошо в нем разбираться.

Язык PHP-это язык обработки гипертекста (HTML), используемый на стороне сервера (server side scripting language), конструкции которого вставляются в HTML-текст. В 2003 году вышла версия PHP 5.0 на базе машины Zend Engine 2 (фирма Zend Technologies Ltd), что дает возможность для создания полномасштабных приложений, начиная с пятой версии его можно называть объектно-ориентированным. PHP является открытым программным продуктом, что означает его бесплатность и возможность создавать свои собственные расширения языка.

Язык PHP используется примерно на 52% из 14,5 миллионов сайтов, работающих под Apache, который в свою очередь является самым распространенным сервером в интернет (по разным оценкам около 70%), популярность которого быстро растет.
PHP является самым молодым, перспективным и быстроразвивающимся из языков программирования для интернет, доля его использования по сравнению с другими языками быстро растет. Его основные преимущества: широкая поддержка различных технологий, совместимость с серверами, базами данных, простота и бесплатность.

PHP позволяет отделить HTML-текст от выполняемой части, за счет чего можно добиться значительного снижения затрат времени на разработку проекта. Во многих случаях удается отделить программную часть проекта от разработки страниц на HTML, что облегчает жизнь и дизайнеру, и программисту. Почти всегда окажется, что скорость продвижения проектов, создаваемых на PHP будет выше, чем при использовании других языков программирования.

Возможности PHP

- поддерживаемые технологии: платформы Win32 (9x/NT/2000/XP), UNIX, OS/2, QNX, MacOS, BeOS, OCX;

- совместимость с серверами: Apache (Win32, UNIX), phttpd, fhttpd, thttpd, ISAPI(Zeus, IIS), NSAPI, Roxen/Caudium, AOLServer;

- поддержка технологий COM, XML, Java, CORBA, WDDX, Macromedia Flash;

- развитая функциональность для работы с сетевыми соединениями;

- поддерживает свыше 20 баз данных и имеет развитую функциональность для работы с ними;

- возможность создания полноценных объектно-ориентированных приложений;

- сравнительно простой синтаксис и удобство в практическом использовании;

- бесплатность;

- открытость кода, благодаря которой можно создавать собственные расширения языка

PHP сильно отличается от других языков программирования своей простотой, так при создании программы не приходится учитывать многочисленные мелочи, которые портят жизнь программистам на Perl и C++, - не надо думать о правах доступа к файлам сценария, не надо прописывать точные пути к различным модулям, нет необходимости следить за отсутствием в файле скрипта, недопустимых символов и т.д.

Синтаксис языка PHP позволяет быстро освоить этот язык любому, кто знаком с HTML, а если у Вас есть опыт программирования на других языках программирования, Вы сможете сравнить его с ними на собственном опыте и, наверняка забудете о использовании других языков при разработке приложений для интернет, используемых на стороне сервера.

CSS или каскадные листы стилей используются для форматирования элементов гипертекстовой разметки. В обычном HTML для присвоения элементу определенных свойств (цвет, размер, положение на странице и т. п.) необходимо каждый раз задавать элементу свойства, даже если они полностью одинаковы и повторяются многократно. CSS позволяет задавать стиль для элементов гипертекстовой разметки один раз для всего блока кода, или всей страницы, или всех файлов сайта и не делать этого для каждого повторяющегося элемента. Таким образом, CSS позволяет уменьшить размер документа (или документов) и соответственно, уменьшить время загрузки страниц.

В CSS для присвоения какому-либо элементу определенных характеристик необходимо один раз описать этот элемент и определить это описание как стиль, а в дальнейшем просто указывать, что элемент, который вы хотите оформить соответствующим образом, должен принять свойства стиля, описанного Вами. Очень привлекательной в CSS является возможность сохранить описание стиля не в тексте странички, а в отдельном файле – это позволяет использовать описание стиля на любом количестве Web-страниц, а также изменять оформление любого количества страниц, исправив лишь описание стиля в одном (отдельном) файле.
Кроме того, CSS позволяет работать со шрифтовым оформлением страниц на гораздо более высоком уровне, чем стандартный HTML, избегая излишнего утяжеления страниц графикой.

Язык JavaScript (не путайте с Java) и VBScript - это языки программирования для интернет, используемые на стороне клиента. Программы на этих языках встраиваются в код web-страниц, или выносятся в отдельный файл, обращение к которому осуществляется из web-страницы. При этом, даже если код на JavaScript или VBScript вынесен в отдельный файл, он все равно выполняется броузером, как если бы он был включен в web-страницу.

Серьезным недостатком языков JavaScript и VBScript является доступность просмотра кода страницы в браузере или при сохранении страницы на диске и открытии любым текстовым редактором. Это создает сразу две проблемы - невозможность скрытия исходного кода и огромная дыра в безопасности, т.к. злоумышленник может изменить значение переменных JavaScript или VBScript, в поле формы вложить вредоносную программу или изменить алгоритм программы.

По вышеуказанным причинам использовать языки программирования JavaScript и VBScript для создания программ, подобных интернет-магазинам, форумам, гостевым книгам, которые используют или записывают информацию, полученную от пользователя, с точки зрения безопасности, абсолютно неразумно. Для решения таких задач необходимо использование программ, работающих на стороне сервера, для написания которых используют такие языки программирования для интернет: PHP, ASP.NET, Perl и Java.

Язык ASP.NET (Active Server Pages) - это язык программирования сценариев от Microsoft. Язык ASPуступал языку PHP по многим параметрам, и в первую очередь, по времени исполнения программ. С появлением ASP.NET ситуация изменилась. ASP.NET тесно интегрирован в новую технологию NET компании Microsoft. Особенностью этого языка является возможность использовать любой язык программирования среды исполнения NET(Visual Basic.NET, C#, J#). В рамках одного приложения может быть использовано несколько языков, что позволяет объединять в одном проекте программистов, владеющих разными языками программирования.
Код web-приложения на ASP.NET компилируется в промежуточный язык MSIL(Microsoft Intermediate Language). Аппаратно-независимый код на этом языке помещается в кэш web-сервера для повышения производительности, как и байт-код Java, но в отличие от технологии Java, обеспечивающей платформенную независимость, NET обеспечивает независимость от языка разработки. ASP.NET используется для комплексных решений при разработке крупных проектов, связывающих Internet с Intranet, работающих на связке Windows-IIS.

Недостатком языка ASP.NET является невозможность выполнения на серверах, работающих не под Windows. Кроме того, если страница активно использует компоненты NET, просмотр динамической страницы возможен только в броузере MS Internet Explorer.

Язык Perl (Practical Extraction and Report Language) является интерпретируемым языком, который появился еще до появления Internet. Язык Perl разработан в конце 80-х годов и получил распространение потому, что был доступен на каждом Web-сервере, поскольку практически все они работали под управлением Unix, и альтернативой ему являлся только более сложный, чем Perl язык С. По мнению большинства изучавших язык Perl и язык PHP, второй, при аналогичной функциональности, изучить намного легче. Дело в том, что язык Perl создавался под разработку самых разных приложений, и потому в значительной степени избыточен. Для разработки интернет-приложений проще и намного быстрее использовать язык PHP, который сразу разрабатывался под эти цели, проще интегрируется с уже имеющимся HTML и дает возможность аналогичные задачи решать более просто, чем язык Perl.

Язык Java (не путайте с JavaScript) – C - подобный язык, который разрабатывался, как упрощенная и улучшенная версия языка С++, а также межплатформенная технология, позволяющая создавать web-приложения корпоративного масштаба. Его достоинством является переносимость и объектно-ориентированность, что позволяет создавать сложные и объемные приложения. Но у языка Java есть и недостатки: медленное выполнение и потребление большого количества памяти, как плата за кроссплатформенность, а также сложность разработки web-приложений по сравнению с языком PHP, практически не уступающим Java в гибкости и масштабируемости созданных приложений.

Язык Java для разработки web-приложений обычно используется в связке Windows-IIS. Применение языка Java для разработки web-приложений вряд-ли оправдано для относительно простых приложений, кроме того, это обходится значительно дороже, чем использование PHP в связке Unix(Linux, Solaris, FreeBSD)-Apache.

Базы данных для интернет-приложений.

Для интернет-приложений используются множество различных баз данных: MySQL, PostgreSQL, MS SQL Server, MS Access и Oracle. Наиболее распространенными решениями при выборе базы данных для интернет-приложений являютсябазы данных MySQL и PostgreSQL. Обе эти базы данных - бесплатные продукты с открытым исходным кодом. При этом по своим возможностям и характеристикам они удовлетворяют самым серьезным требованиям:

- быстрота работы (одни из самых быстрых баз данных на рынке);

- простота использования;

- поддержка языка запросов SQL;

- безопасность, в том числе поддержка криптируемого протокола SSL;

- переносимость;

- малый размер;

- работоспособность и цена;

- свободное распространение;

- хорошая поддержка (регулярный выход новых версий, список рассылки, доступность справочного руководства в режиме "online").

Для разработки интернет-приложений чаще всего базы данных MySQL и PostgreSQL используются в связке Unix(Linux, Solaris, FreeBSD)-Apache-PHP. Данная комбинация в подавляющем большинстве случаев является оптимальной по всем основным параметрам: скорость разработки, простота, переносимость, стоимость разработки и используемого программного обеспечения.

Наши рекомендации