58 votes

Doit-on utiliser des tirets ou des traits de soulignement dans le nom des pierres avec une plus d'un mot?

Je suis confus au sujet de ce joyau de la convention de nommage est lorsque la gemme nom a plus d'un mot.

  • la pensée-sphinx est le nom de la gemme, mais la base *.rb fichier pour cette gemme est lib/thinking_sphinx.rb (underscores)

  • actes-comme-tagable est le nom de la gemme, et à la base *.rb fichier est appelé lib/actes-comme-tagable.rb (tirets)

  • factory_girl utilise un trait de soulignement à la fois la gemme nom et au nom de la base *.rb fichier

Importe-t-il si l'on utilise des traits de soulignement ou des traits d'union? Est tout l'émergence d'un consensus ici?

51voto

Andrew Grimm Points 22996

Eric Hodel a un post de blog à ce sujet: Un Projet de Nommage Recommandation

Rails solidifié la convention de cartographie CamelCase les noms de classe à souligne les noms de fichiers (classe IMAPProcesor est défini dans imap_processor.rb). À l'aide souligné gem noms, il est facile pour les gens à comprendre ce fichier à exiger (même comme le nom du projet) ou de la classe nom de regarder dans le ri.

Si j'ai un plugin bijou ou une extension Je vais virer de bord sur le sous-nom du projet avec un tableau de bord. Si je voulais ajouter un nouveau gestionnaire pour imap_to_rss pour Chase bank e-mail, le bijou serait nommé imap_to_rss-chase.

29voto

Intentss Points 4591

Suivant les conseils ici, voici un tableau de la façon dont les choses allaient se briser.

|     Gem name        |   Require statement          | Main class or module  |
|:--------------------|:-----------------------------|:----------------------|
|fancy_require        |require 'fancy_require'       | FancyRequire          |
|ruby_parser          |require 'ruby_parser'         | RubyParser            |
|net-http-persistent  |require 'net/http/persistent' | Net::HTTP::Persistent |
|rdoc-data            |require 'rdoc/data'           | RDoc::Data            |
|autotest-growl       |require 'autotest/growl'      | Autotest::Growl       |
|net-http-digest_auth |require 'net/http/digest_auth'| Net::HTTP::DigestAuth |

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X