İNTERNET PROGRAMCILIĞI
Etkileşimli web sayfaları oluşturmak için internet programcılığı kullanılmaktadır. İnternet programcılığı ile daha az kod yazarak birden çok işlem yapabiliriz. Örneğin; birden yüze kadar olan sayıları html kullanarak alt alta yazdırmak istediğinizde 100 satırlık kod yazmak gerekirken; programlama dilleri ile bu işlemi 5-10 satırda yapabilmekteyiz.
Çalışma şekli bakımından iki tür web sayfası vardır. Birincisi sadece istemci tarafından yorumlanan sayfalar, ikincisi ise sunucu tarafından yorumlanan sayfalardır. İstemciden gelen taleplere cevap veren bilgisayarlara sunucu denir. Web Server (Web Sunucu) istemciden gelen bu talebe bağlı olarak sayfanın sunucu tarafından yorumlanıp yorumlanmayacağına karar vererek gerekli işlemleri yürütür.
Kullanıcı ile etkileşime geçmek için dinamik web siteleri programlanırken yazdığımız kodların bir kısmı Server Side (Sunucu Taraflı) bir kısmı ise Client Side (İstemci Taraflı) çalışmaktadır. Daha açıklayıcı olmak gerekirse işlemler web sayfasının çağrıldığı istemci bilgisayarında yapılıp sonuçlar sunucuya gönderiliyorsa Client Side, istemciden aldığı verilerle işlemler sunucuda yapılıp sonuç istemciye gönderiliyorsa Server Side taraflı programlamadan bahsediyor olacağız.
SERVER SIDE PROGRAMMING (SUNUCU TARAFLI PROGRAMLAMA):
Yazılan kodların Client tarafında browser’ a gitmeden Server Side da çalıştığı kodlama tarzıdır. Server Side Programlamada kodlar sunucu üzerinde çalışır ve sonuçlar HTML olarak Client tarafına (browser) gönderilir. Sunucu üzerinde çalışan kodların sonuçları HTML çıktısı olarak browser’ a gönderildiği için hangi browser olursa olsun (IE, Chrome, Mozilla, Firefox) sorunsuz çalışacaktır.
Server Side çalışan kodlamalar aşağıdaki dillerde yapılır.
- C, C#, C++, VB
- Java, Perl, Python, Ruby
- ASP, PHP
- Node.js (Javascript’in Sunucu tarafında çalışan halidir. Client side değil, Server Side Çalışır)(express.js)
CLIENT SIDE PROGRAMMING (İSTEMCİ TARAFLI PROGRAMLAMA):
Yazılan kodların Client tarafında browser üzerinde çalıştığı kodlama tarzıdır. Bunun en güzel örneği Javascript kodlarıdır. Bu kodlar sunucuda çalışmaz, browser tarafından yorumlanırlar. Yapılan işlem, sunucuyla irtibata geçmeden Client bilgisayarında çalışıp sonuç ekrana basılır.
Client Side çalışan kodlamalar aşağıdaki dillerde yazılır.
- HTML, AJAX
- Javascript (Hemen hemen tüm tarayıcılarda desteklenmektedir)
- VBScript, JScript, CSS
- Flash, Silverlight
AÇIK KAYNAK KODLU PROGRAMLAMA
Açık Kaynak kavramı, en basit tabiriyle; kaynak kodlarının herkesin erişimine açık bırakıldığı, ücretsiz ve her türlü modifikasyona müsaade eden programlar için kullanılır. Asıl yaratılma amacı, programlamayla uğraşan insanlar için özgür bir altyapı oluşturmak ve kat ettikleri gelişmenin herkese ulaşabilmesini sağlamaktır.
Bu tür yazılımların ayırt edici özelliği kullanıcıya yazılımı değiştirme özgürlüğü sağlamasıdır. Açık kaynak kodlu yazılımlar, uyarlanabilir, sağlam, hızlı ve güvenlidir. Açık kaynak kod dünyası, yeni bir yazılım üretme biçimi, yeni iş modelleri sunmaktadır. Dünyanın her tarafından bilişim uzmanlarınca imece yöntemi ile endüstri standartlarında geliştirilen açık kaynak kod yazılımları, insanlığın ortak malıdır.
Programcılar yazılımları geliştirirken kullandıkları programlama dilleriyle kaynak dosyaları oluştururlar. Daha sonra derlemeli dillerde (C, C++, Java, Pascal) bu dosyayı derleyerek çalıştırılabilir hale çevirirler. Açık kaynaklı yazılım savunucuları her üretilen ve dağıtılan programla birlikte kaynak kodunun da dağıtılmasını savunurlar. Bu sayede geliştirme esnasında ve ilerde yeni sürümlerin ortaya çıkması esnasında daha çok sayıda gözün süzgecinden geçmiş daha kaliteli bir yazılım çıktığını düşünürler.
Open Source Initiative adlı kamu derneğinin tanımına göre; açık kaynak kodlu bilgisayar programları, yazılım konusundaki bilgilerini yaratıcı bir şekilde ortaya koymak isteyen kitlelerin bunu daha zahmetsiz bir biçimde, çeşitli telif haklarına ve finansal yaptırımlara takılmadan başarabilmesinin en güvenilir yoludur.
AÇIK KAYNAK KODLU PLATFORMLARIN LİSANSLI DİLLERE GÖRE AVANTAJLARI NELERDİR?
Açık kaynak kodlu programlama dillerinin tercih edilmesine sebep olan en büyük neden, yaratmak istediğiniz projenin ihtiyaçlarına göre gerekli değişiklikleri yapabilmenize olanak tanımalarıdır. Öte yandan lisanslı diller ise sadece hak sahibinin izin verdiği ölçüde modifikasyonlara izin verir.
Açık kaynak kodlu yazılımlar sürekli olarak sizin gibi diğer programlama uzmanlarınca gözden geçirilir. Böylelikle karşınıza çeşitli bug’ ların (yazılımsal hata) çıkma olasılığı daha düşüktür ve var olan bug’ların giderilmesi de çok daha hızlı gerçekleşir.
Açık kaynak kodlu programların birçoğunda farklı dillere çeviri yapılmasına müsaade eden bir altyapı vardır. Böylelikle farklı platformlara ve işletim sistemlerine yönelik değişiklikler yapmak istediğinizde baştan başlamanıza gerek kalmayacaktır.
HANGİ AÇIK KAYNAK PLATFORMUNU TERCİH ETMELİYİM?
Bir programlama dili seçerken öncelikle ne gibi bir amaca yöneldiğinizi hesaba katmanız gerekir. Zira her platformun farklı alanlarda sunduğu avantajları ve eksiklikleri söz konusudur. Dolayısıyla hem performans hem de kullanım kolaylığı açısından doğru tercihi yapmanız büyük bir önem arz etmektedir.
Bu noktada birkaç somut örnek vermek gerekirse; özellikle web sitesi tasarımlarında oldukça esnek bir dil sunmasından ötürü JavaScript’ i bu alanda ön plana koyarak başlayabiliriz. Eğer Apple ürünlerine ve iOS uygulamalarına ilgi duyuyorsanız, Swift platformunun bu amaca yönelik optimizasyonu işinizi ciddi anlamda kolaylaştıracaktır. Öte yandan masaüstü uygulamaların diğer platformlarla uyumluluk göstermesini beklediğiniz projelerde, özellikle programlamaya yeni başlayan kullanıcılar için sıklıkla önerilen Python’ı tercih edebilirsiniz. Oyun tasarımlarında bağımsız projeler geliştirmek isteyenler için büyük kolaylıklar sağlayan Unity platformunun da altını çizmiş olalım. Son olarak ise web programcılığı ile uğraşıyorsanız PHP web programlama dilini tercih edebilirsiniz.
Dersin işlenişinde açık kaynak kodlu ve ücretsiz oluşu nedeni ile PHP programlama dili kullanılacaktır.
GEREKLİ PROGRAMLAR
Bilgisayarınızda; PHP web programlama dilini kullanarak web sayfası hazırlayacaksanız ya da PHP web programlama dili kullanılarak hazırlanmış Joomla, WordPress, Drupal vb.. içerik yönetim sistemlerini (CMS – İYS) kullanmak isterseniz, bilgisayarımızı bu sayfaları çalıştırabileceğimiz bir WEB SERVER a çevirmemiz gerekir. Bilgisayarımızın PHP sayfaları çalıştırabilmesi için;
- PHP web programlama dili
- Apache Web Server
- MySQL veri tabanı (sadece veri tabanı uygulamaları için gerekli)
yazılımlarının bilgisayarımızda yüklü olması gerekir. Bahsi geçen 3 yazılımında ortak özelliği ÜCRETSİZ (AÇIK KAYNAK KODLU) oluşudur. Dolayısı ile tüm bu yazılımları kendi web sitelerinden indirerek ayrı ayrı kurabileceğimiz gibi istersek bu 3 yazılımı da bünyesinde barındıran Wamp – Xampp – EasyPHP vb. hazır kurulum paketlerinden birini tercih edebiliriz. Biz bu hazır paketler içerisinden WAMP kurulum paketini tercih ettik. Wamp adını bu üç ayrı sunucu oluşturma yazılımlarından alıyor. Windows Apache Mysql ve PHP.
Wamp’ ı tercih etmemizin başlıca nedenleri;
- Türkçe Dil desteği olması
- Uygulamalar ve klasörlere erişmek için hazır kısayollar bulunması
- Eklenti yüklemenin kolay olması
Olarak sayılabilir.
WAMP SERVER KURULUMU
1. Kullandığınız arama motorunda WAMP SERVER yazarak arama yapıyoruz. Arama sonucu karşımıza çıkan ilk site linkine tıklıyoruz.
2. Açılan sayfada DOWNLOAD seçeneğine tıklıyoruz. İşletim sistemimizin türüne göre 32 yada 64 bitlik versiyonu bilgisayarımıza indiriyoruz.
3. Yükleme yapacağımız sistem 64 Bit olduğu için bu sürüm ile devam edilmiştir.
4. İşletim sistemimize uygun dosyayı bilgisayarımıza indiriyoruz.
5. Yükleme otomatik olarak başlamaz ise ya da yüklemede bir sorun oluştu ise. Açılan sayfadan FILES bölümünden istediğimiz sürüme ait dosyaları yükleyebiliriz.
6. İndirme tamamlandıktan sonra bilgisayara indirdiğimiz dosyayı çalıştırıyoruz. Dil seçimi yaparak yükleme işlemini başlatıyoruz.
7. Lisans anlaşmasını kabul ederek kuruluma devam ediyoruz.
8. Yükleme ile ilgili bilgilendirmeleri okuduktan sonra kuruluma devam ediyoruz.
9. Programın yükleneceği klasörü belirliyoruz. Kurulum standart olarak C:\wamp klasörüne yapılacaktır.
10. Yükleme yapacağımız paketleri seçiyoruz. Kurulum gerçekleştirildikten sonra ihtiyaç halinde bu paketler sonradan da yüklenebileceği için bu aşamada bir değişiklik yapmadan kuruluma devam ediyoruz.
11. Başlat Menüsüne eklenecek Klasörün ismini belirleyerek kuruluma devam ediyoruz.
12. Yükleme yapılacak paketler hakkında bilgi veriliyor. INSTALL diyerek dosyaların bilgisayarımıza yüklenmesine başlıyoruz.
13. Dosyalar bilgisayarınıza yüklenirken bekliyoruz.
14. Yükleme devam ederken bizden dosyaları görüntülemek için hangi tarayıcıyı kullanacağımızı belirlememizi istiyor. Bu aşamada bilgisayarınızda INTERNET EXPLORER var ise otomatik olarak kurulumda ayarlanıyor. Bu tarayıcı ile devam etmek istiyorsanız HAYIR diyerek kuruluma devam edebilirsiniz. Chrome – Firefox – Opera benzeri başka bir tarayıcı kullanacak iseniz EVET diyerek bu tarayıcıyı kurulum aşamasında belirtmeniz gerekir. Bu aşamayı görebilmek için biz EVET diyerek kuruluma devam ediyoruz.
15. Bilgisayarımda yüklü CHROME tarayıcısının yolunu göstererek sayfaları bu tarayıcıda görüntülemek istediğimi belirttim.
16. Yükleme devam ederken bizden dosyaları düzenlemek için hangi editörü kullanacağımızı belirlememizi istiyor. Bu aşamada bilgisayarınızda NOT DEFTERİ var ise otomatik olarak kurulumda ayarlanıyor. Bu editör ile devam etmek istiyorsanız HAYIR diyerek kuruluma devam edebilirsiniz. Dreamviewer – Notepad++ benzeri başka bir editör kullanacak iseniz EVET diyerek bu editörü kurulum aşamasında belirtmeniz gerekir. Bu aşamayı görebilmek için biz EVET diyerek kuruluma devam ediyoruz.
17. Bilgisayarımda yüklü NOTEPAD++ editörünün yolunu göstererek sayfaları bu editörde düzenlemek istediğimi belirttim.
18. Sisteme yüklenmiş uygulamalarla ilgili bilgilendirme dosyalarının yolu hakkında bilgi veriliyor. NEXT diyerek kuruluma devam ediyoruz.
19. FINISH diyerek kurulumu tamamlıyoruz.
20. Programı çalıştırdığınızda; WAMP Server sorunsuz bir şekilde kuruldu ve bilgisayarınızda başka bir server / servis (IIS) yüklü değil ise tüm servisler başlayacak ve programa ait simge görev çubuğunda YEŞİL olarak belirecektir.
21. Kurulum İngilizce olmasına rağmen WAMP Server Türkçe dilini desteklemektedir. Dili Türkçe yapmak için görev çubuğunda bulunan simgeye SAĞ TUŞLA tıkladıktan sonra açılan menüden LANGUAGE altında yer alan TÜRKÇE seçeneğini işaretliyoruz.
22. Kurulum işlemi bitmiş ve WAMP sisteminize sorunsuz bir şekilde yüklenmiş ise Wamp simgesine SOL TUŞLA tıklayarak WWW KLASÖRÜ nü açarak php sayfalarımızı kodlamaya başlayabiliriz.
KARŞILAŞTILAN HATALARIN GİDERİLMESİ
23. Kurulum aşamasında bazen sorunlar yaşanabiliyor. Bunun temel nedeni Windows işletim sisteminin bazı programları çalıştırabilmek için bilgisayarlarda çeşitli kütüphane dosyalarının yüklü olmasını istemesidir. Bilgisayarınızda bu kütüphane programları yüklü değilse kurulum sırasında aşağıdaki hataları alabilirsiniz.
- php-win.exe – MSVCR110.dll Hatası
- exe – VCRUNTIME140.dll Hatası
- exe – MSVCR110.dll Hatası
Bu sorunları çözebilmek için;
- Yüklediğiniz Wamp Server programını bilgisayarınızdan kaldırınız.
- Gerekli kütüphane programlarını işletim sisteminizin türüne göre yükleyiniz.
- 32 Bit ise sadece x86 olanları
- 64 Bit ise önce x86 sonra x64 olanını
- Wamp programını tekrar yükleyiniz.
24. Tüm kurulum aşamaları sorunsuz bir şekilde devam eder ve tüm servisler sorunsuz bir şekilde çalışır ise WAMP simgesi YEŞİL renk alacaktır. Servislerden herhangi bir tanesi çalışmaz veya sorun olursa WAMP simgesi SARI ya da KIRMIZI renk alacaktır. Bu durumda Wamp simgesine SAĞ TUŞ ile tıklayarak açılan menüde yer alan TOOLS menüsünde yer alan araçları kullanarak servisleri test edebilirsiniz.
25. Bu sorunun muhtemel nedeni bilgisayarınızda Apache Web Server’ın kullandığı 80 numaralı portu başka bir yazılımın kullanmasıdır. Bu sorunu çözmek için görev çubuğunda bulunan WAMP simgesine SOL TUŞ ile tıklayıp açılan menüde APACHE seçeneği altında yer alan httpd.conf seçeneğine tıklıyoruz.
26. Açılan dosyada aşağıdaki satırları aratıyoruz ve 80 yazan port numarasını boşta bulunan başka bir port ile değiştiriyoruz. (örnekte 8080 olarak değiştirilmiştir)
Dosya not defteri ile açılırsa düzenli bir şekilde görüntülenmeyebilir. Wordpad – Notepad++ vb.. başka bir editör yardımı ile açılırsa daha rahat işlem yapılacaktır. Dosya yolu alttaki resimde görüldüğü gibi (kurulum aşamasında yol değiştirilmedi ise) C:\wamp64\bin\apache\apache2.4.46\conf tur.
27. Değişiklikleri yapıp dosyayı kaydettikten sonra. Görev çubuğunda bulunan Wamp Server simgesine SOL TUŞLA tıklayıp açılan menüden BÜTÜN SERVİSLERİ YENİDEN BAŞLAT seçeneğine tıkladığımızda WAMP simgesi YEŞİL olacak ve tüm servisler sorunsuz bir şekilde başlatılacaktır.
Eğer herhangi bir port değişikliği yapmadıysanız internet tarayıcı yazılımınıza LOCALHOST yazdığınızda Web Server ana dizinine ulaşacaksınız. Port değişikliği yaptıysanız LOCALHOST kelimesinin sonuna : (iki nokta üst üste) koyarak değiştirdiğiniz port adresini yazmanız gerekmektedir. (LOCALHOST:8080 gibi)
İndirme Linkleri :
Visual C++ Redistributable İndirme Sitesi : https://support.microsoft.com/tr-tr/help/2977003/the-latest-supported-visual-c-downloads
Wamp Server Sürümleri İndirme Sitesi : https://sourceforge.net/projects/wampserver/files/