Bu yazımızda PHP ve ASP.Net ile ilgili bir takım bilgiler vermeye ve aralarındaki farklılıklara, kullanım kolaylıklarına ve zorluklarına değinmeye çalışacağız.
İçindekiler
PHP ve ASP.Net
PHP (Personal Home Page) 1990 yılında Rasmus Lerdorf tarafından geliştirilmeye başlanan bir yazılımdır. Bu yazılımın başlangıçtaki amacı Lerdorf’un kişisel bilgilerini internet üzerinden diğer kullanıcılarla paylaşmak istemesiydi. Fakat o zamanın şartlarında web sayfası hazırlamak ve bunu yayınlamak günümüzdeki kadar kolay ve yaygın olamadığı için kişisel web sayfasının dolayısıyla da PHP’nin temelleri atılmış oldu. Lerdorf Perl dilinde başlattığı bu yazılımı daha sonra kurduğu bir grupla geliştirerek Perl dilinden bağımsız hale getirdi ve nesne odaklı bir dil haline getirdi.
Peki PHP Nedir ve Nasıl Öğrenilebilir?
Aslında PHP ile proje üreten insanlar çok iyi bilirler ki PHP öğrenilmesi zor bir yazılım değil. Sadece bütün web yazılımlarında olduğu gibi bunda da biraz olsun üzerinde denemeler yapmak gerekir. PHP, aslında içerisinde html kodlarının gömülü olduğu bir yapıya sahip. Üzerinde çalıştığımız projeleri .php veya kullandığımız sürüme göre .php2, .php3 şeklinde kaydedebiliriz. Bu da demek oluyor ki web sitemizi PHP kullanarak oluşturduysak adres kısmının sonunda kullandığımız sürüme göre .php yazıları çıkacaktır.
Aslında uzun bir süre çok tutulan PHP’nin en büyük dezavantajlarından birisi compile edilememesi yani derlenememesi. Bu ne demektir? Kullanıcılar bizim sitemize girmek istedikleri zaman istekleri direkt olarak kendi bilgisayarlarında gerçekleşmeyecektir. İstekleri öncelikle web sunucuya gidecek burada script yorumlayıcılar tarafından istekleri yorumlanınca tekrardan kullanıcıya bilgi gönderilecek. Yani kullanıcının her isteği için fazladan zaman kaybına yol açacaktır.
Bunun yanı sıra PHP’nin en güzel özelliklerinden birisi de oyun programı yazmaya kadar birçok amaca hitap ediyor olması. PHP’nin birçok veri tabanıyla uyumlu çalışabilmesi de ayrı bir avantaj tek sorun sanırım hem sunucuyu hem de kullanıcıları yorumlama kısmında biraz yorması.
Ve ASP.Net’e göre en büyük avantajı da bizleri Windows işletim sistemine mahkum etmemesi. Yani işletim sisteminiz ne olursa olsun PHP ile çalışabilmeniz mümkün.
Peki ASP.Net Nedir ve PHP’ye Göre Farklılıkları Nelerdir?
Asp.Net PHP’ye göre daha güçlü bir yazılım dili. Bunun en önemli sebeplerinden birisi de Asp.Net’in .Net platformu üyesi olması. Peki bu ne anlama geliyor? Microsoft Visual Studio ile projeler üretebileceğiniz ASP.Net, Visual Studio’nun bünyesinde bulunan birçok güçlü yazılım dillerinden herhangi biri ile çalışabilmenize imkan tanıyor. Bunun yanı sıra PHP’de bir çok hata ile baş etmek zorunda kalırsınız ve bu hataları tek tek ayıklamak da yine biz yazılımcılara düşüyor. Asp.Net’de hata ayıklama kısmını Visual Studio bizim yerimize yapıyor ve olası çözüm yolları üretiyor. Bize kalan sadece olası hayatı okumak ve çözüm yollarına şöyle bir göz atmak. Yani kaynak kodlarla uğraşmak yerine bunu Visual Studio’nun bizim için yapması sizce de güzel bir özellik değil mi?
Asp.Net‘in büyük avantajlarından birisi de compile edilebilmesi yani derlenebilmesi. Bu sayede Asp.Net ile oluşturduğumuz web projelerini yayınladığımız zaman kullanıcı herhangi bir bilgi istediğinde, sadece gerekli olan kısmı alır ve kullanıcıya gönderir. Bu da PHP’de sunucu ve kullanıcı arasında dokunan mekikten kaybettiğimiz zamanın geri kazanılması anlamına gelmektedir.
Yukarıda da belirttiğimiz gibi ASP.Net’in early binding ve catching services gibi özellikleri sayesinde PHP’den çok daha iyi bir performans sağladığını göz ardı edemeyiz. Ayrıca Microsoft Visual Studio’nun bize sağlamış olduğu zengin araç içeriğiyle de PHP’ye göre hem daha kapsamlı hem de daha kısa sürede bitirebileceğimiz projeleri yapmak mümkün.
Bunların dışında PHP’de kaynak kodlar da kullanıcıya html ile gönderilmekteydi. Bunun anlamı da şudur ki kötü niyetli insanlar sizin kaynak kodlarınızı istedikleri gibi kullanabilir ve sizin bin bir emekle yaptığınız projelere zarar verebilirlerdi. Fakat ASP.Net ile bu da engellenmiş durumda. Kaynak kodları kullanıcıya gönderilmiyor. ASP.Net PHP’ye göre hem hızlı hem de daha güvenilir diyebiliriz.
Bunca olumlu özelliğin yanında elbette Asp.Net’de de bazı sorunlar karşımıza çıkmakta. Bunlardan ilki ve en önemlilerinden birisi IIS(Internet Information Systems) güvenlik açıkları. Bunun hem .Net platformu sayesinde hem de projelerimizde getirdiğimiz kısıtlamalar sayesinde kısmen de olsa engellenmesi mümkün. Ama günden güne gelişen teknoloji ve zararlı yazılımlarla bunlar da aşılabilir hale getirilebilir.
Bir diğer olumsuz özelliği ise Microsoft’un kendi ürünlerini yayma çabasından mıdır bilinmez ama sunucu bilgisayarın işletim sisteminin Windows olması gerekmekte. Linux ve benzeri işletim sistemine sahip sunucularda ASP.Net’le yazılmış projelerimiz çalışmayacaktır.
Son olarak eklemek istediğimiz ise ASP.Net’in hem başlangıç hem de yayınlanmasının PHP’ye göre daha masraflı olması. Bunun en büyük nedenlerinden birisi projelerimize başlangıç noktasında Microsoft Visual Studio için belirli bir ücret ödemek zorunda kalmamız. Bir diğeri ise hosting maliyeti. Asp:net ile çalışıyorsanız Windows hosting almanız gerekli ki bu da diğerlerine oranla biraz daha pahalı.
Sonuç olarak gelişen teknolojiyi her ne koşulda olursa olsun takip etmek zorundayız. Projelerimize başlamadan önce hangi yazılımla çalışabileceğimizi belirlemek en önemli etkenlerden birisi. Çünkü kullanıcılar ve servis sağlayıcıları hem hızlı hem güvenilir hem de ekonomik anlamda ucuz maliyetli projeler üretmeye çalışmakta. Bize düşense sadece nereden başlayacağımızı bilmek ve bu istekler doğrultusunda projelerimizi maksimum düzeyde üretmeye çalışmak.
Türkiye’de hosting artık daha.net!
Bu yazıyı yararlı buldunuz mu ?