Aracılığıyla paylaş


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

  1. 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.

  2. 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-aextract-any[format-a,format-b]) yüklenmesine extract-any yol açar.

  3. 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.

  4. 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ıysa portB extract-any[format-a]yüklenmesine neden extract-any[format-a,format-b] portB olabilir.

  5. 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 üzere extract-anyyüklerextract-any[format-a, format-b] portB.

  6. Varsayılan özelliklerin kapsamlı olarak devre dışı bırakılması: vcpkg install extract-any[core] portB Varsayılanlar extract-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.