0Pricing
Ruby Academy · Pelajaran

Struktur Gem

File dan gemspec.

Struktur Gem adalah pelajaran Ruby Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Ruby Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Ruby Academy mencakup 4 pelajaran total.

Apa Itu Paket Ruby?

Sebuah paket adalah pustaka atau aplikasi Ruby yang dikemas sehingga dapat dipasang, diberi versi, dan dibagikan melalui RubyGems. Hampir semua alat Ruby yang Anda gunakan adalah paket.

  • Paket menggabungkan kode, metadata, dan dependensi.
  • Metadata berada dalam berkas spesifikasi paket.
  • Alat seperti bundler dan gem mengelola paket.

Membuat Kerangka

Awalan tercepat adalah bundle gem mygem. Perintah ini membuat kerangka tata letak direktori standar, berkas spesifikasi paket, direktori pengujian, README, dan lisensi. Setelah itu, Anda mengisi kodenya.

Tata Letak Standar

Paket umum bernama mygem terlihat seperti ini:

  • lib/mygem.rb adalah berkas masuk.
  • lib/mygem/ berisi berkas sumber tambahan.
  • lib/mygem/version.rb berisi konstanta versi.
  • mygem.gemspec berisi metadata.
  • test/ atau spec/ berisi pengujian.
  • README.md dan berkas lisensi.

Berkas Masuk

lib/mygem.rb dimuat saat seseorang menjalankan require 'mygem'. Biasanya berkas ini memuat berkas versi dan bagian pustaka lainnya, lalu mendefinisikan modul tingkat teratas.

module Mygem
  def self.greet(name)
    "Hello, " + name
  end
end

puts Mygem.greet("world")

Berkas Versi

Menyimpan versi dalam berkas tersendiri memungkinkan berkas spesifikasi paket dan kode membacanya. Konvensinya adalah menggunakan konstanta VERSION di dalam modul paket.

module Mygem
  VERSION = "0.1.0"
end

puts "Current version: " + Mygem::VERSION

Apa Itu Spesifikasi Paket?

Spesifikasi paket adalah berkas Ruby yang menjelaskan paket: nama, versi, penulis, ringkasan, berkas, dan dependensinya. RubyGems membacanya untuk membuat dan menerbitkan paket.

Isinya adalah Ruby biasa, jadi Anda dapat menghitung nilai, tetapi jagalah agar tetap sederhana dan deklaratif.

Spesifikasi Paket Minimal

Bidang intinya adalah nama, versi, penulis, ringkasan, dan berkas. Berikut bentuknya, ditulis sebagai Ruby biasa yang dapat Anda tempatkan di mygem.gemspec.

require "ostruct"

spec = OpenStruct.new
spec.name = "mygem"
spec.version = "0.1.0"
spec.authors = ["Your Name"]
spec.summary = "A tiny example gem"

puts spec.name + " " + spec.version

Mencantumkan Berkas

Berkas spesifikasi paket harus menyatakan berkas mana saja yang disertakan dalam paket. Banyak berkas spesifikasi paket meminta git memberikan berkas yang dilacak agar tidak ada yang terlupakan:

spec.files = Dir['lib/**/*.rb'] + ['README.md']

Hanya berkas yang tercantum yang dikemas, jadi berkas yang terlupakan akan menyebabkan pemasangan rusak.

Menyatakan Dependensi

Ada dua jenis dependensi yang dimasukkan ke dalam berkas spesifikasi paket:

  • add_dependency untuk kebutuhan waktu berjalan yang harus dipasang oleh pengguna.
  • add_development_dependency untuk alat yang hanya digunakan selama pengembangan, seperti kerangka kerja pengujian.

Gunakan batasan versi seperti '~> 1.2' agar tetap kompatibel.

Versi Ruby yang Diperlukan

Atur spec.required_ruby_version agar pengguna dengan Ruby yang terlalu lama mendapatkan kesalahan yang jelas, bukan kegagalan yang membingungkan. Isi juga homepage, license, dan metadata agar paket Anda terlihat siap digunakan.

required = ">= 3.0.0"
current = RUBY_VERSION
puts "Requires Ruby " + required
puts "Running Ruby " + current

Membangun Paket

Setelah berkas spesifikasi paket siap, gem build mygem.gemspec menghasilkan berkas .gem. Anda dapat memasangnya secara lokal dengan gem install ./mygem-0.1.0.gem untuk mengujinya sebelum menerbitkan.

Pemeriksaan Singkat

Uji pemahaman Anda tentang struktur paket.

Ringkasan: Struktur Paket

Anda telah mempelajari cara mengatur paket:

  • bundle gem membuat kerangka tata letak.
  • lib/mygem.rb adalah titik masuk.
  • Versi disimpan dalam berkas tersendiri.
  • Berkas spesifikasi paket menyimpan metadata, berkas, dan dependensi.
  • gem build mengemasnya.

Selanjutnya, kita mengatur kode sebenarnya di dalam paket.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Struktur Gem” gratis?

Ya — teks lengkap “Struktur Gem” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Ruby Academy, upgrade ke CoddyKit PRO. Kursus Ruby Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Struktur Gem”?

File dan gemspec. Kamu berlatih Ruby Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Ruby Academy?

Tidak diperlukan pengalaman sebelumnya. Ruby Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “Struktur Gem” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Ruby Academy ini?

Ya. Setiap pelajaran Ruby Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Struktur Gem
  2. Menulis Kode
  3. Pengujian dan Pemberian Versi
  4. Mempublikasikan ke RubyGems
← Kembali ke Ruby Academy