Противостояние PHP и Node.js

0

Сеть – постоянно меняющееся пространство. Перед серверными разработчиками стоит сложный выбор между опытными тяжеловесами, как Java, C и Perl и новичками – такими языками, как Ruby, Clojure и Go. В итоге этот выбор редко имеет значение, если ваше приложение работает.

Но как сделать осознанный выбор начинающим в веб-разработке?

Я надеюсь, что не положу начало войне, противопоставляя PHP и Node.js:

PHP был создан Rasmus Lerdorf в 1994 году. Это интерпретатор, обычно установленный в качестве модуля в веб-сервере Apache или Nginx.

PHP код может быть смешан с HTML. Это не обязательно, но новички могут очень быстро создать полезный код. Это способствовало популярности языка, и PHP в настоящее время используется более чем на 80% веб-серверов в мире. WordPress в немалой степени способствовал этому – Система управления контентом PHP, которая питает четверть всех сайтов.

Node.js была создана Ryan Dahl в 2009 году. Эта платформа, использующая JavaScript, основанная на движке V8, который также питает клиентский код в веб-браузере Chrome. Необычно, что в платформе есть встроенные библиотеки для обработки веб-запросов и ответов – вам не нужны отдельный веб-сервер или другие зависимости.

Node.js является относительно новой платформой, но быстро набирает обороты. Она используется такими компаниями, как Microsoft, Yahoo, LinkedIn и PayPal.

Где C#, Java, Ruby, Python, Perl, Erlang, C++, Go, Dart, Scala, Haskell и т.д.?

Статья, которая сравнивает каждый вариант, будет долгой. Вы бы прочли ее? Думаете один разработчик знает их все? Я ограничился PHP и Node.js, потому что:

  1. Это хорошее сравнение. Они оба с открытым исходным кодом, в первую очередь направлены на веб-разработку и применимы к похожим проектам.
  2. PHP – давний язык, но Node.js получает повышенное внимание. Поверят ли разработчики PHP рекламе Node.js? Стоит ли им задуматься о переходе?
  3. Я знаю и люблю языки. Я использовал PHP и JavaScript с конца 1990-х годов, и несколько лет работаю с Node.js. Я пробовал себя и в другом, но не могу оценить их должным образом в этом обзоре.

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

О противостоянии

Разработчики тратят много лет на оттачивание мастерства. Некоторым из них языки были навязаны, но те, кто достиг высокого уровня, как правило, делают свой выбор, основываясь на множестве факторов. Это субъективно; вы поддерживаете и защищаете свое решение.

Поэтому я не пишу статью о том, что подошло бы вам. Я даю рекомендации, основанные на собственном опыте, требованиях и пристрастиях. Вы согласитесь с некоторыми пунктами и не согласитесь с другими; это здорово – ваши комментарии помогут другим сделать осознанный выбор.

Методология оценки

Я сравню PHP и Node.js в десяти раундах. В каждом бою рассмотрим общую задачу разработки, которая может быть применена к любой веб-технологии. Мы не будем углубляться; немногим интересны сравнительные достоинства генераторов случайных чисел или алгоритмы сортировки массива.

Победителем будет тот, кто выиграет больше раундов. Готовы? Так пусть начнется битва!

Поделиться: