यह ज्यादातर राय-आधारित है जो मुझे लगता है, लेकिन मैं अपने 2p में वैसे भी डालूंगा।
जिस तरह से मैं हमेशा किया है यह अपने आप पूछ है, क्या ज्ञान मेरे कोड की न्यूनतम राशि है की जरूरत है इसके क्या करना चाहिए क्या करना है करने के लिए?
यदि मेरा कोड केवल से कोड का उपयोग करता है Other team's library, तो मैं केवल Other team's libraryएक निर्भरता के रूप में शामिल करूंगा ।
यदि मेरा कोड भी कोड का उपयोग करता है Third-party library, तो मैं इसे भी शामिल करूंगा।
चलो कहते हैं कि मैं से निम्नलिखित वर्गों था My Library, Other Libraryहै, और Third-party Library(मैं उदाहरण के कोड के लिए जावा का उपयोग करेंगे)
package mylibrary;
import otherlibrary.Bar;
public class Foo {
public void doFoo() {
Bar bar = new Bar();
bar.doBar();
}
}
में Other Library
package otherlibrary;
import thirdparty.Baz;
public class Bar {
public void doBar() {
Baz baz = new Baz();
baz.doSomething();
}
}
में Third-party library
package thirdparty;
public class Baz {
public void doBaz() {
System.out.println("baz");
}
}
क्योंकि मेरा कोड Fooकेवल कोड पर निर्भर करता है otherlibrary, यही वह सब है, जिसमें मैं शामिल होता हूं, क्योंकि मुझे इसकी परवाह है। मुझे परवाह नहीं है कि otherlibrary.Bar#doBarयह कैसे करता है, मैं बस यह करना चाहता हूं।
यदि फिर भी, हमने कुछ के साथ ऐसा करने के otherlibrary.Bar#doBarलिए स्वीकार करने के लिए बदल दिया Baz, जैसे
public void doBar(Baz baz) {
baz.doBaz();
}
मुझे तब mylibrary.Foo#doFooकुछ बदलने की जरूरत होगी
public void doFoo() {
Bar bar = new Bar();
Baz baz = new Baz();
bar.doBar(baz);
}
क्योंकि मुझे अब इस बात में दिलचस्पी है कि Bar#doBarइसका काम कैसे हो रहा है, और मेरे कोड को यह जानने की आवश्यकताBaz है कि मैं क्या करना चाहता हूं, मुझे उन पुस्तकालयों के बारे में स्पष्ट होना चाहिए, जिनमें मैं शामिल हूं।
यदि मेरे कोड कोthirdparty लाइब्रेरी के भीतर सामान के बारे में पता होना चाहिए , तो मुझे इसे एक निर्भरता के रूप में शामिल करना होगा ।
यद्यपि शायद लेखक को Barउन विवरणों को अधिक से अधिक छिपाना चाहिए, इसलिए मुझे thirdpartyपुस्तकालय को शामिल करने की आवश्यकता नहीं है ...
thirdypartyसंस्करण 4 से शुरू करता हूं औरotherlibraryसंस्करण 3 की आवश्यकता है। आप लोग इसके बारे में क्या करते हैं?