İçeriğe geç

New cyclic dependency between modules (ARCH9205)

Anahtar swift.architecture.new-dependency · Önem warning · Kategori architecture

Yalnız merge request’lerde. Bir klasörü, varsayılan dalda zaten kendisine bağımlı olan (doğrudan ya da en fazla üç adımda) başka bir klasöre bağımlı yapan tip referansını işaretler: ikisi artık birbirine bağımlı. Kod tabanının çoğunun bağımlı olduğu klasörler ve kendi üst ya da alt klasörüyle olan bağımlılık sayılmaz.

// App/Billing/InvoiceBuilder.swift - on the default branch App/Shipping already uses App/Billing
struct InvoiceBuilder {
let tracker: ParcelTracker
}
App/Billing/ShipmentStatus.swift
protocol ShipmentStatus { func status(of orderId: Int) -> String } // implemented in App/Shipping
struct InvoiceBuilder {
let status: ShipmentStatus
}