crazy_coder
Moderatör
- Katılım
- 20 Şub 2026
- Mesajlar
- 204
- Tepkime puanı
- 0
- Puanları
- 16
1. Paket Yöneticisi Nedir?
Paket yöneticisi, projenizin bağımlılıklarını (dependencies) yöneten bir kütüphanedir. En popüler iki tanesi şunlardır:
NPM (Node Package Manager): Node.js ile birlikte gelen, dünyanın en büyük yazılım kayıt defterine sahip standart araçtır.
Yarn: Facebook (Meta) tarafından NPM'e alternatif olarak geliştirilen, özellikle hız ve güvenlik odaklı bir paket yöneticisidir.
Günümüzde her iki araç da birbirine oldukça yakındır ve işlevsel olarak aynı görevi görürler.
2. package.json: Projenin Kimlik Kartı
Her modern JavaScript projesinin kök dizininde bir package.json dosyası bulunur. Bu dosya, projeniz hakkında her şeyi tarayıcıya ve diğer geliştiricilere anlatır:
Projenin adı ve versiyonu.
Hangi kütüphanelerin (paketlerin) yüklü olduğu.
Projenin nasıl çalıştırılacağı (scripts).
Yeni Bir Proje Başlatmak:
Terminalde şu komutu çalıştırdığınızda size birkaç soru sorulur ve package.json dosyanız otomatik oluşur:
Bash:
npm init -y # veya yarn init
3. Paket Yükleme ve Yönetme
Diyelim ki projenize popüler tarih kütüphanesi olan lodash eklemek istiyorsunuz:
Bash:
npm install lodash # veya yarn add lodash
Bu komuttan sonra projenizde iki şey değişir:
node_modules Klasörü: Yüklediğiniz kütüphanenin tüm kaynak kodları buraya iner. (Bu klasör çok büyüktür, asla Git'e yüklenmemelidir!)
package-lock.json (veya yarn.lock): Paketlerin tam olarak hangi sürümde yüklendiğini kaydeden "kilit" dosyasıdır.
4. Scripts Bölümü: Kısayollar Oluşturma
package.json içindeki "scripts" alanı, uzun terminal komutlarını tek kelimeyle çalıştırmanızı sağlar.
JSON:
"scripts": {
"start": "node app.js",
"dev": "nodemon app.js",
"test": "jest"
}
Artık terminale npm run dev yazdığınızda, arka planda nodemon app.js komutu çalışacaktır.
5. Dependency vs DevDependency
Paket yüklerken iki seçeneğiniz vardır:
Dependencies: Uygulamanın çalışması için şart olan paketler (Örn: React, Express).
DevDependencies (--save-dev): Sadece geliştirme aşamasında lazım olan araçlar (Örn: Kod düzenleyiciler, test araçları).
Bash:
npm install nodemon --save-dev
Sonuç
Paket yöneticileri olmasaydı, kullandığımız her kütüphaneyi internetten manuel indirip klasörlere kopyalamamız ve versiyonlarını elle takip etmemiz gerekirdi. NPM ve Yarn bu süreci otomatikleştirerek odak noktamızın sadece "kod yazmak" olmasını sağlar.