Поэтичный стиль и блоки Поэтичным стилем (poetry mode) в Ruby называют стиль написания кода, при котором опускают скобки в тех местах, где анализатор может предположить их наличие, исходя из контекста. В основном это касается аргументов при вызове метода:
puts("Hello") # классический стиль puts "Hello" # poetry mode
Классическим примером является работа с файлами с помощью системного класса File. Метод open этого класса берет на себя заботу о создании дескриптора открытого файла и — главное — корректном закрытии файла в конце, пользователю же остается только самое важное — считывание и обработка данных, находящихся в файле.
:001 > first_line = File.open("some.txt") do |file| :002 > file.readline :003?> end
Классическим примером является работа с файлами с помощью системного класса File. Метод open этого класса берет на себя заботу о создании дескриптора открытого файла и — главное — корректном закрытии файла в конце, пользователю же остается только самое важное — считывание и обработка данных, находящихся в файле.
:001 > first_line = File.open("some.txt") do |file| :002 > file.readline :003?> end
Поэтичный стиль и блоки Поэтичным стилем (poetry mode) в Ruby называют стиль написания кода, при котором опускают скобки в тех местах, где анализатор может предположить их наличие, исходя из контекста. В основном это касается аргументов при вызове метода:
puts("Hello") # классический стиль puts "Hello" # poetry mode
В соответствии с код-стайлом, скобки у своих методов нужны. И точка :) Мнений может быть много, да. Исключения — ключевые слова руби и всякие популярные методы (puts как раз из таких, так что против приведенного примера не возражаю).
В соответствии с код-стайлом, скобки у своих методов нужны. И точка :) Мнений может быть много, да. Исключения — ключевые слова руби и всякие популярные методы (puts как раз из таких, так что против приведенного примера не возражаю).
А потом сидеть и вспоминать популярный или нет метод?
В домашнем задании 1 курса 5.5 где нужно найти сгенерированное число от 0 до 16, я так понимаю ошибка в решении, где number = rand(16) так как в таком случае будет выпадать число от 0 до 15. Или я ошибаюсь?
В домашнем задании 1 курса 5.5 где нужно найти сгенерированное число от 0 до 16, я так понимаю ошибка в решении, где number = rand(16) так как в таком случае будет выпадать число от 0 до 15. Или я ошибаюсь?