Ruby

2010-10-19 30 views
7

Python benzeri "as" anahtar sözcüğü (ad için) looking at this question'un üzerindeydim. Başıma sıçrayan ilk düşünce, rubyenin isim-alanı kirliliğinden kaçınmak için Python'un ithalatı gibi bir tür “anahtar kelime” gibi bir anahtar kelimesi olması gerektiğiydi. Ben biraz googled ama Ruby ile ad alanı sorunları önlemek için wrap your code in modules tavsiye edilir gibi görünüyor. Bu sorunlu görünüyor çünkü iki modülde çelişen isimler var.Ruby

Peki, ruby'nin "gibi" tür anahtar sözcükleri gerektirir?

+0

Farklı modül adları seçin? – Telemachus

+2

@Telemachus: Bazı 3. bölüm kütüphaneleri kullanırken bu sizin tercihiniz değildir. –

+0

@Paulo Yup, anlaşıldı. Yine de soruyu tersine çevireyim. Bu yanan, teorik olmayan bir problem mi? Aynı modül ve sınıf isimlerini kullanan ve birbirlerinin her birini birbirine yatıran ortak, önemli kütüphaneler var mı? Durum böyle olabilir ama ben buna katılmadım. – Telemachus

cevap

2

Her zaman yaptığım şey, modüllerime iş için başlangıç ​​veya şirketimin baş harfleriyle başlamamdır.

+0

@Paulo'nun işaret ettiği gibi, bu sadece kaynak kodunuz size aitse çalışır. – Mark

+0

Mükemmel nokta. Benim amacım, kendi ad alanlarınızla çakışmaları önleyebilmeniz ve kodunuzu kullandıklarında başkalarının kendi öneklerinizi kütüphanelerinize ve değerli taşlarınıza uygulayarak çatışmadan kaçınabilmenizdir. Bu, sizi her çeşit kederden kurtaracak ve herkes bunu yaparsa, çatışmaların potansiyelini en aza indirecek “en iyi uygulamalar” türünden bir şeydir. –

2

Yakut 2.0'da mix (search for mix) olacaktır. Ama şimdi, böyle bir şey yok ... Sadece tam yolunu kullan.

+0

çok fazla ayrıntı yok ama yine de ilginç. Bağlantı için teşekkürler. Yine de "sabit yolu kullan" ile ne demek istediğini bildiğime emin değilim. – Mark

+0

'Foo :: Bar’ın tam yolu :-) – Reactormonk