Mikä on jalokivi? – RubyGems-oppaat
On 24 lokakuun, 2021 by adminPura mysteeri sen takaa, mitä RubyGemissä on.
Jalokiven rakenne
Jokaisella jalokivellä on nimi, versio ja alusta. Esimerkiksi therake gemillä on 0.8.7
versio (toukokuulta,2009). Raken alusta on ruby
, mikä tarkoittaa, että se toimii millä tahansa alustalla, jolla Rubyrun toimii.
Alustat perustuvat suorittimen arkkitehtuuriin, käyttöjärjestelmän tyyppiin ja joskus käyttöjärjestelmän versioon. Esimerkkejä ovat ”x86-mingw32” tai ”java”. Alusta osoittaa, että helmi toimii vain samalle alustalle rakennetun rubyn kanssa. RubyGems lataa automaattisesti oikean version alustallesi. Katso gem help platform
täydelliset tiedot.
Helmien sisällä on seuraavat komponentit:
- Koodi (mukaan lukien testit ja tukevat apuohjelmat)
- Dokumentaatio
- gemspec
Kaikki gemit noudattavat samaa vakiorakennetta koodin organisoinnissa:
% tree freewillfreewill/├── bin/│ └── freewill├── lib/│ └── freewill.rb├── test/│ └── test_freewill.rb├── README├── Rakefile└── freewill.gemspec
Tässä näet gemin tärkeimmät osat:
- Hakemisto
lib
sisältää gemin koodin - Hakemisto
test
taispec
sisältää testit riippuen siitä, mitä testikehystä kehittäjä käyttää - Helmellä on yleensä
Rakefile
, jota therake-ohjelma käyttää testien automatisoimiseen,koodin tuottamiseen ja muiden tehtävien suorittamiseen. - Helmi sisältää myös suoritettavan tiedoston
bin
-hakemistossa, joka ladataan käyttäjänPATH
:ään, kun helmi asennetaan. - Dokumentaatio sisältyy yleensä
README
ja rivissä koodin kanssa.Kun asennat gemin, dokumentaatio luodaan automaattisesti puolestasi.Useimmat gemit sisältävät RDoc-dokumentaation,mutta jotkut käyttävät sen sijaan YARD-dokumentaatiota. - Viimeinen osa on gemspec, joka sisältää tietoa gemistä.Gemin tiedostot, testitiedot, alustan, versionumeron ja paljon muuta ovat kaikki tässä yhdessä tekijän sähköpostin ja nimen kanssa.
Lisätietoa gemspec-tiedostosta
Oman gemin rakentaminen
The gemspec
The gemspec määrittelee tiedot gemistä, kuten sen nimen, version,kuvauksen, tekijät ja kotisivut.
Tässä on esimerkki gemspec-tiedostosta. Voit lukea lisää kohdasta how to make agem.
% cat freewill.gemspecGem::Specification.new do |s| s.name = 'freewill' s.version = '1.0.0' s.summary = "Freewill!" s.description = "I will choose Freewill!" s.authors = s.email = '[email protected]' s.homepage = 'http://example.com/freewill' s.files = end
Vastaa