если мне очень нравится Ruby, есть ли причина, по которой я должен изучать другой язык сейчас, например, Lua или Erlang? - PullRequest
4 голосов
/ 28 мая 2009

Если мне очень нравится Ruby, есть ли причина, по которой я должен изучать другой язык сейчас, например, Lua или Erlang?

Ответы [ 8 ]

31 голосов
/ 28 мая 2009

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

10 голосов
/ 28 мая 2009

Изучение функционального языка в частности может быть чрезвычайно полезным. Знакомство с функциональным стилем программирования - верный шаг к тому, чтобы стать лучшим программистом. В частности, Lisp (или его производные) является хорошим языком для изучения. Вот список прошлых обсуждений SO, которые могут дать вам некоторое представление об этом:

  1. Почему люди думают, что функциональное программирование получит популярность?
  2. Какой хороший функциональный язык выучить?
  3. Преимущества схемы обучения?
6 голосов
/ 29 мая 2009

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

  • Изучите Smalltalk, язык, очень, очень похожий на Ruby, но в более чистом виде.

  • Изучите язык, который очень, очень отличается - скажем, что-то, что основано на алгебраических типах данных и функциях, а не объектах и ​​методах, и что-то со статической системой типов, а не с динамической системой типов - но что-то Как и Ruby, будет поддерживать мощные методы составления программ и общего программирования. Хорошие кандидаты включают Standard ML и Haskell .

  • Изучите язык, который очень, очень отличается - скажем, что-то, что заставляет вас контролировать каждый бит, адрес и слово в памяти - что-то, что заставляет вас понимать и контролировать аппаратное обеспечение. Другими словами, учите C.

Что касается других языков, которые вы упоминаете,

  • Lua небольшая и очень элегантно разработана и реализована. Это может обратиться к Рубиисту в вас. Но в отличие от Ruby это не навязывает большую часть мировоззрения; это больше коллекция частей. Я бы посоветовал вам с большей вероятностью оценить и насладиться Lua после того, как вы сначала поработали на трех или четырех других языках.

  • Эрланг интересен, но у меня есть ощущение, что он либо слишком отличается (чисто функциональный, распределенный), либо недостаточно отличается (система динамического типа). Но если вам это нравится, дерзайте.

2 голосов
/ 29 мая 2009

Мне кажется, что профессионал изучает инструменты, которые ему нужно использовать. Каркасы, контейнеры, языки - все это честная игра. Я начал в Паскале, пошел в C и затем C ++. Затем конвертируется в Java. В наши дни это в основном Java с большим количеством Javascript и немного PHP. Достаточно легко, верно? Ну, мне также нужно изучить скрипты на Bash и Perl. Не берите в голову всю другую чушь, над которой мне нужно разобраться (если вы скажете, что понимаете всю веб-аутентификацию, я назову вас лжецом). Там много чего есть. Прыгайте. Будьте готовы попробовать разные вещи.

2 голосов
/ 28 мая 2009

Если вам очень нравится Ruby, вы должны определенно выучить другой язык ... один без сигил , если возможно.

2 голосов
/ 28 мая 2009

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

1 голос
/ 28 мая 2009

Мне всегда нравится изучать новые языки для простого вызова. Это держит мой мозг в форме. Я также обнаружил, что хороший корм для собеседников позволяет говорить: «Я гибок. Я приспосабливаюсь к любым вашим потребностям в будущем. И я могу доказать это своим длинным списком языков».

0 голосов
/ 29 мая 2009

Мой основной язык - PHP. Я фанат языка сценариев, тем не менее, я погрузился в книги по C #, Java, Python, Ruby и даже OO JavaScript, чтобы найти новые механизмы и способы мышления. Например, я нашел довольно много трюков в Java, которые я мог бы реализовать в своей повседневной работе. Так что изучение или просто изучение новых языков может расширить ваши перспективы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...