Как стать автором
Обновить

Комментарии 13

Первые уроки были отличные. А вы планируете доделать курс до конца? Про архитектуру и прикладную часть?

Очень постараемся. Мы большие фанаты распространения знаний и разработки: создаём свои open-source инструменты, поддерживаем и спонсируем чужие. Курс — штука большая и сложная. Выбирая из «быстро, бесплатно или качественно», мы выбрали второй и третий параметры. Надеемся, что вернемся к архитектуре и прикладному использованию RoR так быстро, как сможем.

Спасибо, что неравнодушны к нам :)

Различают несколько основных стилей программирования:

императивный

декларативный

функциональный

объектно-ориентированный

Больше похоже на игру "Найди лишнее". Просто скинули в кучу всё подряд. Хотя если мы говорим про мультипарадигменный или гибридный язык, то может иметь смысл.

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

А вот теперь вообще ничего не понял. Если это чистый объектно-ориентированный язык, то при чём тут функциональная парадигма? Это как вообще?

Если это чистый объектно-ориентированный язык, то при чём тут функциональная парадигма

Получается что объектно-ориентированная парадигма включает в себя функциональную. Автор еще то "стиль", то "парадигма" пишет, так что можно сказать мол это разное


P.S. Имхо язык конечно лучше характеризовать его синтаксисом и семантикой, чем такими общими словами

Включает функциональную или процедурную? С последним могу согласиться. С первым - нет.

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

"Парадигма" — устаревшее понятие AFAIK. Я использую это слово как историческое. Сейчас лучше использовать "стиль". Все более-менее развитые языки теперь позволяют использовать несколько стилей сразу.

чистый объектно-ориентированный язык

этот термин означает, что в Ruby всё является объектом, включая числа, строки, nil, сами классы и прочее, т.е. можно вызвать метод у числа, у nil, а любой класс является объектом класса Class

10.nil?
nil.to_s

[].is_a?(Array)
Array.is_a?(Class)

Функциональный стиль - думаю, тут нужно сказать о блоках (&block), важная фича синтаксиса Ruby, каждый метод можно объявить с блоком, т.е. фрагментом кода, который определяется в момент вызова. Важность в том, что блоки очень распространены в Ruby, для примера, почти все циклы объявляются не через for, а через each или map, и для многих других действий удобно использовать блоки

Декларативный стиль - в Ruby распространены DSL, при объявлении классов часть методов и процессов может объявляться не в базовом виде, а декларироваться через специальные хелперы, примерами DSL можно назвать grape, rake-задачи, спеки

Спасибо за замечания. По функциональному стилю будет отдельная лекция.

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

А про самую крутую фичу языка забыли упомянуть - "метапрограммирование", ибо это то что действительно отличает ruby от других языков.

Хорошее замечание ) Cлово "DSL" будет часто встречаться, когда начнём говорить о Rails.

"Это ваш «второй курс» по Ruby on Rails."

что посоветуйте, как дойти до этого курса?

Почему вообще руби потерял популярность и почему в частности тот же пхп стал популярнее всего на свете?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий