Doğru seçilmiş VS Code eklentileri, editörü düz bir metin düzenleyiciden günlük işin merkezinde duran tam donanımlı bir geliştirme ortamına dönüştürür. Yıllardır web, oyun sunucusu ve bot projeleri arasında geçiş yaparken aynı kurulumu taşıyorum; bu yazıda gerçekten kullandığım, üretkenliği somut biçimde artıran eklentileri ve neden işe yaradıklarını anlatıyorum. Amaç uzun bir liste sıralamak değil, her birinin günlük akışta nereye oturduğunu göstermek.
Önce temel: editörü zahmetsiz kullanılır yapanlar
Bazı eklentiler göze çarpmaz ama her gün dokunduğun her dosyada işini kolaylaştırır. Bir projeye katıldığımda ilk kurduklarım bunlar:
- EditorConfig for VS Code — Depoda bir
.editorconfigdosyası varsa girinti, satır sonu ve karakter kodlamasını otomatik uygular. Ekipteki herkesin aynı biçimde yazması için en düşük maliyetli yol. - Path Intellisense —
importve dosya yolu yazarken klasör yapısını otomatik tamamlar; yanlış yol yüzünden kaybolan dakikaları bitirir. - Code Spell Checker — Değişken adlarındaki ve yorumlardaki yazım hatalarını yakalar.
recieveyerinereceiveyazmak, sonradan grep ederken hayat kurtarır.
Biçimlendirme ve linting: tartışmayı bitiren ikili
Kod stilini elle tutarlı tutmaya çalışmak boşa enerji. Bu işi araçlara devretmek için en güvendiğim VS Code eklentileri Prettier ve ESLint:
- Prettier — Kaydettiğinde kodu kendi kurallarına göre yeniden biçimlendirir. Girinti, tırnak, noktalı virgül gibi konuları tamamen masadan kaldırır.
- ESLint — JavaScript/TypeScript'te kullanılmayan değişken, tanımsız referans gibi gerçek hataları yazarken gösterir. Prettier biçimi, ESLint mantığı dert eder; ikisi birlikte çalışır.
Prettier'ı kaydetmede otomatik çalıştırmak için kullanıcı ya da çalışma alanı ayarlarına şunu eklerim:
{
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
}
}
Böylece her kayıtta dosya biçimlenir ve ESLint'in düzeltebileceği sorunlar otomatik giderilir. Dile özel biçimlendirici atamak istersen "[python]": { "editor.defaultFormatter": "..." } bloklarıyla dosya türü bazında ayar yapabilirsin.
Git'i editörden çıkmadan yönetmek
VS Code'un yerleşik Git desteği iyidir, ama iki eklenti onu bambaşka bir seviyeye taşıyor:
- GitLens — Her satırın yanında o satırı kimin, ne zaman, hangi commit'te değiştirdiğini gösterir (inline blame). Bir hatanın nereden geldiğini ararken dosya geçmişini, satır geçmişini ve commit ayrıntılarını editörün içinde gezebilirsin.
- Git Graph — Dalları, birleştirmeleri ve commit ağacını görsel bir grafik olarak çizer. Karmaşık bir rebase ya da merge öncesi durumu anlamak için terminale göre çok daha hızlı.
Bu ikisi özellikle uzun ömürlü projelerde değerli: bir satıra bakıp "bunu neden böyle yapmışız" sorusunun cevabını saniyeler içinde bulmak, kod arkeolojisini gerçek bir işe dönüştürür.
Uzaktan ve konteyner içinde geliştirme
İşin önemli bir kısmı yerel makinede değil, bir VPS'te ya da Docker konteynerinde geçtiğinde Microsoft'un Remote ailesi vazgeçilmez oluyor:
- Remote - SSH — Uzak bir sunucuya SSH ile bağlanıp dosyaları sanki yereldeymiş gibi düzenlersin; eklentiler ve terminal uzak makinede çalışır. Bir oyun sunucusunu ya da Laravel kurulumunu doğrudan VPS üzerinde düzenlerken yerel ile uzak arasında dosya kopyalama derdi kalmaz.
- Dev Containers — Projeyi bir
devcontainer.jsontanımına göre konteyner içinde açar. Takımdaki herkes aynı PHP/Node sürümü ve aynı sistem bağımlılıklarıyla çalışır; "bende çalışıyordu" sorunları büyük ölçüde biter. - WSL — Windows'ta Linux alt sistemi içindeki dosyalara doğrudan bağlanmak için. Üç eklentinin tamamı aynı "Remote Explorer" mantığını paylaşır.
Dile ve çerçeveye özel destek
Genel eklentilerin üstüne, üzerinde çalıştığın yığına göre birkaç hedefli eklenti eklemek mantıklı. Benim sık kullandıklarım:
- PHP Intelephense — Laravel ve düz PHP projelerinde hızlı otomatik tamamlama, tip ipuçları ve "tanıma git" desteği sağlar.
- Tailwind CSS IntelliSense — Tailwind sınıf adlarını tamamlar ve fareyle üzerine geldiğinde ürettiği CSS'i gösterir.
- Docker —
Dockerfilevecomposedosyaları için sözdizimi, otomatik tamamlama ve konteyner yönetimi sunar.
Buradaki ilke şu: temel kurulumu hafif tut, gerçekten o anki projeye değer katan dil eklentilerini ekle. Çok fazla, üst üste binen eklenti editörü yavaşlatabilir ve aynı işi yapan iki biçimlendirici çakışabilir.
Kurulumunu taşınabilir tutmak
Eklenti seçimini bir kez yapıp her makinede elle kurmamak için iki yöntem var. VS Code'un yerleşik Settings Sync özelliği eklentileri, ayarları ve klavye kısayollarını bir hesapla senkronize eder. Alternatif olarak, bir projeye özel önerileri depoya koyabilirsin:
// .vscode/extensions.json
{
"recommendations": [
"esbenp.prettier-vscode",
"dbaeumer.vscode-eslint",
"eamodio.gitlens"
]
}
Bu dosya sayesinde projeyi açan herkes hangi eklentilerin önerildiğini görür ve tek tıkla kurabilir. Ekip tutarlılığı için Settings Sync'ten daha güçlü, çünkü öneri kişiye değil projeye bağlı.
Sık Sorulan Sorular
Çok fazla eklenti VS Code'u yavaşlatır mı?
Evet, özellikle her açılışta etkinleşen ve arka planda dosya tarayan eklentiler başlatmayı yavaşlatabilir. Developer: Startup Performance komutuyla hangi eklentinin ne kadar süre harcadığını görebilir, kullanmadıklarını belirli çalışma alanlarında devre dışı bırakabilirsin.
Prettier ve ESLint aynı anda çakışır mı?
Doğru ayarlandığında hayır. ESLint'in biçimle ilgili kurallarını kapatıp biçimlendirmeyi Prettier'a bırakırsan ikisi temiz şekilde birlikte çalışır; bunun için eslint-config-prettier paketi tam olarak bu çakışmayı engellemek üzere vardır.
Eklentileri çalışma alanı bazında mı yoksa global mi kurmalıyım?
Genel araçları (GitLens, Prettier) global tut; yalnızca belirli projelerde anlamlı olan dil eklentilerini ise o çalışma alanında etkinleştir. Böylece editör her projede sadece ihtiyacın olan kadar yük taşır.
Kendi geliştirme akışını hızlandırmak mı istiyorsun? Bir web, sunucu ya da otomasyon projesinde tutarlı bir kurulum ve temiz bir iş akışı kurmana yardımcı olabilirim — benimle iletişime geç.