Другие языки программирования и технологии

JavaScript vs Php vs Rails- требуется авторитетное и компетентное мнение !

Всем известно что разработчиком php требуется уже установленный вэб сервер Apache или другой! И только после этого он сможет работать в отличие от Javascript который уже встроенный в любой броузер и может быть абсолютно самостоятельным !
К примеру что бы развернуть сервер на платформе Node.Js потребуется меньше времени и запутанного кода и всякой всячины усложняющией коддинг - теперь сам вопрос :

Скажите знатоки - какой же язык всё же удобнее? JavaScript - Rails - Php

вопрос адресован тем кто уже имеет познания в проффесиональной работе - и разумеется соображает что это ВСЁ из себя представляет
Дм
Дмитрий
66 670
Ruby знаю плохо, потому ничего о нём не скажу. Сравнивать же PHP и JavaScript достаточно сложно. Оба языка имеют существенные недостатки в дизайне, оба во время длительной эволюции обзавелись множеством нелогичностей, оба "прощают" грубейшие ляпы программистам, оба имеют Си-подобный синтаксис... Но на этом всё их сходство заканчивается.

PHP - это изначально процедурный и постепенно обросший ООП-возможностями язык исключительно для программирования back-end части web-серверов. Он содержит огромное кол-во встроенных функций, позволяющих максимально просто решить большинство возникающих задач. да и по производительности среди интерпретируемых серверных языков он уступает только Lua (великолепный, но не слишком популярный язык) и JavaScript (т. е. серверному варианту js - Node.JS; но Node.JS не является универсальным решением и годится только для некоторых классов задач). Да, используя PHP легко выстрелить себе в ногу, но большинство проблем решается использованием современных фреймворков и элементарной самодисциплиной. Так что в нестоящее время конкурировать с PHP на его поле реально могут только компилируемые языки. И среди них лично для меня наиболее интересен набирающий популярность Go (его авторы выбрали достойные образцы для подражания).

JavaScript - это прежде всего язык для программирования front-end и здесь у него нет конкурентов (CoffeScript, TypeScript - это не полноценные языки, а суррогаты, транслируемые в тот же JavaScript, а Node.JS - это нищевая серверная система, не являющаяся столь универсальной, как PHP). Главной особенностью JS, которую многие не осознают, является то, что это функциональный язык, только маскирующийся под императивный. Для программирования на JS нужно думать иначе, чем при программировании на Pascal / C / PHP и т. д. А т. к. JS обладает куда меньшими встроенными библиотеками, чем PHP, потому требует большего объема собственно программирования. Но это также нивелируется современными фреймворками.

JavaScript синтаксически проще и последовательнее, чем PHP, но при этом подводных камней (особых случаев, случаев по умолчанию и т. д.) в JS куда больше. Так что серьёзно изучить JS ничуть не легче, чем PHP, а уж выстрелить в ногу проще именно на JS.

Впрочем, оба языка постепенно развиваются. В новой версии JS (стандарт ECMAScript 2015) добавлены новые конструкции, исправляющие нелепости предыдущих версий и добавляющие рюшечки для любителей С++-подобного ООП. А в PHP 7 язык стал более логичным и быстрым.
Александр Фомин
Александр Фомин
63 319
Лучший ответ
Дмитрий php 7? а где о нём можно почитать? на оф сайте про это молчок -
Так-то конечно Ruby, больше нигде нет и не будет хотя бы близкого аналога рельс.
JS конечно спроектирован гораздо грамотнее чем пхп, но тоже не подарок, он просто банально голый - чтобы на нем писать нормально надо его обмазать кучей либ которые по-хорошему должны били быть частью stdlib языка.
Да, их схема работы не требует наличия веб-сервера - так как приложения на рельсе или ноде используют серверные интерфейсы с нативными серверами - т. е. процессы этих приложений сами по себе являются серверами. А в пхп до сих пор анальные пляски вокруг CGI-FCGI как в 90х, никаких серверных интерфейсов, никаких middlewares(разве что на уровне конкретных фреймворков, но это не то). Вобщем сейчас с нуля лезть в пхп не вижу никакого смысла.
Дмитрий спасибо !
PHР это дом, а JS это кирпичик от этого дома. Надеюсь ты въехал.
Рома Р.б
Рома Р.б
2 698