Closure, PHP'ye 5.3.0 ile gelmiş olan önemli bir özellik. Tam olarak ne olduğunu tanımlamam biraz zor, ancak tanımlamaya çalışacak olursam, isimsiz, fonksiyon görünümlü objeler olduklarını söyleyebilirim. Bu tanım size garip gelmiş olabilir, ama örnekleri inceleyince daha net anlayabileceğinizi düşünüyorum. Örneğin, alttaki gibi bir çağrıyı bir yerde görmüş ve anlam verememiş olabilirsiniz.

12 Ekim 2015

Generator PHP 5.5.0 ile gelmiş olan önemli bir yenilik olup, en basit ve net tanımı, memory'den (hafızadan) kazanım sağlayabileceğiniz iteratörler olduğudur. Açıkçası generator'ın önemini ben de başta pek idrak edememiştim, ancak daha sonradan çok büyük dosyalar üzerinde işlem yaparken, karşılaştığım memory problemleri, generator kullanmanın ne kadar önemli olduğunu bana acı bir şekilde öğretmişti.Burada da verilen en klişe, ama net olan örneği vereceğim. foreach (range(0, 1000000) as $number) {    echo $number;} Üstteki örnekte, 1'den 1000000'a kadar olan tüm numaraları yazdırıyorsunuz.

08 Ekim 2015

Trait, PHP 5.4.0 ile gelmiş, nesneye yönelik programlama konseptlerinden birisidir. Perl (roles), Scala (trait), Ruby (modules) gibi başka dillerde de trait kullanımı olmakla beraber, birçok kişi hala ne olduğunu tam olarak bilmemekte ve yeteri kadar kullanmamaktadır.Trait'in basit bir tanımını yapacak olursam, interface gibi, bir class'ın (sınıfın) neler yapabileceğini belirten, aynı zamanda da, class gibi, yöntemleri, implemented (uygulanmış) şekilde, direkt sağlayabilen kısmi sınıf uygulaması diyebilirim. Ne gibi durumlarda trait kullanmanız gerektiğini ise basit bir örnekle açıklayacağım. Düşünün ki User ve Article adında birbiriyle alakasız, amaçları farklı olan iki ayrı class'ınız var. Her ikisinde de slug (User için: Burak Özdemir -> burak-ozdemir, Article için: PHP'de Trait Kullanımı -> php-de-trait-kullanimi) üretmeniz lazım.

07 Ekim 2015

Bu yazıda, yeni kurulmuş Ubuntu 18.04 sunucusu üzerinde Firewall'ın aktifleştirilmesi ve fail2ban gibi paketler ile temel güvenlik ayarlarını nasıl yapabileceğinizi anlatacağım. Aslında yapacağım şey bir nevi Bryan Kennedy'nin makalesini Türkçe'ye biraz daha detaylı çevirerek anlatmak olacak, açıkçası ben de birçok temel şeyi bu makaleyle öğrenmiştim, dolayısıyla bu makaleyi Sunucu Güvenliğine Giriş - 101 dersi gibi görebilirsiniz. Sunucuya root olarak ilk seferinde bağlandığınızda, sizden yeni bir şifre isteyecektir. Herhangi bir şifrede yapmanız gerektiği gibi, yeni şifrenizi karmaşık şekilde ayarlayın, ileride herhangi bir şifreye ihtiyacımız olmamalı, tabii yine de not almayı unutmayın, gerekeceği durumlar (SSH ile bağlanamama ya da super user olmak istediğinizde gerekebilir) olabilir.

03 Ekim 2015

Interface birçok şekilde tanımlanabilir, ama şu ana kadar gördüğüm en sade ve net tanımlamayı yapacak olursam, bir objenin (nesnenin) bir başka objenin ne olduğuna bağlı olmaması, ama o objenin yapabildiklerine bağlı olmasını düzenleyen, objelerin karşılıklı anlaşması olarak düşünebilirsiniz. Ancak tabii ki bu tanım da yeterli kalmayabilir, o yüzden biraz daha bu kavramı gerçek hayattan bir örnekle açıklayacağım.İşe geç kaldınız ve evden en kısa sürede çıkmanız lazım, ancak eşiniz, siz tam çıkarken akşama ne yemek yapayım sorusunu soruyor, siz de herhangi bir şey yap, yeter ki yiyebilelim diye geçiştirip çıkıyorsunuz. Yani eşinize ne yapması gerektiğini belirtmeyip, özellik (interface) belirterek eşinizin üreteceği çıktının (objenin), yenilebilir özelliğe sahip herhangi bir şey olmasını bekliyorsunuz.

02 Ekim 2015

PHP ile ilgili yazılmış kaynakların birçoğu ne yazık ki modern standartların çok gerisinde ve herhangi bir arama motoru sorgusunda en üstte çıkarak birçok yeni kullanıcının gelişimini olumsuz etkilemekte. Daha da kötüsü, Türkçe kaynak sayısı az olduğu gibi, daha büyük ve geri dönülemeyecek hatalara sebebiyet verebilecek yanlış yönlendirmelerle dolu. Doğal olarak da bu durum ülkemizde birçok insanın PHP konusunda olumsuz düşüncelere sahip olmasında büyük bir etken oluyor.

01 Ekim 2015

One may be confused about two similar words, Turkic and Turkish; even most people who are living in Turkey do not understand the difference. Although they look like synonyms, those are two different words, defining two different cultures, and behind the scenes, the difference has started to occur after Turkic people have chosen Islam over Tengrism.Before Islam, the widest Turkic belief was Tengrism. The first written sources for Turkic history, written by Asiatic descendants, was Old Turkic Orkhon inscriptions; show Turkic people had a belief in the Tengri, who was described as god of the Turks, whereas his domain was over the sky.

22 August 2015