Комментарии 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 от других языков.
"Это ваш «второй курс» по Ruby on Rails."
что посоветуйте, как дойти до этого курса?
Почему вообще руби потерял популярность и почему в частности тот же пхп стал популярнее всего на свете?
Курс по Ruby+Rails. Часть 1. Императивное программирование