SORU
1 HAZİRAN 2011, ÇARŞAMBA


İç içe geçmiş sınıflar ve sınıflar modüller iç içe ne zaman kullanılır?

Alt sınıflar ve modüller ne zaman kullanılacağını çok iyi biliyorum, ama son zamanlarda bu gibi iç içe geçmiş sınıflar görüyorum:

class Foo
  class Bar
    # do some useful things
  end
end

Yanı sıra sınıflar şu şekilde: modüller iç içe

module Baz
  class Quux
    # more code
  end
end

Ya belgeleri ve makaleleri seyrek ya da konu ile ilgili arama terimleri okşamak için yeterince eğitimli değilim, ama bu konu hakkında fazla bilgi bulmak için görünmüyor olabilir.

Birileri bu teknikleri kullanılacaktır neden mesaj için örnekler veya linkler olabilir?

CEVAP
1 HAZİRAN 2011, ÇARŞAMBA


Başvuruyorsunuz ne inner class gibi bir şey yok. OOP içinde bir iç sınıf üst düzey bir sınıfa bağlı olmadan başlatılamaz olan bir sınıf tanımlama amacına hizmet etmektedir. Örneğin:

class Car
  class Wheel
  end
end

farklıdır

class Car
end

class Wheel
end

ilk yapan Arabanın açık çünkü::Tekerlek sınıf sadece genel bir tekerlek karşıt olarak araba tekerleği temsil eder. Sık sık kullanarak iç sınıflar bir madde tercihi, ama işe yarar bazen öyle daha güçlü zorlar arasında bir sözleşme iki sınıf bunu yaparken taşır hakkında daha fazla bilgi onları ve onların kullanır.

İkinci gözlem, sınıfları modül içinde yuvalanmış genellikle sınıfları ad kullanılır. Örneğin:

module ActiveRecord
  class Base
  end
end

farklıdır

module ActionMailer
  class Base
  end
end

Bu dersleri modülleri ile iç içe sadece kullanım olmasa da, genellikle en çok.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dellbear816

    Dellbear816

    4 Mart 2008
  • Garrett Müller

    Garrett Mül

    26 HAZİRAN 2009
  • kimaliz

    kimaliz

    18 Temmuz 2006