Type de graphique ruby-appendix-III (bundler)

!Mac OS X-10.15.7!ruby-2.7.1p83

La première étape du CoC

Il y a un slogan appelé Convention over Configuration. La configuration signifie le paramétrage, mais c'est bien de pouvoir définir autant d'opérations logicielles que vous le souhaitez. Cependant, dans la plupart des cas, les valeurs par défaut sont utilisées et vous n'avez pas besoin de savoir où et ce qui s'y trouve, afin que tout le monde ne se perde pas. Dans ce cas, "vous pouvez conserver la valeur par défaut" est une convention (traduite par une convention, mais j'étais plus familier avec le centre de convention, c'est-à-dire une manière dont quelque chose est généralement fait). ..

Ruby on Rails développé par David Heinemeier Hansson (DHH) en est une systématisation approfondie. En guise de touche CoC, j'introduirai les règles du bin dans le monde Linux et la sensation d'échafaudage (échafaudage) qui commence souvent par Rails.

Notes d'opération

Utilisons-le quand cela fonctionne. Définissez shebang et changez-le en exécutable.

C'est très pratique si vous concevez un endroit pour le mettre.

  1. . # very local
  2. ./bin # project
  3. ~/bin # user
  4. gem # all users

Il y a l'idée d'une reliure serrée. Ceci a pour but de conserver les fichiers requis aussi près que possible de l'emplacement requis. Cela augmentera la portabilité.

Si vous l'organisez par type tel que exec ou le mettez dans ~ / bin etc., il explosera bientôt. local peut être exécuté par le projet requis pour local. De plus, vous pourrez fixer le choco choco sans hésitation. Je ne l'utilise qu'ici.

paramètre de chemin

Plus il y a de fichiers, plus il faudra de temps au système pour les trouver. J'ai donc défini le chemin, mais c'est une sorte de configuration que je ne veux pas faire. Mais cela ne peut pas être aidé, alors rappelez-vous.

  1. emacs ~/.bashrc
  2. Ajoutez export PATH = ".: ~ / Bin: $ PATH"
  3. source ~/.bashrc

bundler

En outre, il serait pratique que des éléments pratiques et des applications courantes utilisées dans diverses situations puissent être utilisés à partir de divers endroits. Dans un tel cas, utilisons une gemme.

Au début, quelques questions vous seront posées, mais veuillez répondre avec COC: "oui", MIT: "oui", TEST: "minitest". Cela générera automatiquement les fichiers nécessaires à la création du gem.

Le reste est une petite correction.

bundle gère la sauvegarde avec git par défaut. Vous devez donc le définir, mais pour l'instant, supprimez-le.

Ça ne marche pas.

Je me demande si cela fonctionne avec.

Un peu plus

Corrigez l'endroit qui vous a fâché. Laissez-nous commenter maintenant.

De plus, lib / hogehoge.rb

cat lib/hello_rudy.rb 
require "hello_rudy/version"

module HelloRudy
  class Error < StandardError; end
  # Your code goes here...
  puts "Hello "+ARGV[0]
end

Ensuite, si vous pouvez confirmer que cela fonctionne,

> rake install:local
hello_rudy 0.1.0 built to pkg/hello_rudy-0.1.0.gem.
hello_rudy (0.1.0) installed.

ensuite

> hello_rudy Rudy
Hello Rudy

Cela fonctionne correctement, non?

Cela n'inclut pas la configuration. Le bijou fait un bon travail pour savoir où le mettre et comment le lire. Si vous êtes intéressé, veuillez vérifier avec gem env.

scaffolding

Prenez un moment pour observer comment la création automatique se fait avec le bundle de commandes.

> tree 
.
├── CODE_OF_CONDUCT.md
├── Gemfile
├── Gemfile.lock
├── LICENSE.txt
├── README.md
├── Rakefile
├── bin
│   ├── console
│   └── setup
├── exe
│   └── hello_rudy
├── hello_rudy.gemspec
├── lib
│   ├── hello_rudy
│   │   └── version.rb
│   └── hello_rudy.rb
├── pkg
│   └── hello_rudy-0.1.0.gem
└── spec
    ├── hello_rudy_spec.rb
    └── spec_helper.rb

6 directories, 15 files

Il est.

――Déterminez où et quoi mettre.

C'est le début du CoC. Notez que le nom est également généré automatiquement. Après cela, corrigez selon les instructions. C'est aussi TDD.


Recommended Posts

Type de graphique ruby-appendix-III (bundler)
Type de graphique Rubis
Type de graphique ruby-I (met)
Type de graphique ruby-appendix-IV (rake)
Type de graphique ruby-appendix-V (rubular)
Type de graphique ruby-appendix-VI (thor, rubocop)
Type de graphique ruby-appendix-I (bash + emacs)