Манимейкеры повсеместно используют для своих сайтов PHP. Это вполне объяснимо: поддержка большинством хостингов, простота базового изучения (быстро что-нибудь подправить), большое количество специалистов и, конечно же, огромный выбор готовых CMS. Я и сам, например, для большинства своих проектов использую WordPress (написанный, как известно на PHP).
Но если вы используете не готовое решение, а создаете (сами или на заказ) движок с нуля под свои собственные нужды, многие преимущества PHP отходят на второй план. Давайте рассмотрим тему поста в этом контексте подробнее.
Преимущества PHP
- Простота. При разработке сложной системы это преимущество превращается в недостаток — неполная реализация объектности, отсутствие строгой типизации и других свойств, присущих полноценным языкам, приводит к проблемам в развитии и поддержке сложной системы.
- Большой выбор хостингов. При разработке сайта с нуля стоимость хостинга уходит на второй план по сравнению со стоимостью разработки.
- Полная бесплатность, включая платформу. Довольно большой плюс, если вы разрабатываете маштабируемую систему, которая должна работать на десятках и сотнях серверах. В этом случае вы сэкономите много денег, используя бесплатную ОС. Если вашему сайту достаточно одного сервера, то стоимостью ОС можно пренебречь. То же относится и виртуальному хостингу.
Преимущества ASP.NET
- Полноценный язык. Более того, платформа .NET позволяет использовать любой .NET-совместимый язык (наиболее популярны C# и VB.NET, но есть Python, Delphi и другие). Особенно отмечу удобный объектно-ориентированный синтаксис базовых библиотек.
- Компиляция программ. В отличие от PHP, в .NET код компилируется, благодаря чему он исполняется гораздо быстрее.
- Идентичность среды разработки и деплоймента. Если вы используете Windows, то при разработки на PHP ваша среда разработки отличается от серверной (т.к. там стоит Linux). При разработке на ASP.NET вы используете одинаковую среду и на девелоперских компьютерах и на серверах в Интернете.
- Полная поддержка юникода. Все сайты на ASP.NET автоматически поддерживают UTF-8, чего не скажешь о сайтах на PHP.
- Огромные возможности, включенные в состав стандартных библиотек. В PHP многие аналогичные вещи реализуются сторонними библиотеками, но их использование создает дополнительные проблемы: отсутствие библиотек на хостинге, необходимость изучения.
- MS SQL vs MySql. Как PHP программисты используют в большинстве случаев MySql, так дотнетчики используют MS SQL. Последний обладает более широкими возможностями, чем MySql.
По правде говоря, я не представляю, как на PHP создаются сложные системы типа того же Вордпресса. На ASP.NET все делается гораздо проще и понятнее.
Не согласны? Пишите в комментарии.