1. PHP 7 diline giriş
Bu belgedeki PDF, |BURADA| adresinde mevcuttur.
Bu belgedeki örnekler |BURADA| adresinde mevcuttur.
Bu belge, dört makaleden oluşan bir serinin parçasıdır:
- [Örneklerle PHP7 diline giriş (2019)]. Bu, elinizdeki belgedir;
- [ECMASCRIPT6 diline örneklerle giriş (2019)];
- [VUE.JS çerçevesine örneklerle giriş (2019)];
- [Örneklerle NUXT.JS Çerçevesine Giriş (2019)];
Bunların hepsi yeni başlayanlar için hazırlanmış belgelerdir. Makaleler arasında mantıksal bir akış vardır ancak birbirleriyle çok sıkı bir bağlantı yoktur:
- [1] belgesi, PHP 7 dilini tanıtmaktadır. Yalnızca PHP diliyle ilgilenen ve sonraki makalelerde yer alan JavaScript diliyle ilgilenmeyen okuyucu burada duracaktır;
- [2-4] belgeleri, [1] belgesinde geliştirilen vergi hesaplama sunucusu için bir JavaScript istemcisi oluşturmayı amaçlamaktadır;
- 3. ve 4. makalelerde yer alan [vue.js] ve [nuxt.js] JavaScript çerçeveleri, ECMASCRIPT'in en son sürümlerindeki JavaScript bilgisini gerektirir; bu sürümler 6. sürümdür. Dolayısıyla [2] belgesi, bu JavaScript sürümünü bilmeyenler için hazırlanmıştır. Bu belge, [1] belgesinde oluşturulan vergi hesaplama sunucusuna atıfta bulunmaktadır. [2] belgesini okuyanlar, zaman zaman [1] belgesine başvurmak zorunda kalabilirler;
- ECMASCRIPT 6'yı iyice öğrendikten sonra, SPA modunda (Tek Sayfalı Uygulama) tarayıcıda çalışan JavaScript istemcileri oluşturmaya olanak tanıyan VUE.JS çerçevesine geçilebilir. Bu, [3] belgesidir. Bu belge, hem [1] belgesinde oluşturulan vergi hesaplama sunucusuna hem de [2]'te oluşturulan bağımsız JavaScript istemci koduna atıfta bulunmaktadır. [3] belgesini inceleyen kişi, zaman zaman [1] ve [2] belgelerine başvurmak zorunda kalabilir;
- VUE.JS iyice öğrenildikten sonra, tarayıcıda SSR (Sunucu Tarafında İşlenmiş) modunda çalışan JavaScript istemcileri oluşturmaya olanak tanıyan NUXT.JS çerçevesine geçilebilir. Bu, hem [1] belgesinde oluşturulan vergi hesaplama sunucusuna, [2]'te oluşturulan bağımsız JavaScript istemci koduna ve [3] belgesinde geliştirilen [vue.js] uygulamasına atıfta bulunur. [4] belgesini okuyanlar, zaman zaman [1], [2] ve [3] belgelerine başvurmak zorunda kalabilirler;
Bu belge, çeşitli alanlarda (dil yapıları, dosyalara, veritabanlarına ve internete erişim) kullanılan PHP 7 konsol komut dosyalarının bir listesini sunmaktadır. Web programlama konusu, web hizmetleri aracılığıyla ele alınmaktadır. Bu belgede, düz metin üreten tüm web uygulamalarına “web hizmeti” adı verilmiştir. Bunlar, HTML, CSS ve JavaScript’in bir karışımı olan web sayfası sunucuları değil, veri sunucularıdır. Burada, klasik web programlamada da kullanılan klasik web kavramları (HTTP protokolü, jSON veya XML yanıtları, oturum yönetimi, kimlik doğrulama) ele alınmaktadır.
Günümüzde, istemci/sunucu modunda web uygulamaları geliştirmek yaygın bir uygulamadır:

- [1]'te, web tarayıcısı bir kullanıcıya yönelik web sayfalarını görüntüler [5, 7]. Bu sayfalar, bir veri web hizmetinin istemcisini [2] ve bir web sayfası parçacıkları sunucusunun istemcisini [3] uygulayan JavaScript kodları içerir. Bu alanda iyi bilinen bir JS çerçeve yapısı, Google’ın Angular 2’sidir (Mayıs 2019);
- [2]'te web sunucusu bir veri sunucusudur. Herhangi bir dilde yazılabilir. Belki ilk sefer hariç, geleneksel anlamda (HTML, CSS, Javascript) web sayfaları üretmez. Ancak bu ilk sayfa, geleneksel bir web sunucusundan ([3]; veri sunucusu değil) alınabilir. Başlangıç sayfasındaki Javascript, daha sonra görüntülenecek verileri [4] veri sunucusu olarak işlev gören web sunucusundan alarak uygulamanın çeşitli web sayfalarını oluşturacaktır. Ayrıca, bu verileri [3] web sayfası sunucusundan almak üzere [5] web sayfası parçalarını da temin edebilir;
- [4]'te kullanıcı bir eylem başlatır;
- [6,7]'te: web sayfası parçasıyla biçimlendirilmiş verileri alır;
Bu belgede, aşağıdaki yapıya sahip PHP7'te istemci/sunucu uygulamaları yazacağız:

Burada PHP ile yazılmış bir istemci/sunucu uygulaması bulunmaktadır. Bir [9] konsol komut dosyası, bir [4] veri sunucusuna sorgu gönderecektir. Burada veri hizmetini yazmak için öğrenilecekler, bir web uygulamasında yeniden kullanılabilir. PHP dilinde yazılmış veri hizmeti korunabilir ve PHP istemcisi ise bir JavaScript istemcisiyle değiştirilebilir.
Bu belgenin ana teması olarak, 13 farklı sürümde bir vergi hesaplama hizmeti oluşturacağız. 13. sürümün mimarisi şu şekilde olacaktır:

Sunucudaki [web] katmanı, MVC (Model – View – Controller) mimarisine sahip olacaktır. PHP 7 dersinin tamamı, bu sürümü oluşturmaya yöneliktir.
Bu belgedeki komut dosyaları açıklamalıdır ve konsol çıktıları da verilmiştir. Bazen ek açıklamalar da sunulmaktadır. Belge, aktif bir okuma gerektirir: bir komut dosyasını anlamak için hem kodunu, hem açıklamalarını hem de çalıştırma sonuçlarını okumak gerekir.
Serge Tahé, Temmuz 2019