|
Какой серверный язык учить?
Всем привет! )
В очередной раз передо мной встала проблема, проблема выбора - серверные технологии. Какой язык учить, что осваивать? Есть ли смысл изучать что-то новое, раз существует node.js? Хотелось бы услышать ваше мнение на этот счет. В качестве "языков" для обучения я рассматриваю: p.s.: ссылки на литературу для освоения приветствуются |
С++
А если серьёзно - выбор языка зависит от того, что и как ты собираешся делать. |
PHP (если сайты делать собрался)
+ на него проще перейти с javascript, чем на ruby или python + существует масса крутых фреймворков, yii, codeinghter, symphony, kohana, и тд + самые популярные движки сайтов написаны на php, joomla, drupal, wordpress, TYPO3, PHPBB, bitrix и тд если посмотреть на движки 10 000 самых популярных сайтов, то становится ясно что знание php позволит охватить где-то 90% рынка. ![]() бесплатные по рунету 2012г ![]() |
А мне php не нравится. На js мне приятнее писать. Потихоньку ковыряю Node.js
Php стоит практически на всех хостингах, затрудняюсь ответить где его нет. С другой стороны всё зависит от поставленных задач. Node.js нужно собирать из исходников и там все может быть не стабильно. Развитие php я уже однажды прошел. На фреймворки я забил большущий болт, некогда изучать и js и php и фреймворки обоих языков. Php программистов море, потому что начинать изучение с php очень легко и просто, старт изучения гораздо легче чем js. Книг тоже много и есть очень хорошие, хотя и плохих навалом. По поводу руби или питона, я бы выбрал Питон, в линуксе я его чаще встречаю, чем руби. |
php программист, php программисту рознь
ты можешь писать приложения на zend или yii моешь клпать модули для джумлы, drupal или wordpress получить сертификат и ваять для 1с битрикс тобишь здесь важно не столько само знание языка, сколько знание платформ и фреймворков, с которыми ты планируешь работать. К примеру я не могу писать для drupal к примеру, так как я воспитан на c++ то ООП для меня всё. Без него я как на другой планете. Посли красивого yii выворачивает наизнанку от убожества битрикса т.д. |
Цитата:
|
вот ненадо про мой кругозор только, за 16 лет программирования я писал на всё на чём можно помоему, включая программируемые калькуляторы. Святую войну оопэшников с быдлокодерами разводить не хотелось бы.
|
Цитата:
Так как иначе оопешниками с процедурщиками. Попиши на Erlang. |
DjDiablo,
да войны не надо :D |
erlang всятаки для многопроцессорных/многоядровых систем создан, тыбы ещё ассемблер привёл в пример. Это не тот класс задач.
я рассматриваю вопрос моделирования. Есть плита есть чайник, плита передаёт тепло чайнику, чайник реагирует и нагревается, по достижению какого то уровня он начинает трещать, при достижении критичиской температуры он воспламеняется. На ооп всё понятно, есть экземпляр класса чайник. Каждый раз при повышении температуры, какая-то функция чайника сопоставляет температуру с критическими значениями и определяет что надо трещать или воспламенятся. То есть чайник отвечает сам за своё поведение, плита отдельно, чайник отдельно. При процедурном подходе чайник представлен будет структурой с данными, в особом быдло варианте кучей переменных. Нагревание, треск и поджигание чайника будет производится процедурами из вне. Изменения характиристик чайника из вне менее логично чем самостоятельное изменения чайника как отдельного обьекта. Да бог с ней с логикой, посмотрим на удобство. плита вызывает функцию A нагрева чайника, функция A вызывает все остальные. b-треск C-возгорания 1) если чайников много, то между функциями a-b, a -c постоянно придётся таскать указатель на структуру со свойствами чайника 2) если появится второй тип чайников, которые не загараются а взрываются ( функция d)то придётся не только писать функцию d но и изменять функцию a чтобы она взависимости от типа чайника вызывала либо С либо D.. Либо менять поведение плиты, чтобы она для разного типа чайников вызывала разное a(нагрев который вызывает взрыв вместо возгорания), что уж со всем странно, с какого перепуга плита должна подстраиватся под чайник. 3) если будет сто типов чайников и каждый со свое реакцией, то функция A станет адово сложной, ибо вынуждена учитывать в себе поведение всех 1000 типов чайников при максимальном нагреве. Придётся выносить вызов возгорания/взрывания/ расплавления и тд в другую отдельную функцию. Я же должен как то разгрузить функцию A. 4) недайбог мне придётся менять теперь какой то чайник, у которого не две реакции треск и возгарание а 100 к примеру. Да Я охренею прыгать по кучи файлов изменяя функции и вызовы этих функций. А теперь вопрос, НАХРЕНА ВЕСЬ ЭТОТ ГЕМОР НУЖЕН ? Ведь в ооп мне достаточно создать один базовый класс чайника, и унаследовать от него хоть 100 хоть 1000 различных видов чайника, там где реакция будет отличаться я просто впишу нужную функцию реакции и всё. |
Часовой пояс GMT +3, время: 20:10. |
|