Перейти к основному содержимому

Чек-лист самопроверки

Разработчику Архитектору

Чек-лист самопроверки

  1. Что такое Ruby и кто его создал?
  2. Какие цели преследовал создатель при разработке языка?
  3. Почему говорят, что «всё в Ruby — объект»?
  4. Являются ли числа, строки, классы и nil объектами?
  5. Как запустить интерпретатор Ruby (IRB)?
  6. Как выполнить Ruby-скрипт из файла?
  7. Какие есть способы комментирования кода?
  8. Как объявляются переменные и какие виды переменных существуют (локальные, экземпляра, класса, глобальные)?
  9. Что означают префиксы @, @@, $?
  10. Как работают константы и могут ли они изменяться?
  11. Какие примитивные типы данных есть в Ruby?
  12. В чём разница между nil, false и другими «ложными» значениями?
  13. Как работает оператор ==, eql?, equal?, ===?
  14. Как работают условия (if, unless, тернарный оператор)?
  15. Может ли if использоваться как выражение (возвращать значение)?
  16. Какие циклы поддерживаются (while, until, for, loop)?
  17. Что такое итераторы (each, map, select, times) и почему они предпочтительнее циклов?
  18. Что такое блоки (do...end, {...}) и как они передаются методу?
  19. Как вызвать блок внутри метода (yield)?
  20. Что такое Proc и Lambda — и чем они отличаются?
  21. Как работают аргументы метода (позиционные, именованные, по умолчанию, splat *)?
  22. Как объявляется метод?
  23. Обязательно ли использовать return в методе?
  24. Что такое self и как он используется?
  25. Как работают области видимости методов (public, private, protected)?
  26. Что такое класс и как он определяется?
  27. Как создаётся экземпляр класса?
  28. Что такое конструктор (initialize)?
  29. Как работает наследование в Ruby?
  30. Поддерживает ли Ruby множественное наследование? Если нет, то как достигается повторное использование кода?
  31. Что такое модули и зачем они нужны?
  32. Как включить модуль в класс (include, extend, prepend)?
  33. Что такое миксины и как они реализуются?
  34. Как работают методы класса и методы экземпляра?
  35. Что такое singleton-методы (методы конкретного объекта)?
  36. Что такое method_missing и где он применяется?
  37. Как работает метапрограммирование (define_method, class_eval, instance_eval)?
  38. Как обрабатываются исключения (begin/rescue/ensure)?
  39. Как создавать собственные классы исключений?
  40. Что такое символы (:symbol) и чем они отличаются от строк?
  41. Как работают хэши и массивы?
  42. Как сериализовать данные (to_json, Marshal)?
  43. Как управлять зависимостями проекта (Gemfile, Bundler)?
  44. Что такое гемы и как их устанавливать?
  45. Как писать unit-тесты (Minitest, RSpec)?
  46. Что такое Rake и как он используется?
  47. Как работает работа с файлами (File.open, Dir.glob)?
  48. Как отправлять HTTP-запросы (Net::HTTP, Faraday)?
  49. Как организована структура проекта на Ruby on Rails (MVC)?
  50. Какие инструменты используются для форматирования и анализа кода (RuboCop, StandardRB)?

Освоение главы0%