ruby - Cuál es la diferencia entre ri y rdoc
(3)
Cada vez que instalo gemas, veo que ri y rdoc siguen. Sé que esto es documentación, pero ¿cuál es la diferencia entre los dos y cómo usarlos?
Para acceder al RDoc local para sus gemas, escriba gem server
y dirija su navegador a http://localhost:8808
.
Si los RDocs para sus gemas no están instalados, gem rdoc --all
instalará la documentación para todas sus gemas.
Puede parecer que la documentación local no es necesaria. Muchos desarrolladores omiten instalarlo a favor de la documentación en línea. Sin embargo, para aquellos de nosotros que usamos herramientas heredadas como Rails 2, puede hacer que encontrar la documentación correcta sea rápido y fácil.
RDoc [..] es el generador de documentación integrada para el lenguaje de programación Ruby. [..] RDoc se incluye como parte de la distribución central de Ruby.
RDoc también proporciona el motor para crear archivos de datos Ruby ri. ri es (más o menos) la versión de las páginas man de Ruby, que sirve información de la API desde la línea de comandos.
-
RDoc
genera automáticamente documentación a partir de los comentarios y la estructura de su código. https://github.com/rdoc/rdoc Entonces piense en Doxygen. Úselo para generar documentación automática para el código que ha escrito. -
ri
es archivos de ayuda sin conexión, por ejemplo, si no tienes internet. http://www.caliban.org/ruby/rubyguide.shtml#ri Thinkperldoc
. Úselo cuando tenga una pregunta sobre una clase, comori Enumerator
debería aparecer
Enumerator <Objeto
= Incluye: enumerable (del núcleo de ruby)
(del núcleo Ruby) --------------------------------------------- --------------------------------- Una clase que permite la iteración interna y externa.
Un Enumerator se puede crear con los siguientes métodos. * Kernel # to_enum * Kernel # enum_for * Enumerator.new
La mayoría de los métodos tienen dos formas: una forma de bloque donde los contenidos se evalúan para cada elemento en la enumeración, y una forma no-bloque que devuelve un nuevo Enumerador que envuelve la iteración.
enumerador =% w (uno dos tres) .each pone 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 | pone "# {obj: # {item}" end # foo: one # foo: two # foo: three
Esto le permite encadenar Enumeradores juntos ........