İyi Akşamlar değerli okurlarım sizlere anlatacağım bu makalemde 2 tane programlama dilinden bahsedeceğim. Php ve Asp.NET! Şimdi tercih meselesi isteyen istediği programlama dilini kullanabilir, Ben size programı kötülemeden sadece karşılaştırmasını yapacağım sizde kafanıza yatan hangisi ise onu kullanabilirsiniz. Karşılaştırmaya başlamadan önce kısaca Php ve Asp.Net’i açıklayım;

PHP (Pre-Hypertext Processor);

  • HTML içine gömülü olarak çalışabilen,
  • Dinamik web sayfaları üretmeye yarayan,
  • Geniş çapta kullanılan,
  • Çok amaçlı,
  • Sunucu (server) taraflı,
  • Çok esnek yapıda olan bir script (betik) dilidir.

Asp.NET  (Active Server Pages);

  • IIS (Internet Information Services) sunucusu tarafından çalıştırılan,
  • “.NET Programlama Platformu” bileşenlerine ve kütüphanelerine sahip,
  • VB (Visual Basic), C# (Sî Şarp Okunur), J# (Cey Şarp Okunur) dillerini isteğinize göre kullanarak kod yazabileceğiniz,
  • Visual Studio gibi çok gelişmiş bir kod düzenleyisi ve derleyicisine sahip bir web uygulaması geliştirme ortamıdır.

Eveet kısaca açıkladığımıza göre şimdi karşılaştırmaya geçebiliriz…

Sunucu Taraflı (Server Side) Çalışma Hızları

PHP: PHP çalışma anında hem derlenip hem de çalıştırıldığı için sunucu tarafında işlenmesi daha uzun sürmektedir. Ama bu sunucu taraflıdır. [Kaynak]

ASP.NET: Belirttiğim kaynakta yapılan teste göre asp.net linux ortamında bile php’den daha hızlı çalışmaktadır. Bunda şüphesiz asp.net kodlarının çalışmadan önce dll (dynamic language library) lere derlenerek çalışmaya hazır hale getirilip saklanmasıdır. [Kaynak]

Kullanıcı Taraflı (Client Side) Çalışma Hızları

PHP: Eğer bir PHP programcısı sitesini iyi bir modelleme ile, iyi bir javascript, html ve css optimizasyonu ile programlarsa  modern tarayıcılarda (firefox, internet explorer, opera, chrome, vs..) maximum hıza ulaşabilir.

ASP.NET: PHP için yazılanlar Asp.NET için de geçerlidir yalnız maximum tarayıcı hızına ulaşmak için bir çok Asp.NET’in hazır kontrollerinden vazgeçip gerektiğinde kendi kontrollerinizi kendiniz yazmanız gerekebilir ya da sunucu ile (hızlı bir şekilde) ajax etkileşimine girmek için php’de uğraştığınız süre ve gayretten daha fazlasını feda etmeniz gerekebilir.

Sayfa Yüklenme Hızları (PageLoad Speed)

PHP: Eğer bir PHP programcısı, caching (önbellekleme), sıkıştırma (gzip), sayfayı gereksiz html, css ve javascript kodlarından arındırarak gerekli optimizasyonları yaparsa, resimlerin tarayıcı taraflı önbelleklemeleri için son kullanma tarihlerini (expiration time) düzgün girerse sitenin yüklenme hızını ciddi oranda arttırabilir.

ASP.NET: PHP için yazılanlar Asp.NET’te de geçerlidir. Hatta önbellekleme (tüm sayfa, değişken ve fonksiyon ) bir ya da birkaç satırla Asp.NET sayesinde kolayca yapılabilmektedir. (Php’de ise bu iş sizin marifetli parmaklarınıza kalmaktadır.)
Bununla beraber, Asp.NET, viewstate yapısı, sayfanın boyutunu ciddi oranda etkileyebiliyor. Bu da sayfanın yüklenme hızına ciddi oranda olumsuz etki yapmaktadır.
Yalnız istenirse bu viewstate yapısı kullanılmayabilir. Hatta Asp.NET MVC’de (Model-View-Controller Modeli) viewstate yönteminden uzaklaşılmıştır.

Websitesi Hazırlama Hızları

PHP: PHP’de sıfırdan ve en baştan veritabanı ilişkisi gerektiren güvenli(secure) ve sağlam(robost)büyük bir websitesi tasarlamak ve programlamak gerçekten zahmetli ve çok düşünme ya da tecrübe gerektiren bir iş olabilir.
Bununla beraber neredeyse her web yazılımı ihtiyacı için ayrı ayrı yazılmış bir çok php tabanlı içerik yönetim sistemleri (joomla,drupal), blog sistemleri (wordpress), forumlar (smfphpbb), e-ticaret site yazılımları (oscommercemagento) bedava olarak internetten indirip php hosting alanınıza kurabilir ve kolayca ihtiyaçlarınıza göre geliştirebilirsiniz.

ASP.NET: Asp.NET her türlü küçük projeniz için birebirdir. Fazla ayrıntılara girmedikçe mevcut kontrolleri sizin ortalama ihtiyaçlarınızı karşılayacaktır. Projeler büyüdükçe Asp.NET’in hazır kontrollerinin ne kadar da değişik türde sıkıntılar çıkarabildiklerini göreceksiniz.
Çok büyük çaptaki site projelerinizde ise ciddi bir .NET deneyimine ihtiyaç ve bir takım çalışmasına ihtiyacınız olabilir. Team Foundation Server ile takım arkadaşlarınızla aynı proje üzerinde çakışma olmadan çalışabilir ve çalışmalarınızı yürütebilirsiniz. Yalnız bunun için de bir Team Server kiralanması gerekebilir.

Ücret

PHP: PHP’nin Asp.NET’i solda sıfır bıraktığı özelliği ücretsiz olmasıdır. İşte bu konuda tartışmasız PHP bir numaradır. Linux sürümleri ücretsizdir. PHP ücretsizdir. PHP üzerinde en yaygın kullanılan veritabanı olan MySQL ücretsizdir. Dünyanın ödüllere doymayan, MVC (Model-View-Controller) modelini kullanan ve binlerce gerekli ve faydalı eklentileri olan içerik yönetim sistemi Joomla ücretsizdir. Dünyanın en yaygın kullanılan blog yazılımı wordpress ücretsizdir. Ve ücretsiz olarak da sunulan birçok teması ve eklentisi de resmi sitesinde ücretsiz olarak yayınlanmaktadır.

ASP.NET: .NET ücretsizdir yalnız Asp.NET sitenizi tasarlamanıza ve derlemenize yarayacak olan Visual Studio programı ücretlidir ve şu an (2011 Ocak) itibariyle Visual Studio 2010 Professional lisans ücreti $549, ve microsoftun veritabanı olan SQL Server 2008 Standard ise CPU başına lisans ücreti $7,171.00′dır. Fiyatlarındaki bu yükseklik doğal olarak hosting fiyatlarına ve ücretli asp.net yazılımlarına da yansımaktadır. [Kaynak1][Kaynak2]

Yazılım Geliştirme Ortamı

PHP: Adobe Dreamweaver CS5 $485 ya da Notepad++ Bedava (İndir – 4.39MB)

ASP.NET: Microsoft Visual Studio 2010 Professional $549

Dünya Üzerinde Kullanım Oranları (2010)

PHP: %59 – 3.998.425 [Kaynak]

 ASP.NET: %34 – 2.294.166 [Kaynak]

PHP Kullanan Büyük İnternet Sitelerinden Birkaçı

  • facebook.com – Sosyal Paylaşım Sitesi
  • yahoo.com – Güncel İçerikli Arama Motoru
  • photobucket.com – Resim/Fotoğraf Paylaşım Sitesi
  • wikipedia.com – En Büyük İnsan Yapımı Ansiklopedi
  • digg.com – Web İçeriği Paylaşım Sitesi
  • flickr.com – Resim/Fotoğraf Paylaşım Sitesi
  • istockphoto.com – Resim/Fotoğraf Paylaşım Sitesi
  • sourceforge.net – Açık Kaynak Yazılım Sitesi

Asp.NET Kullanan Büyük İnternet Sitelerinden Birkaçı

  • myspace.com – Sosyal Arkadaşlık Sitesi
  • msn.com – Güncel İçerikli Arama Motoru
  • ebay.com – Alışveriş Sitesi
  • hotmail.com – E-mail Sitesi

Açık Kaynak (Open Source)

PHP: Evet

 ASP.NET: Hayır

Desktek Sitesi

PHP: http://php.net/ sitesi üzerinde;

  • Dökümantasyon
  • Kitaplar
  • Mail Listeleri
  • Haber Grupları
  • Kullanıcı Grupları
  • Olaylar & Eğitimler
  • Hazır Kaynak Merkezi
  • PHP.net Webmasterları

[Kaynak]

 ASP.NET: http://www.asp.net/ sitesi üzerinde;

  • Dersleri izleyin
  • Dökümantasyonu okuyun
  • Bing’i Kullanın
  • Uzmanlara danışın ve
  • Bizzat Microsoft’tan yardım alın.

[Kaynak]

Hepsi bu kadar arkadaşlar bakın okuyun hangisini kullanacağınıza siz karar verin lakin birinde takılı kalmayın ikisini de öğrenmekte fayda var. Bir sonraki makalemde görüşmek üzere.

Yazar
Yazar
Bilgisayar Programcısı, Web Tasarımcı, Üniversite Öğrencisi...
Twitter Facebook Google Linkedin Flickr YouTube

Önceki Yazı:Cookie Nasıl Oluşturulur ve Okuma İşlemi Nasıl Yapılır?

Sonraki Yazı:VGA, DVI ve HDMI Arasında Ne Fark Var?

YORUMLAR

Bu yazıya 2 yorum yapılmış.

  1. Yazar
    Efe

    İş bulma açısından tabii ki Asp.NET bilmek daha ağırlıklı firmalaın genelde ilk sorduğu Asp.NET dilini biliyor musun oluyor. Ama yine dediğiniz gibi Php bilgisine de sahip olmak gerekiyor. Makaleniz için teşekkür ederiz güzel bilgilendirme.

  2. Yazar
    Ali Fırat Güler

    İki dilide kullanan birisi olarak söylemek isterimki. Asp.net standart olarak gelirken bir çok kolaylıkla geliyor zaten. Bu yüzden bir programcı zahmete girmeden iş yapmak isterse asp.net kullanır. Fakat Ben çok temel bir dil istiyorum hertürlü sınıfı, fonksiyonu kendim yazacağım derse ozaman php kullanabilir.

    Yalnız asp.net hakkında bir yanlış bilgi var yazınızda. “Linuxta asp.net php den daha hızlı çalışıyor” yazmışssınız. Fakat Yanlışım varsa lütfen düzeltin ama asp.net Windovs dışında bir işletim sisteminde çalışmıyor diye biliyorum. çünki IIS sadece windovsta var.

    Eğer çalışıyorsa linuxta php den hızlı çalıştığı doğrudur. Çünki İkisi arasında fark var. Birisi istemci tarafından gerçekleştirilen her istekte okunup, parse edilip derlenip öyle çalıştırıyor, diğeri ise derlenmiş halde zaten. Direk çalıştırılıyor. Aradaki hız farkıda burdan ortaya çıkıyor. Asp.Net Yalın php den gerçekten yaklaşık 5 kat hızlıdır. Fakat dikkatinizi çekerim yalın php den.

    Php gelirken yalın şekilde size gelir. Suncunuzun özelliklerine göre ayarlama yapılması, Her istekte tekrar parse edilmeyi ve derlenmeyi önlemek için “APC” eklentisi, Apache server yavaş kaldığı için apache yerine litespeed server kurulması v.s gibi bir çok işiniz var demektir.

    Fakat bunca uğraştan sonra phpye verdiğiniz emeğin karşılığını artık alabilirsiniz. Eğerki iyi bir optimizasyon + apc kullanmışsanız tadına varamayacağınız bir hız elde edersiniz. Asp.Net’e fark atabilirsiniz. (Tabii sizin nasıl bir algoritma kullandığınızada bağlı bu hız)

    Asp.Net için durum farklıdır;

    Asp.net programcıların işini acayyyip kolaylaştıran yeni bir teklonojidir.

    Asp.net sizin için bir çok şeyi kendisi yapar. Php gibi yalın değildir.

    Oturup kendiniz bir dünya sınıf yazmak zorunda değilsinizdir. Standart classları işinizi görecektir zaten. Hemde oldukça performanslı bir web projesi oluştururmuş olursunuz.

    Eğerki Ben hertürlü optimizasyonu yaparım, bir ton kod yazar emek harcarım Asp.Net cilere gıcığım microsoftu sevmiyorum Benim php’m daha hızlı olsun, yeterki performans olsun, Bilgisayarın başında kurur kalırım derseniz. Php ye çalışın. Eğerki Php de uzman olursanız kesinlikle göz altı torbalarınız çökmüş olur.

    Fakat;

    Abi ben facebookmuyum 750 milyon kişinin sürekli girip çıktığı bir web uygulaması yapacağım, Yerim hızını. Jet yapmıyoruz burda program yapıyoruz. Bizimkisi orta çaplı olucak. sağlam bir sistem olsun ve beni çok uğraştırmasınki kahvemi yudumladığım yerde 1 haftada işimi bitireyim. işimi kolaylaştırsın, bilgisayar başında oturmaktan bıktım dersenizde Ozaman sizin için Asp.Net öneririm.

    Herkese kolay gelsin 🙂

SİZ DE CEVAP YAZABİLİRSİNİZ
Bu yazı hakkında görüşünüzü belirtin.

ES Web Tasarım Web Tasarım Blog Teması Emre Supçin Bu tema ES Web Tasarım tarafından düzenlenmiştir. Hiçbir şekilde kopyalanamaz.