Node.js Projelerinde TypeScript Kurulumu: Adım Adım Express Sunucu Geliştirme
🧠 Bu Rehberde Ne Öğreneceksiniz?
Bu rehberde, Node.js üzerinde TypeScript kullanarak tip güvenliği yüksek bir proje kurmayı adım adım öğreneceksiniz.
Aşağıdaki adımlarda, Express çatısını entegre etmeyi, ESLint ile kod kalitesini artırmayı ve tsconfig.json dosyasını yapılandırmayı göreceksiniz.
İzlenecek Adımlar:
- Proje dizinini başlatma (
npm init) - TypeScript kurulumu ve derleyici yapılandırması
- Express ve tip tanımlarının eklenmesi
- TypeScript sunucu kodunun yazılması
- Derleme (
npx tsc) ve çalıştırma - ESLint ile kod denetimi
- package.json script’lerinin düzenlenmesi
1️⃣ Proje Dizini Oluşturma ve Başlatma
Yeni bir klasör oluşturun ve npm projesi başlatın:
mkdir rabisu-node-ts
cd rabisu-node-ts
npm init -y
💡 Açıklama: -y parametresi, tüm soruları varsayılan olarak yanıtlayarak package.json dosyasını oluşturur.
2️⃣ TypeScript Derleyicisini Yapılandırma
TypeScript’i geliştirme bağımlılığı olarak kurun:
npm install --save-dev typescript
Şimdi derleyici ayarlarını içeren tsconfig.json dosyasını oluşturun:
npx tsc --init
Aşağıdaki ayarları uygulayın:
{
"compilerOptions": {
"module": "commonjs",
"esModuleInterop": true,
"target": "es2020",
"moduleResolution": "node",
"sourceMap": true,
"outDir": "dist",
"strict": true
},
"lib": ["es2020"]
}
📘 Özet:
"module": "commonjs" → Node.js modül sistemi
"outDir": "dist" → Derlenmiş dosyaların çıktısı
"strict": true" → Katı tip kontrolü
"esModuleInterop": true" → ES modül uyumluluğu
3️⃣ Express Sunucusu ve Tip Tanımlarını Kurma
Express çatısını projeye ekleyin:
npm install express
npm install --save-dev @types/express
📘 Açıklama: @types/express, Express kütüphanesi için TypeScript tip bilgilerini ekler.
Kaynak klasörünüzü oluşturun:
mkdir src
nano src/app.ts
app.ts dosyasına şu kodu ekleyin 👇
import express, { Request, Response } from 'express';
const app = express();
const port = 3000;
const sunucuAdresi = 'tr1-node01.rabisu.cloud';
app.get('/', (req: Request, res: Response) => {
res.send('Rabisu Cloud Hoş Geldiniz!');
});
app.listen(port, () => {
console.log(`Sunucu aktif: http://${sunucuAdresi}:${port}`);
});
💡 Bu kod, 3000 portunda çalışan bir Express sunucusu oluşturur.
4️⃣ TypeScript Kodunu Derleme ve Çalıştırma
Kodu JavaScript’e dönüştürün:
npx tsc
💬 Açıklama: Bu komut src/app.ts dosyasını derleyip dist/app.js çıktısını üretir.
Sunucuyu başlatın:
node dist/app.js
🟢 Beklenen çıktı:
Sunucu aktif: http://tr1-node01.rabisu.cloud:3000
5️⃣ ESLint ile Kod Kalitesi Kontrolü
Kod tutarlılığını korumak için ESLint’i kurun:
npm install --save-dev eslint
npm init @eslint/config@latest
Kurulum sırasında şu seçenekleri belirleyin:
Kullanım amacı: Sözdizimi kontrolü ve hata bulma
Modül tipi: JavaScript modules (import/export)
Framework: None
TypeScript kullanımı: Yes
Çalışma ortamı: Node
Config dosyası formatı: JavaScript
Yapılandırmadan sonra .eslintrc.js dosyanız şöyle görünmelidir:
module.exports = {
env: {
es2021: true,
node: true,
},
extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended'],
parser: '@typescript-eslint/parser',
parserOptions: {
ecmaVersion: 13,
sourceType: 'module',
},
plugins: ['@typescript-eslint'],
rules: {},
};
Kodunuzu kontrol edin:
npx eslint . --ext .ts
6️⃣ package.json Komutlarını Güncelleme
package.json dosyanıza sık kullanılan komutları ekleyin:
"scripts": {
"start": "tsc && node dist/app.js",
"lint": "eslint . --ext .ts",
"test": "echo \"Error: no test specified\" && exit 1"
}
Artık aşağıdaki kısa yolları kullanabilirsiniz:
npm run start # Derle ve çalıştır
npm run lint # Kod denetimi yap
🧩 Faydalı Ayarlar (tsconfig.json için)
| ⚙️ Ayar | 💬 Açıklama | 💡 Önerilen Değer |
|---|---|---|
"strict" | Tip hatalarını erken tespit eder. | true |
"rootDir" | TypeScript kaynak dosyalarının dizini. | "./src" |
"outDir" | Derlenmiş JavaScript dosyalarının çıktısı. | "./dist" |
"skipLibCheck" | Kütüphane tip kontrolünü hızlandırır. | true |
❓ Sıkça Sorulan Sorular (SSS)
- TypeScript kullanmak Node.js performansını düşürür mü?
Hayır. TypeScript yalnızca derleme sırasında çalışır. Çalışma zamanında (runtime) Node.js saf JavaScript kodunu çalıştırır.
- @types/express paketi neden gerekli?
Express JavaScript ile yazılmıştır. Bu paket, TypeScript’in Express API’sini tanımasını sağlar.
- Sürekli derleme yapmak yorucu mu?
Evet, bu yüzden ts-node kullanabilirsiniz:
npx ts-node src/app.ts
- tsconfig.json’daki en önemli ayar nedir?
Kesinlikle "strict": true. Kod güvenliğini maksimuma çıkarır.
- ESLint neden önemli?
Kod stilini korur, olası hataları erkenden tespit eder. Takım projelerinde standardizasyon sağlar.
🚀 Sonuç
Bu rehberle:
Node.js üzerinde TypeScript yapılandırmasını yaptık,
Express ile bir sunucu kurduk,
ESLint ile kod kalitesini artırdık,
npm script’leriyle projeyi otomatikleştirdik.
Artık tip güvenli, modern ve ölçeklenebilir Node.js projeleri geliştirmeye hazırsınız. Uygulamanızı Rabisu Bulut platformunun güçlü sanal sunucularında hemen çalıştırabilir, güvenle ölçeklendirebilirsiniz. ☁️