Основы Ruby

Home / Основы Ruby

В этом посте мы обсудим такие вещи как:

  • Краткая история Ruby
  • “Учить еще один язык программирования? Зачем?”
  • Основные принципы и конвенции Ruby

История Ruby

  1. Руби был изобретен Юкихиро “Matz” Мацумото
  2. Первая версия (1.0) была выпущена в 1996 году в Японии
  3. Язык был популяризован фреймворком RoR в 2005 году

Ruby динамичен.

Ruby также объектно ориентирован, и почти все в Ruby — это объект.

Еще один язык программирования?

Ruby — элегантный, выразительный и декларативный. Это три слова, которые я бы использовал, чтобы описать его как язык.

На него повлияли такие языки как Perl, Smalltalk, Eiffel и Lisp.

И, как однажды сказал сам Matz, “Ruby был разработан, чтобы сделать программистов счастливыми”. (“Ruby was designed to make programmers happy”.)

Основы Ruby

В Ruby рекомендуется ставить два пробела для каждого вложенного уровня.
Это не требуется, как в Python, но это рекомендуется.

Вы используете # для комментариев. Комментарии должны использоваться в умеренных количествах, потому что сам язык довольно выразителен.

puts — стандартный метод в Руби для вывода строк в консоль (сокращение от “put string”)

p — выводит внутреннее представление объекта.

Скажем, у вас есть файл test.rb. Чтобы запустить файл из командной строки, нужно ввести в терминале “ruby test.rb”.

Конвенции

Переменные пишутся в нижнем регистре или как snake_case если имеют несколько слов.

Константы пишутся капсом ALL_CAPS или с первой заглавной FirstCap.

Классы и модули также принято записывать с первой заглавной: CamelCase.

Отбросьте двоеточия. Не ставьте двоеточия в конце строки.
Хотя иногда двоеточия можно ставить между двумя утверждениями, это не рекомендуется, лучше разбивать их на разные строки.


a = 3 # двоеточие не нужно
a = 2; b = 3 # иногда используется

IRB — интерактивный Ruby. IRB это консольный интерпретатор Ruby, который идет сразу с установкой языка и дает вам поэксперементировать.
Вызывается командой irb в консоли.

Leave a Reply

Your email address will not be published. Required fields are marked *