Всякий раз, когда я устанавливаю драгоценные камни, я вижу ri и rdoc. Я знаю, что это документация, но в чем разница между ними и как их использовать?
В чем разница между ri и rdoc
Ответ 1
RDoc [..] - встроенный генератор документации для языка программирования Ruby. [..] RDoc включен как часть дистрибутива ядра Ruby.
RDoc также предоставляет механизм для создания файлов данных Ruby ri. ri (более или менее) Ruby версия man-страниц, обслуживающая информацию API из командной строки.
Ответ 2
Чтобы получить доступ к локальному RDoc для ваших драгоценных камней, введите gem server
и укажите ваш браузер на http://localhost:8808
.
Если RDocs для ваших драгоценных камней не установлены, gem rdoc --all
установит документацию для всех ваших драгоценных камней.
Может показаться, что местная документация не требуется. Многие разработчики целенаправленно пропускают установку в пользу онлайн-документации. Тем не менее, для тех из нас, кто использует устаревшие инструменты, такие как Rails 2, он может легко и быстро найти правильную документацию.
Ответ 3
-
RDoc
автоматически генерирует документацию из комментариев и структуру вашего кода. https://github.com/rdoc/rdoc Так что подумайте Doxygen. Используйте его для создания автоматической документации для написанного кода. -
ri
- это файлы справки, например, если у вас нет интернета. http://www.caliban.org/ruby/rubyguide.shtml#ri Подумайтеperldoc
. Используйте его, когда у вас есть вопрос о классе, напримерri Enumerator
должен вызывать
Перечислитель < Объект
= Включает: Перечисляет (из ядра ruby)
(из рубинового ядра) -------------------------------------------------- ---------------------------- Класс, который допускает как внутреннюю, так и внешнюю итерацию.
Перечислитель может быть создан следующими способами. * Ядро # to_enum * Ядро # enum_for * Enumerator.new
Большинство методов имеют две формы: блочную форму, в которой содержимое оценивается для каждого элемента в перечислении и неблокированная форма, которая возвращает новый Enumerator, завершающий итерацию.
enumerator =% w (один два три).each puts enumerator.class # = > Enumerator enumerator.each_with_object ( "foo" ) do | item, obj | puts "# {obj}: # {item}" end # foo: one # foo: two # foo: three enum_with_obj = enumerator.each_with_object ( "foo" ) puts enum_with_obj.class # = > Enumerator enum_with_obj.each do | item, obj | puts "# {obj: # {item}" end # foo: one # foo: two # foo: three
Это позволяет вам объединять перечислители вместе.