0Pricing
Ruby Academy · Ders

Kodu Yazma

Bir gem düzenleme

Kodu Yazma, CoddyKit'te ücretsiz bir Ruby Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Ruby Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Ruby Academy kursu toplamda 4 dersten oluşur.

Gem Paketi Kodunu Düzenleme

İyi gem paketi kodunun okunması ve yüklenmesi kolaydır; ayrıca diğer kütüphanelerle hiçbir zaman çakışmaması için bir ad alanı içinde düzenlenmiştir. Bunun temel aracı, her şeyi saran en üst düzey bir modüldür.

  • Her paket için bir ad alanı modülü.
  • Ad alanını yansıtan, her sınıf için bir dosya.
  • Küçük bir genel arayüz.

Ad Alanı Modülü

Tüm sınıfları gem paketinizin adını taşıyan bir modülün içine alın. Böylece sizin Client sınıfınız başka birinin Client sınıfıyla çakışmaz.

module Greeter
  class Hello
    def message
      "Hi there"
    end
  end
end

puts Greeter::Hello.new.message

Dosya Adlandırma Kuralı

Ruby araçları, dosya yollarının sabit adlarıyla eşleşmesini bekler:

  • Greeter, lib/greeter.rb dosyasında bulunur.
  • Greeter::Hello, lib/greeter/hello.rb dosyasında bulunur.

Bu kural, otomatik yükleyicilerin dosyaları kendiliğinden bulmasını sağlar.

İç Dosyaları Yükleme

Giriş dosyası, her şeyi require_relative ile birbirine bağlar. Her sınıf dosyası bir kez yüklenir; böylece kütüphanenin tamamı tek bir require 'greeter' komutuyla yüklenir.

Açık ve Sade Bir Genel Arayüz

Kullanıcıların gerçekten çağırdığı küçük bir yöntem kümesini dışa açın. Yaygın bir kalıp, dahili sınıflara yönlendiren modül düzeyindeki kolaylık yöntemleridir.

module Greeter
  def self.say(name)
    "Hello, " + name + "!"
  end
end

puts Greeter.say("Ada")

Dahili Kısımları Gizleme

Yardımcı yöntemleri private olarak işaretleyin; böylece bu yöntemler genel sözleşmenizin parçası olmaz. Genel olan her şey kullanıcılara verilmiş bir sözdür; bu yüzeyi bilinçli ve küçük tutun.

class Calculator
  def total(a, b)
    add(a, b)
  end

  private

  def add(x, y)
    x + y
  end
end

puts Calculator.new.total(2, 3)

Yapılandırma Kalıbı

Birçok gem paketi, kullanıcıların seçenekleri bir kez ayarlayabilmesi için bir yapılandırma bloğu sunar. Basit bir sürüm, ayarları bir yapılandırma nesnesinde saklar.

module App
  class Config
    attr_accessor :api_key
  end

  def self.config
    @config ||= Config.new
  end

  def self.configure
    yield(config)
  end
end

App.configure { |c| c.api_key = "secret" }
puts App.config.api_key

Özel Hatalar

Kullanıcıların tam olarak sizin hatalarınızı yakalayabilmesi için gem paketine özgü hata sınıflarını ad alanınızın altında tanımlayın. StandardError sınıfından kalıtım alın.

module Payment
  class Error < StandardError; end
  class DeclinedError < Error; end
end

begin
  raise Payment::DeclinedError, "card declined"
rescue Payment::Error => e
  puts "Handled: " + e.message
end

Maymun Yaması Kullanmayın

String gibi temel sınıfları genel olarak değiştirmekten kaçının. Bu, diğer kodlarda beklenmedik sonuçlara yol açar. Genişletmeniz gerekiyorsa değişikliğin kapsamını sınırlamak için iyileştirmeleri kullanın veya kendi sınıflarınıza yardımcı yöntemler ekleyin.

Bağımlılıkları Azaltın

Eklediğiniz her çalışma zamanı bağımlılığı, tüm kullanıcılarınız için bir bağımlılık hâline gelir. Uygun olduğunda standart kütüphaneyi tercih edin ve yalnızca sağladığı faydaya değecek bir gem paketi ekleyin.

Daha az bağımlılık, daha az sürüm çakışması ve daha hızlı kurulum anlamına gelir.

Genel Arayüzü Belgeleyin

Her genel yöntemin bağımsız değişkenlerini ve dönüş değerini açıklayan yorumlar ekleyin. YARD gibi araçlar bunları göz atılabilir belgelere dönüştürür; örnekler içeren iyi bir README ise insanların gem paketinizi kullanmaya başlayıp başlamayacağını çoğu zaman belirler.

Kısa Sınama

Gem paketi kodunu düzenlemeyle ilgili anlayışınızı sınayın.

Özet: Kodu Yazma

Gem paketi iç kısımlarını nasıl düzenleyeceğinizi öğrendiniz:

  • Her şeyi bir ad alanı modülünün içine alın.
  • Dosya yollarını sabit adlarıyla eşleştirin.
  • Genel arayüzü küçük tutun ve yardımcıları private olarak işaretleyin.
  • Özel hata sınıfları tanımlayın ve genel maymun yamalarından kaçının.
  • Bağımlılıkları azaltın ve arayüzü belgeleyin.

Sırada sınamalar ve sürümleme var.

Sıkça Sorulan Sorular

“Kodu Yazma” dersi ücretsiz mi?

Evet — “Kodu Yazma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Ruby Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Ruby Academy kursu toplamda 4 dersten oluşur.

“Kodu Yazma” dersinde ne öğreneceğim?

Bir gem düzenleme Ruby Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Ruby Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Ruby Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“Kodu Yazma” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Ruby Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Ruby Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Gem Yapısı
  2. Kodu Yazma
  3. Test ve Sürümleme
  4. RubyGems'e Yayımlama
← Ruby Academy Sayfasına Dön