Ruby позволяет достичь краткости,
а краткость - сестра таланта.
Программист - это профессия, такая же профессия, как врач, учитель, водитель автобуса. Но также это и искусство, поскольку создание компьютерных программ - творчество, интеллектуальный труд. Профессия приносит пользу обществу и дает ее обладателю вознаграждение в виде денег.
Программисту могут быть интересны языки Go, Scala, Haskell. Hо если мало кому нужны специалисты, владеющие этими технологиями, стоит ли их изучать? Если на рынке очень много вакансий PHP-программистов, зачем нам Ruby?
PHP. Начало пути
Мой путь разработки начинался с PHP, поскольку освоить его очень просто, понять принцип его работы - легко. Особенно хорошо делать на нем простые сайты, включающие 20-30 страниц. Просто создаешь на сервере под управлением apache файлик index.php и вставляешь туда html-верстку страницы. В некоторые части верстки вставляешь исполняемый код на php, к примеру, <? echo $title ?>. И все работает! И понятно, откуда что берется и как работает.
Однако в корпоративных сайтах, где много различных разделов и необходим разного рода функционал, такая низкоуровневая простота выливается в огромное количество кода, который сложно понять, особенно новому члену команды. Данная сложность преодолевается php-фреймворками, которые позволяют упростить ряд задач. К примеру, нужно вам очистить данные, получаемые от пользователя. Вы не используете набор встроенных функций php, а вызываете всего лишь один метод фреймворка, который гарантирует, что от пользователя не придет ничего опасного, к примеру, sql-инъекции.
Из фреймворков познакомился с symfony, yii, codeigniter, попробовал в работе cms bitrix и drupal. Поскольку к тому моменту я уже был знаком с django, то объявление моделей в php-фреймворках мне не понравилось. Стала напрягать избыточность кода, необходимого для реализации задачи.
Python. Свет в конце тоннеля
Познакомившись с Python, а в частности с фреймворком Django, я увидел, что для реализации задачи можно использовать меньше кода. Соглашения по кодированию реально упрощают жизнь и позволяют быстро понять, где что находится. На php-фреймворках тоже это возможно, однако там кода больше, больше этого "символьного шума", осложняющего восприятие.
На python работу было найти непросто, поэтому два с половиной года я проработал php-программистом.
Ruby. Надежда на лучшее
Ruby мне очень напомнил Python. Привлекла его простота. Однако синтаксическое определение циклов отпугнуло. Понятие блоков показалось интуитивно неясным. Я стал осваивать этот язык и параллельно изучать Ruby on Rails, чтобы видеть, как может работать Ruby на практике.
Не могу утверждать, что Ruby on Rails для создания сайтов - это класс. Нужно время, чтобы это выяснить.
А пока буду делиться с вами своим опытом в освоении Ruby on Rails и постижении тонкостей Ruby.
Успехов вам в обучении!
Комментариев нет:
Отправить комментарий