gevşek bağlantı ve sıkı kavrama arasındaki farkı odaklı paradigma nesne nedir?
Herhangi bir gevşek bağlantı ve sıkı kavrama arasında tam olarak ne fark tarif Nesne yönelimli paradigma?
CEVAP
Sıkı kavrama sınıfları bir grup birbirine sıkı sıkıya bağlıdır.
Bu senaryo, bir sınıf çok fazla sorumluluk alır, ya da bir endişe kendi sınıfı yerine, birçok sınıf yayılmış olduğunda ortaya çıkar.
Gevşek bağlantı tek-sorumluluk ve endişeleri ayrılığı teşvik eden bir tasarım yoluyla elde edilir.
Gevşek çiftli bir sınıf ve (somut) diğer sınıflardan bağımsız olarak tüketilen test edilebilir.
Arayüzleri ayırımı güçlü bir araçtır. Diğer sınıfları beton sınıfları yerine arabirimler aracılığıyla iletişim kurabilir ve herhangi bir sınıf sadece arabirimi uygulayarak bu iletişim diğer ucunda olabilir.
Sıkı kavrama örnek:
class CustomerRepository
{
private readonly Database database;
public CustomerRepository(Database database)
{
this.database = database;
}
public void Add(string CustomerName)
{
database.AddRow("Customer", CustomerName);
}
}
class Database
{
public void AddRow(string Table, string Value)
{
}
}
Gevşek bağlantı örneği:
class CustomerRepository
{
private readonly IDatabase database;
public CustomerRepository(IDatabase database)
{
this.database = database;
}
public void Add(string CustomerName)
{
database.AddRow("Customer", CustomerName);
}
}
interface IDatabase
{
void AddRow(string Table, string Value);
}
class Database : IDatabase
{
public void AddRow(string Table, string Value)
{
}
}
Başka bir örnek, here.
Neden ve'boş ve tanımsız arasında...
'klasik arasındaki farkı' ve...
Unut hg ve hg arasındaki farkı kaldırm...
Sembolik bağlantı ve sabit bir bağlant...
İstemci tarafı arasındaki farkı ve sun...