CodeBlanks Logo Icon CodeBlanks

Özet - Yapılandırma

dotenv, env ve validation'ı birleştirerek bir config sistemi yazarsın.

Özet - Yapılandırma

Bu grupta Node.js'te yapılandırmanın temel araçlarını öğrendin: dotenv ile .env yüklemek, process.env ile değişken okumak, config nesnesiyle yapılandırmayı merkezileştirmek, doğrulama ile hataları erken yakalamak ve secrets'i güvenle yönetmek.

Şimdi bunları birleştirip küçük bir yapılandırma iskeleti kuracaksın. İskelet dotenv'i etkinleştirecek, port'u okuyacak, varsayılan verecek ve bir config nesnesinde toplayacak. Bu mini görev, yapılandırma araçlarının nasıl birleştiğini gösterir.

Yapılandırma tasarımı

Bir üretim yapılandırma iskeleti şöyledir: require("dotenv").config() ile yükleme, process.env.PORT || 3000 ile okuma ve varsayılan, const config = { ... } ile toplama. Doğrulama da eklenebilir.

Akış: require("dotenv").config(); const config = { port: process.env.PORT || 3000, nodeEnv: process.env.NODE_ENV || "development" }; if (!config.port) throw new Error("PORT gerekli");. Bu iskelet dotenv'i yükler, port'u okur, varsayılan verir, config nesnesinde toplar ve doğrular. Üretimde secrets da config nesnesine eklenir ama asla loglanmaz. Bu iskeletin üzerine farklı ortamlar için ayrı dosyalar eklenebilir.

Uygulama Yapılandırma iskeletini kur

require("dotenv").config() ile dotenv'i etkinleştir. const config = { port: process.env.PORT || 3000, nodeEnv: process.env.NODE_ENV || "development" } ile config nesnesi oluştur. console.log ile config.port'u yazdır.

Başlangıç kodu

index.js
// dotenv etkinleştir ve config nesnesi oluştur
// buraya yaz

// port değerini yazdır
// buraya yaz

Örnek çözüm

index.js
require("dotenv").config();
const config = {
  port: process.env.PORT || 3000,
  nodeEnv: process.env.NODE_ENV || "development"
};
console.log(config.port);

Beklenen çıktı

3000

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Yapılandırma iskeleti hangi parçaları birleştirir?

index.js
dotenv + process.env + config
  • Yalnızca require
  • Yalnızca console.log
  • Yalnızca throw
  • dotenv, process.env ve config nesnesi Doğru cevap

Açıklama: dotenv + process.env + config birleşir.

2 Aracı rolüne eşle

Kavram Anlamı
require("dotenv").config() .env'i yükler
process.env.PORT Değişkeni okur
|| 3000 Varsayılan değer
config nesnesi Yapılandırmayı toplar

İleri seviye bölümündeki tüm dersler