এটি বেশিরভাগ মতামত-ভিত্তিক আমার মনে হয় তবে আমি আমার 2 পি তে রাখব।
আমি সবসময় কাজ করেছি নিজেকে জিজ্ঞাসা করে হয়, কি জ্ঞান আমার কোড ন্যূনতম পরিমাণ চাহিদা তার করতে অনুমিত কি আছে?
যদি আমার কোডটি কেবলমাত্র কোড ব্যবহার করে 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একটি গ্রহণযোগ্যতা পরিবর্তন করেছি Bazlike
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 প্রয়োজন you আপনি ভাবেন লোকেরা এটি সম্পর্কে কী করবেন?