Monorepo'lar ve Proje Referansları
Bir çalışma alanı monorepo'su oluşturun ve hızlı, artımlı derlemeler ile paketler arası temiz türler için TypeScript Proje Referanslarını bağlayın.
Monorepo'lar ve Proje Referansları, CoddyKit'te ücretsiz bir TypeScript Academy dersidir. Bu, 1 dersinin 1. 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, TypeScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. TypeScript Academy kursu toplamda 1 dersten oluşur.
Giriş
Amaç: Ölçeklenebilen bir monorepo düzenlemektir. Çalışma alanlarını bildirecek, Proje Referansları ekleyecek ve artımlı çıktı için tsc -b ile derleyeceksiniz.
- pnpm/yarn çalışma alanları
- Birleşik projeler
- Paylaşılan türler
Çalışma alanı düzeni
Basit bir iki paketli düzen: paylaşılan (kitaplık) ve uygulama (paylaşılan pakete bağlı). Çalışma alanları yerel paketleri birbirine bağlar.
# folder structure (for reference)
/monorepo
package.json
tsconfig.base.json
packages/
shared/
src/index.ts
package.json
tsconfig.json
app/
src/index.ts
package.json
tsconfig.jsonKök çalışma alanları
Paket yöneticisinin yerel bağımlılıkları birbirine bağlaması için çalışma alanlarını bildirin. TS derleme modunu kullanarak build/clean betiklerini ekleyin.
// package.json (root)
{
"name": "monorepo",
"private": true,
"workspaces": ["packages/*"],
"scripts": {
"build": "tsc -b packages/*",
"clean": "tsc -b packages/* --clean"
}
}Paylaşılan paket
Kitaplığı birleşik bir proje olarak işaretleyin. Bağımlı projelerin tür denetimini hızlı yapabilmesi için bildirimleri üretin.
// packages/shared/tsconfig.json
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"outDir": "dist",
"rootDir": "src",
"declaration": true,
"composite": true
},
"include": ["src"]
}
// packages/shared/src/index.ts
export interface User { id: string; name: string }
export const hello = (u: User) => `Hello, ${u.name}`Uygulama paketi + referanslar
shared paketine bağımlılık belirtmek için bir referanslar girdisi ekleyin. Oluşturucu önce shared paketini, ardından app paketini derler.
// packages/app/tsconfig.json
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"outDir": "dist",
"rootDir": "src",
"composite": true
},
"references": [
{ "path": "../shared" }
],
"include": ["src"]
}
// packages/app/src/index.ts
import { hello } from "shared"
console.log(hello({ id: "u1", name: "Ada" }))Temel yapılandırma ve ipuçları
İpuçları:
- Paylaşılan derleyici seçenekleri için
tsconfig.base.jsonoluşturun. - Paket adlarını yansıtan
pathseşlemelerini kullanın. - Yerel geliştirmeyi artımlı olarak sürdürmek için
tsc -b --watchçalıştırın.
Referans gereksinimi denetimi
Hızlı denetim: Referans verilen her paket neleri içermelidir?
Özet
Özet: Çalışma alanları yerel paketleri birbirine bağlar; Proje Referansları (birleşik + referanslar), hızlı ve artımlı tsc -b derlemelerini ve paketler arası güvenilir türleri mümkün kılar.
Sıkça Sorulan Sorular
“Monorepo'lar ve Proje Referansları” dersi ücretsiz mi?
Evet — “Monorepo'lar ve Proje Referansları” 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 TypeScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. TypeScript Academy kursu toplamda 1 dersten oluşur.
“Monorepo'lar ve Proje Referansları” dersinde ne öğreneceğim?
Bir çalışma alanı monorepo'su oluşturun ve hızlı, artımlı derlemeler ile paketler arası temiz türler için TypeScript Proje Referanslarını bağlayın. TypeScript 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.
TypeScript Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te TypeScript 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, 1 dersinin 1. dersidir.
“Monorepo'lar ve Proje Referansları” 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 TypeScript Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her TypeScript 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.