Prototype.js Dosyasını %80 Daha Hızlı Yükletmek
Prototype.js, kullanmaktan keyif aldığım bir JavaScript kütüphanesidir. Geçtiğimiz günlerde 1.5.1 sürümü yayınlandı. Bu sürüm yeniliklerin yanında, düzeltmeler ve optimizasyonlar da içeriyor. Buraya kadar herşey iyi güzel ama benim canımı sıkan bir durum var
O da her yeni sürümde Prototype.js dosyasının boyutunun giderek artması. İşte bu yüzden, boyutunu küçültmek adına bir-kaç yöntem kullanmaya karar verdim. Bu yöntemleri size de anlatmak istiyorum ![]()
Prototype.js 1.5.1
Prototype.js kütüphanesinin en yenisi olan 1.5.1 sürümünü buradan indirebilirsiniz. Göreceğiniz gibi bu sürüm 93,7 kilobayt civarında. Bir önceki sürüm olan 1.5.0 ise 69,5 kilobayt idi. Yuvarlak bir hesapla 25 kilobaytlık bir artış söz konusu ki bu bence ciddi bir artış. Fakat birazdan uygulayacağımız iki basit adımla 93,7 kilobaytlık Prototype.js dosyasını 19 kilobayta küçülteceğiz
1. Yorum satırlarını ve boşlukları temizleyelim
Prototype.js dosyası biz kullanıcılarına ham haliyle sunuluyor. Böyle olunca dosya içerisinde yorum satırları, boşluklar, sekme boşlukları da yer alıyor. Başta önemsiz gibi görülebilir ama yorum satırlarını ve boşlukları dosya içerisinden attığımızda %25'li bir kazancımız oluyor. 93,7 KB olan dosyamız bir anda 70 KB boyutuna düşüyor. Hiç de fena sayılmaz öyle değil mi?
Gelelim bu işlemi nasıl yapabileceğimize. İlk adımda JS Minifier isimli uygulamanın web sayfasına giriyoruz. Prototype.js dosyasındaki tüm kodları kopyalayıp olduğu gibi Code alanına yapıştırıyoruz. Hemen bu kutunun altındaki Level menüsünden conservative seçeneğini seçip JSMin butonuna tıklıyoruz. Biraz bekledikten sonra Output alanında kodun temizlenmiş hali oluşturuluyor. Bu kutudaki kodu aynen kopyalayıp yeniden prototype.js dosyasına yapıştırıyoruz.
2. Temizledikten sonra bir de sıkıştıralım
1. adımdaki temizlik işleminden sonra şimdi de prototype.js dosyasını gerçek zamanda sıkıştırmayı deneyeceğiz. Bunun için Apache ve PHP ikilisini kullanan bir host paketinizin olması ve Apache web sunucusunun mod_gzip modülünün aktif olması gerekiyor. Bu şartlar sağlandığında prototype.js dosyasını gzip sıkıştırma yöntemi ile sıkıştırabileceğiz. Böylece 1. adımda 70 kilobayta düşen prototype.js dosyasını 19 kilobayta düşüreceğiz.
Bu işlem için öncelikle ismi prototype.js olan dosyamızı prototype.js.php olarak yeniden isimlendiriyoruz. Daha sonra dosyayı açıyoruz ve en başına alttaki kodları yerleştiriyoruz.
İşte hepsi bu kadar. Bundan böyle web sayfalarımızda prototype.js kütüphanesini kullanmak istersek alttaki gibi bir çağırma yapmamız yeterli olacaktır.
-
<script type="text/javascript" src="prototype.js.php"></script>
Sonuç
Eğer buradaki yöntemleri kullanmamış olsaydık prototype.js dosyası 93,7 KB olarak yüklenecekti. Fakat bu iki yöntem sayesinde artık prototype.js dosyası yalnızca 19 KB olarak yüklenecektir. Bu da dosya boyutunun yaklaşık olarak %80 küçülmesi demek. İster istemez insanın içerisinden 93 KB nerdeeeee, 19 KB nerde demek geliyor
Yorum takibi
Geri izleme
Yazıyı Paylaş
6 Mayıs 2007, 08:02
Programlama
Bugün 3 kez, toplam 2,650 kez okundu.
javascript, prototype.js

6 Mayıs 2007, 10:58
güzel makale teşekkürler eburhan
6 Mayıs 2007, 15:39
Şaşırtıcı, boşlukların dahi bu denli yer kaplayacağını zannetmezdim. Rahat kodlamayı sevenlerden olduğumdan bol bol kodlar arasında aralık bırakırdım. Artık aralıklara paydos
6 Mayıs 2007, 21:39
İyi iş Erhan
Günlüğünü okuyan ve optimize ile ilgili yaptıklarını biraz PHP ağırlıklı olarak anlatan bir sunumu iliştireyim buraya.
Boosting The Performance of Your PHP Applications
Herkese iyi çalışmalar…
10 Mayıs 2007, 22:19
Benim yazdığım bu yazının bir benzerini yazmışlar
Buradan ulaşabilirsiniz.
18 Mayıs 2007, 19:59
gerçekten süper bir yazı olmuş. çeviri sanırım ama emeğe saygı. gerçekten web 2.0 camiasına büyük bir katkıdır bu. mySchoolog’da kullanmaya başlıyorum en kısa zamanda.
18 Mayıs 2007, 20:26
Yazıyı beğendiğine sevindim. Yalnız çeviri bir yazı değildir bu. Çeviri olduğu zaman yazıların altına yazıyorum zaten. Burada olduğu gibi.
18 Mayıs 2007, 20:37
güzel bir yazı ama prototype.js nizi editliyorsanız (benim gibi) eh biraz zor olur
26 Mayıs 2007, 15:34
Çok güzel yazı tebrikler, ancak IIS Win Server 2003 PHP de bu sıkıştırma işi nasıl yapılır?
26 Mayıs 2007, 16:00
IIS konusunda bilgim yok ama gzip sıkıştırması için buradaki sayfaya bir gözatın derim.
27 Mayıs 2007, 06:43
Merhaba Erhan,
HTTP Compression IIS’ de server yönetiminin açması gerekiyor, ASP.ASP.NET, PHP ve IIS altında çalışan her formatta işe yarıyor.. Tabi server yönetimi açarsa ki benim ki açmıyor.. CPU’ ek yük.! mod_gzip apache modülü ancak apache üzerinde çalışıyor. sanırım IIS PHP de deteklenen bir modül yok. Tşk.
6 Aralık 2007, 21:08
bu Prototype.js tam olarak ne işe yarıyor nerelerde kullanabiliriz bunu peki? keşke bunu anlatsayın sitesine bulamadım da
6 Aralık 2007, 22:45
@Tunc
Prototype.js ile ilgili çok ayrıntılı bir yazıyı http://ajax-tr.com/category/hazir-kutuphaneler/ adresinde bulabilirsin.
1 Mart 2008, 12:32
Abi çok teşekkürler uzun süzedir arıyorum nasıl göremedim yazıyı
acaba diğer dosyalarda da kullanılabilir mi php css dosyalarında. bir de bazı script dosyalarında görüyorum sıkışmış ip gibiler
tek satırda kodlar nasıl yapılıyor ?