2011-10-19 12 views
7

आप से कुछ भी करें जानते हो क्यों Scalaz से उदाहरण हमेशा इस आयात तकनीक का उपयोग करें:Scalaz पुस्तकालय आयात तकनीक तर्क

import scalaz._ 
import Scalaz._ 

बजाय:

import scalaz.Scalaz._ 

? मैं समझने की कोशिश कर रहा हूं कि वरीयता के पीछे तर्क क्या है।

धन्यवाद!

उत्तर

10

मेरा मानना ​​है कि क्योंकि import scalaz._; import Scalaz._scalaz.Scalaz वस्तु से scalaz पैकेज और से सभी सदस्यों का आयात करता है बस।

तुम सिर्फ scalaz.Scalaz वस्तु से import scalaz.Scalaz._, तो आप केवल आयात सदस्यों आयात करेगा।

+4

पहले मामले में, 'scalaz' पैकेज ऑब्जेक्ट से भी। –

3

आयात scalaz._ कोर पैकेज से सभी [प्रकार] कक्षाओं का आयात करता है।

आयात Scalaz._ आयात निहितार्थ जो इन सभी वर्गों को उपयोगी बनाता है। मानक संग्रह से एमए में रूपांतरण की तरह और विकल्प रैपर प्राप्त करना आदि।

तो आप किसी के बिना किसी का उपयोग कर सकते हैं।

मेरा मानना ​​है कि यह एक सचेत डिज़ाइन निर्णय है जो हमें this one जैसे किसी भी तरह के निहित मुद्दों से बचने की अनुमति देता है।

+0

धन्यवाद! विचार करने के लिए यह एक महान अतिरिक्त जानकारी है। –

+0

पूर्ण आयात के विशिष्ट तत्वों को निम्नलिखित mechansim के साथ अक्षम किया जा सकता है: आयात com.foo। {Unwanted => _, _}, और "अवांछित" लाया नहीं जाएगा। –

+0

मुझे वास्तव में स्कैला क्यों पसंद है क्योंकि इसमें बहुत कुछ है महान सुविधाओं की मुझे समय आने तक सीखने की ज़रूरत नहीं है। टिप के लिए @pyrony धन्यवाद! – CheatEx

संबंधित मुद्दे