0Pricing
Lua Academy · Ders

Sürümleme ve Bağımlılık Yönetimi

Eklenti sürümlerini izleyin ve yükleme sırasında uyumluluğu denetleyin.

Sürümleme ve Bağımlılık Yönetimi, CoddyKit'te ücretsiz bir Lua Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Lua Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Lua Academy kursu toplamda 4 dersten oluşur.

Sürümleme Neden Önemlidir?

Eklentiler zamanla gelişir. Bir eklentinin v2.0 sürümü, v1.0 API'leriyle uyumsuz olabilir. Sürüm takibi, sessiz uyumluluk hatalarını önler.

Anlamsal Sürümleme

Anlamsal sürümleme kullanınız: MAJOR.MINOR.PATCH. Uyumluluğu bozan değişiklikler MAJOR'u, yeni özellikler MINOR'u, hata düzeltmeleri PATCH'i artırır.

Sürümlü Eklenti Bildirimi

Her eklenti kendi sürümünü ve gereken uygulama API sürümünü bildirir.

return {
  name        = "auth",
  version     = "2.1.0",
  apiRequired = ">=1.0.0",
  deps        = { {name="logger", version=">=1.0.0"} },
  init        = function(app) -- ... end
}

Sürüm Ayrıştırma

Karşılaştırılabilir bileşenler elde etmek için bir sürüm dizesini ayrıştırınız.

local function parseVersion(v)
  local major, minor, patch = v:match("(%d+)%.(%d+)%.(%d+)")
  return {tonumber(major), tonumber(minor), tonumber(patch)}
end
local function versionGe(a, b)
  a, b = parseVersion(a), parseVersion(b)
  for i = 1, 3 do
    if a[i] ~= b[i] then return a[i] > b[i] end
  end
  return true
end

Uyumluluk Denetimi

Eklenti yüklenirken uygulamanın API sürümünün eklentinin gereksinimini karşıladığını doğrulayınız.

local APP_VERSION = "1.5.0"
local function checkCompatibility(plugin)
  local req = plugin.apiRequired or ">=0.0.0"
  local minVer = req:match(">=(.+)")
  if minVer and not versionGe(APP_VERSION, minVer) then
    error(("Plugin %s requires app >= %s, got %s"):format(
      plugin.name, minVer, APP_VERSION))
  end
end

Bağımlılık Grafiği Çözümleme

Yükleme sırasını belirlemek için bir bağımlılık grafiği oluşturunuz ve topolojik sıralama yapınız.

Döngüsel Bağımlılık Algılama

Hangi eklentilerin yüklenme sürecinde olduğunu izleyiniz. Bir eklenti hâlihazırda yüklenmekte olan bir eklentiye bağlıysa (bir döngü içindeyse) hata oluşturunuz.

local loading = {}
local function loadWithCycleCheck(name, plugins)
  if loading[name] then error("Circular dependency: " .. name) end
  loading[name] = true
  -- load deps then load plugin
  loading[name] = nil
end

Yükseltme Yolları

MAJOR sürüm artışları için geçiş kılavuzlarını belgeleyiniz. Geçiş dönemi boyunca eski eklenti API'leri için bir uyumluluk katmanı sağlamayı değerlendiriniz.

Sürümlü Eklenti Kayıt Defteri

Merkezi bir kayıt defteri, yüklenmiş tüm eklenti sürümlerini saklar. Çakışmaları, uyumlu sürümler arasından en yükseğini seçerek çözümleyiniz.

Kilit Dosyası Düzeni

npm'nin paket kilidi dosyası gibi, yeniden üretilebilir derlemeler sağlamak için üretim dağıtımında kullanılan tam sürümleri kaydediniz.

Çalışma Zamanında Sürüm Uzlaşması

Eklentilerin birden çok uyumlu API sürümü bildirmesine izin veriniz. Ana uygulama, her iki tarafın da desteklediği en yüksek sürümü uzlaştırıp seçer.

Sürümleme Sorusu

Anlamsal sürümlemede MAJOR sürüm artışı neyi gösterir?

Özet: Sürümleme ve Bağımlılıklar

Her eklenti bildirimine sürümü ve apiRequired değerini ekleyiniz. Yükleme sırasında sürümleri ayrıştırıp karşılaştırınız. Döngüsel bağımlılıkları algılayınız. Yükleme sırası için topolojik sıralama kullanınız. Üretim dağıtımlarının yeniden üretilebilir olması için bir kilit dosyası tutunuz.

Sıkça Sorulan Sorular

“Sürümleme ve Bağımlılık Yönetimi” dersi ücretsiz mi?

Evet — “Sürümleme ve Bağımlılık Yönetimi” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Lua Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Lua Academy kursu toplamda 4 dersten oluşur.

“Sürümleme ve Bağımlılık Yönetimi” dersinde ne öğreneceğim?

Eklenti sürümlerini izleyin ve yükleme sırasında uyumluluğu denetleyin. Lua Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Lua Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Lua Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Sürümleme ve Bağımlılık Yönetimi” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Lua Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Lua Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Eklenti Keşfi ve Yükleme
  2. Eklenti API'si ve Kanca Sistemi
  3. Eklenti Çalıştırmayı Korumalı Alana Alma
  4. Sürümleme ve Bağımlılık Yönetimi
← Lua Academy Sayfasına Dön