Kavram: Varsayılan özellikler
Bu makalede varsayılan özellikler kavramı, bunların etkileri ve etkili yönetim stratejileri açıklanmaktadır.
Varsayılan özellikler, açıkça devre dışı bırakılmadığı sürece bir bağlantı noktası yüklendiğinde otomatik olarak eklenen bir özellik kümesidir. Bu özellikler, bağımlılık grafiğinin karmaşıklığı artsa bile kitaplığın temel işlevsellik düzeyini korumasını sağlar.
Not
Tüm bağlantı noktaları varsayılan özellikleri içermez.
Varsayılan özelliklerin rolü
Varsayılan özellikler, modüler özelliklere sahip kitaplıklarda temel işlevlerin kullanılabilir olmasını sağlayarak kullanıcı dostu bir deneyim sağlar.
Örneğin, çeşitli arşiv biçimlerini ayıklayabilen bir kitaplık, her biçimi isteğe bağlı bir özellik olarak içerebilir. Varsayılan özellikler olmadan, kitaplık ilk kullanımı karmaşık hale getirme amacıyla kutudan çıkarma algoritması içermeyebilir.
vcpkg tarafından yüklenen paketler, aksi açıkça istenmediği sürece her zaman varsayılan özelliklerini içerir. Bu davranış, bir bildirim dosyası veya vcpkg yükleme çağrısı aracılığıyla doğrudan kullanıcı tarafından gerekli olan paketler ve bağımlılık olarak gerekli paketler için geçerlidir.
Bildirim modunda varsayılan özellikleri devre dışı bırakma
Varsayılan özelliklerinin yüklenmesini "default-features": false
devre dışı bırakmak için özniteliğini bir bağımlılık bildirimine ekleyin.
Varsayılan özelliklerin otomatik yüklemesini devre dışı bırakmak yalnızca kullanıcı tarafından istenen bağımlılıklar için mümkündür.
Geçişli bağımlılık için varsayılan özellikleri devre dışı bırakmak istiyorsanız, bunu projenizin bildiriminde doğrudan bir bağımlılığa yükseltmeniz gerekir.
Klasik modda varsayılan özellikleri devre dışı bırakma
Yüklemek istediğiniz paketlerin istenen özelliklerinin bir parçası olarak özel core
özelliği ekleyin.
Not
Geçişli bağımlılık için varsayılan özellikleri devre dışı bırakmak istiyorsanız bildirim modunun çalışma şekline benzer; komut satırınızda doğrudan yükleme isteğine yükseltmeniz gerekir.
Örnek 1: Varsayılan özelliklere sahip bir kitaplık ekleme
{
"name": "my-application",
"version": "0.15.2",
"dependencies": [
"extract-any"
]
}
Bu senaryoda, extract-any
varsayılan özellikleriyle birlikte yüklenir ve anında işlevsellik sağlanır.
Örnek 2: Varsayılan özellikleri devre dışı bırakma (bildirim modu)
{
"name": "my-application",
"version": "0.15.2",
"dependencies": [
{
"name": "extract-any",
"default-features": false
}
]
}
Burada, extract-any
varsayılan özellikleri olmadan yüklenir ve özel bir kuruluma olanak sağlar.
Örnek 3: Varsayılan özellikleri devre dışı bırakma (klasik mod)
vcpkg install extract-any[core]
Burada, extract-any
özel core
özellik kullanılarak varsayılan özellikleri olmadan yüklenir.
Varsayılan özellik etkileşimleri
Varsayılan özelliklere (varsayılan davranış) sahip bir bağlantı noktası yükleme:
vcpkg install extract-any
belirli özellik isteklerinin olmaması nedeniyle varsayılan özellikleriyle (extract-any[format-a]
yüklenirextract-any
.Varsayılanları devre dışı bırakmadan bir özellik belirtme:
vcpkg install extract-any[format-b]
hem belirtilen () hem de varsayılan (format-b
) özelliklerle (format-a
extract-any[format-a,format-b]
) yüklenmesineextract-any
yol açar.Varsayılan özellikleri açıkça devre dışı bırakma:
vcpkg install extract-any[core]
açıkça dışlandığı için[core]
varsayılan özellikler olmadan yüklenirextract-any
.Geçişli bağımlılıklar ve varsayılan özellikler:
vcpkg install extract-any[format-b] portB
'nin varsayılan özelliklerini açıkça devre dışı bırakmazsaextract-any
, öğesine bağlıysaportB
extract-any[format-a]
yüklenmesine nedenextract-any[format-a,format-b] portB
olabilir.Bağlantı noktalarını çeşitli özellik belirtimleriyle birleştirme:
vcpkg install extract-any[format-b] portB
açıkça dışlanmadığı sürece 'nin varsayılan özellikleri de dahil olmak üzereextract-any
yüklerextract-any[format-a, format-b] portB
.Varsayılan özelliklerin kapsamlı olarak devre dışı bırakılması:
vcpkg install extract-any[core] portB
Varsayılanlarextract-any
dışında yalnızca açıkça istenen özelliklerle yüklenmesini sağlar.
Varsayılan özellikleri yönetme
Projelerinizdeki varsayılan özellikleri etkili bir şekilde yönetmek için:
- Açık Olun: Yalnızca ihtiyacınız olan özellikleri belirtin. Gerektiğinde varsayılan özellikleri devre dışı bırakmak için kullanın
[core]
. - Bağımlılıkları İnceleme: Bağımlılık çözümlemelerini anlamak ve yapılandırmalarınızı buna göre ayarlamak için kullanın
vcpkg depend-info <port>
. - Geçersiz Kılmaları ve Temelleri Kullanma: Bağımlılık çözümleri üzerinde daha fazla denetim için sürüm oluşturma ve temel özelliklerden yararlanın.
Daha fazla bilgi için, aşağıdakilere bakın:
Varsayılan özellikleri yönetmek için net bir strateji benimsemek, projenizin bağımlılık yönetimini kolaylaştırmaya yardımcı olur ve yalnızca uygulamanızın işlevselliği için gerekenleri dahil edeceğinizden emin olur.