Çok değil bundan 15-20 sene önce, çok düşük bellekler ve çok düşük işlemci gücü ile yüksek verim almak için kırk takla atan yazılım firmaları vardı,
şimdi ise elimizde harman yeri gibi bellek ve işlemci gücü var, hal böyle olunca artık kod yazarken, yazdığımız kodların ve sorguların sunucularda, işlemcilerde nasıl etki bırakacağını çok düşünmüyoruz,
hatta, bu yazılım yavaş çalışıyor tepkisine, o zaman sunucunu güçlendir cevabını bile alabiliyoruz veya kendimiz bu cevabı verebiliyoruz.
tabi dikkat etmeden yazdığımız her kod ileride başımıza çok büyük dertler açacağı için sürekli kod review’i yaparak gitmemiz gerekiyor, bu olay bile bir süre sonra angarya halini alıyor, yazdığımız koda bile yabancılık çekebiliyoruz.
bunların dışında, internetin her yere girmesi sebebi ile artık daha az kodla daha çok iş yaptırmamız gerekiyor çünkü sunucu – istemci arası trafiği çok düşük tutarak performansı yüksek tutmamız gerekiyor.
bu bilgiler ışığında,
biz sadece kod yazalım, kodun düzenlemesini, performans ayarlarını başkaları yapsın deme lüksümüz olması gerekiyor,
diyelim ki css yazıyorsunuz,
artık css ve javascript gibi dillerde performans için dosyalarınızı küçültüp kod tekrarından arındırmanız gerekiyor, bunu yaptıktan sonrada ilerde gelebilecek değişiklik taleplerinde yazdığınız kodu anlayıp, düzenlemeleri yaptıktan sonra tekrar küçültme yoluna gitmeniz gerekiyor. [kaynak]
küçültülmüş, sıkıştırılmış ve tek satıra indirgenmiş css dosyasını her seferinde düzenlemeye çalışmak, bir taraftan performans için yaptığınız çabayı diğer taraftan boşa çıkarmaktan başka bişi değil,
aynı durum javascript yada html için de geçerli.
Hem kodunuzu okunaklı şekilde yazmanız , hemde kodunuzu yayınladığınızda otomatik olarak küçültüp sıkıştıran bir çok araç yavaş yavaş hayatımıza girmeye başlıyor,
işte bunlardan bazıları.
- Eğer php ile bir proje geliştirirken ben css, javascript gibi kaynakları kafama göre yazayım yazılım çalışırken bu yazdıklarım otomatik olarak sıkıştırılsın derseniz php minify kütüphanesini kullanabilirsiniz, kütüphane adres: https://code.google.com/p/minify/ tabi her ne kadar keşleme sistemi kullansa da yazdığınız kodu o sırada sıkıştırıp küçülteceği için, işlemci gücü gerektirecek bir uygulama, bunun yerine biz kodu yazarken kodumuzu istenilen şekle sokan araçlardan faydalanmak.
- Css kodlarken hem rahat kodlamak, hemde verimli şekilde performans artışı sağlamak için kullanılabilecek araçlardan birisi LESS, siz css’ini less olarak yazıyorsunuz sonra kullandığınız platforma yada ideye bağlı olarak [1] [2] [3] üretilmiş araçlardan birisi ile kodunuzu otomatik olarak istediğiniz bir dizine eklettirebiliyorsunuz. ben bu arçalar içerisinden winless’i kullanıyorum, phpstorm ile yazdığım kodu ben kaydettikçe ilgili dizine yükleyerek beni ekstra yüklerden kurtarıyor
- Yine css yazarken yararlanabileceğiniz bir diğer araç SASS sass ile less arasında çok fazla bir fark yok [inceleme linki] yine sass için araçlar bulmak mümkün.
- İster less kullanın ister sass ikisininde kendisine ait bir dil yapısı var, kendi içlerinde sorgu yapıları, değişken tanımlama olanağı, kod blokları gibi keşke css’de olsa dediğiniz bir çok özellik kodlama standartları sayesinde hayatımıza girmiş durumda. bu kolaylıkları kendi sitelerinden öğrenebilirsiniz [1] [2]
- Tabi Css ‘in yanı sıra Javascript kodlarınızı hal yoluna koyacak bir kodlama standardı da yok değil, Coffee script kodlama standardı bu eksiklik için ortaya çıkmış bır nimet burada da durum diğer araçlar gibi değişmiyor, siz javascript yazacağınız zaman artık coffee script yazıyorsunuz, kullanabileceğiniz araçlar ile kodunuz derlenerek javascript haline geliyor, hem daha hızlı kodluyorsunuz hemde kodunuz modern tarayıcılarla tam uyumlu halde oluyor.
- Php için ise bu tarz araçlar olsa da yazarken işi sıkı tutmak için kendi rüştünü kanıtlamış ve çok güzel code denetlemesi yapan bir IDE kullanmanız ve standartları öğrenerek bu standartlara göre kod yazmanız gerekmektedir. Php kodlarınızın sıkışmış olması yada küçültülmüş olması performans için etki etmemekle birlikte, sizin kodu yazma şekliniz ve kullandığınız yöntemler performansa daha çok etki etmektedir.
- Yine php ile kullanılabilecek diğer araçlar
Şimdilik sadece giriş yapmış oldum, ilerleyen günlerde her bir maddeyi tek başına ele alarak yazılar yazarım.