Günümzde OOP yani Nesne Yönelimli Programlama iyice hayatımızda yerini aldı. Ben bu makale de size OOP ile birlikte hayatımıza girmiş olan bu kavramlardan değinmek istiyorum. Bir çok konu başlığını tek makaleye toplamak ne kadar doğru bilmiyorum ama bi çırpıda hepsi aradan çıksın istiyorum. Küçük küçük örnekler vererek detaylandırmaya çalışacağım…
IT Sektörü İçindekiler
PHP, Mysql, Oracle, Javascript, Mobil programlama, Cache, Server Yönetimine ve kurulumu ve daha pek çok sektörel bilgiyi içinde barındıran yazılarıma bu kategoriden ulaşabilirsiniz
Design Pattern yani tasarım desenleri nedir? PHP ile ele alalım..
StandardÇoğu insanın duyduğu bir kavram olsa gerek design pattern ler yani tasarım desenleri veya wiki deki tabiri ile tasarım örüntüleri.. Her neyse işte, bu makalede tasarım desenlerini ve basit bir kaç kullanımını ele alacağız..
Git nedir? Faydaları ve Kullanımı
StandardGit nedir? Ne işe yarar? Faydaları nelerdir? Ve tabiki git komutlarından bahsedeceğim bu makalemde size..
Harita üzerinde hareket ettiğiniz rotayı çizmek
StandardTitanium Mobile ile yazılım geliştiriyorsanız ve harita üzerinde gittiğiniz tüm yolu çizdirmek gibi bir isteğiniz varsa tam istediğiniz yerdesiniz..
PHP ve Mongo DB ile çalışmak..
StandardDaha önceki iki makalemizde MongoDB kurmanın yollarından ve MongoDB nedir kısaca bahsetmiştim sizlere. Şimdi ise php ile mongo bağlantısını kurup bir kaç küçük örnek ile kafanızdaki sorulara yanıt vermeye çalışacağım..
PDO yani PHP Data Object
StandardPHP 5.1'den itibaren hayatımıza girmiş olan ve başlıktan da anlaşılacağı gibi PDO yani PHP Data Object nedir? Avantajları nelerdir? Biraz detaylandırarak kullanımını ele alacağız...
NoSql ve MongoDB Nedir? MongoDB Kurulumu
StandardArkadaşlar selam, bir önceki makalemde homebrew nedir ve homebrew ile mongo kurmayı anlatmıştım sizlere.
Şimdi ise git üzerinden klonlarayarak kopyalama konusuna değineceğim, ama önce nedir bu mongodb oradan başlayalım isterseniz.
NoSql (Not Only SQL) kavramı ile hayatımıza girmiş olan mongodb, C++ ile yazılmış açık kaynaklı ilişkisel olmayan ve önde gelen NoSQL veritabanıdır.
Veriler, JSON döküman yapısında ve hiyerarşik olarak saklanır. Büyük ölçekli uygulamalar için tasarlanmıştır.
Konu konu açıyor, hemen nosql nedir ondan da bahsedelim eksik kalmasın; ilişkisel veritabanları ve modern yazılım geliştirmenin eksiklerini gidermek amacıyla gelmiştir.
NoSQL ile çalışırken alışmış olduğumuz ilişkisel veritabanlarımızdaki gibi verilerimizi satır satır saklamaya ve diğer tablolarla ilişkilendirip tanımlamalarımızı yapmıyoruz.
Veriler JSON ya da XML formatında saklanıyor.
Ancak burada dikkat edilmesi gereken nokta NoSQL, Fire and Forget prensibi ile çalıştığı için bankacılık vb. kritik uygulamalarda kullanılmamalıdır. Aksine verinin 100% önemli olmadığı durumlarda kullanılabilir.
Bu kısa bilgiden sonra isterseniz kuruluma geçelim..
Terminal üzerinde kurulum işlemine başlayalım;
Önce brew install mongo ile veya apt-get install mongo komutları ile mongodb kuralım sisteme..
Dilerseniz aşağıdaki linkten homebrew ile mac üzerinde kurulum yapabilirsiniz, zira apt-get çalışmayacaktır.
Homebrew nedir? Homebrew Kurulumu ve Homebrew ile mongo db kurulumu
Sonra aşağıdaki şekilde mongo php driver kurup tanıtalım sisteme..
$ git clone git://github.com/mongodb/mongo-php-driver.git $ brew install autoconf $ cd mongo-php-driver/ $ phpize $ ./configure $ make $ sudo make install
Homebrew nedir? Homebrew Kurulumu ve Homebrew ile mongo db kurulumu
StandardHomebrew nedir? Homebrew Mac OS X işletim sistemi üzerinde yazılım kurulumunu kolaylaştıran bir paket yönetim sistemidir. Fink ve Macports a benzer.
Örnek vermek gerekirse bilgisayarınıza mongo db kuracaksınız. Homebrew ile çok kısa ve hızlı şekilde kurabilirsiniz.
Daha uzatmadan direk işe koyulalım ve Homebrew kurulumuna geçelim isterseniz.
Aşaığdaki kodu yazıyoruz konsolumuza ve bize değişiklik olacak dosyaları söyleyip onay isteyecek. Yani örnek çıktımız da kodun altındadır..
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Kısaca ElasticSearch Nedir ve Kurulumu
StandardElasticSearch nedir ve nasıl kurulur?
Git “Command Not Found” Hatası
StandardArkadaşlar git üzerinden kendinize klonlama yapmak istediğinizde bu fonksiyonu terminalde çalıştırmayı denediğiniz zaman commant not found gibi hatalar alabilirsiniz.
PHP ve MYSQL ile rastgele kayıt çektirmenin yolları
StandardAslında herkesin ihtiyacı olan ve sürekli kullanılan rastgele kayıt seçme işlemi için bir çoğumuz SQL içersinde ORDER BY RAND() fonksiyonu kullanarak bu işlemi hallediyoruz. . Ancak veritabanındaki kayıtlar büyüdükçe bu şekilde yapmanız işlemi zorlaştıracak, sayfanızı yavaşlatacaktır. Bu işlem için farklı yöntemleri ele alalım..
PHP de türkçe karakterleri ingilizce karakterlere çevirelim
StandardPHP de Türkçe karakterleri ingilizce karakterlere çevirmek için klasik yoldan yazılmış ama işinizi görecek bir fonksiyon...
Türkçe Ülke Listesi
StandardDizi şeklinde ülke listesi arıyorsanız doğru yerdesiniz, hemde ülke isimleri Türkçe..
HTML5 ve Web Storage
StandardHTML 5 ile web sayfaları kullanıcıların browserların da local data depolayabilir hale geldi. Bu size sayfalarda bazı dataları saklayabileceğiniz gibi native mobil uygulama yapmak yerine html5 tabanlı yapılan uygulamalarda sqlite olmadan data saklamanıza da olanak tanıyacaktır 😉 Veriler key/value şeklinde saklanıyor ve web sayfaları sadece kendi oluşturdukları verilere erişebiliyorlar.
Web storage Internet Explorer 8+, Firefox, Opera, Chrome, ve Safari tarafından destekleniyor. Internet Explorer 7 ve eski versiyonları desteklemiyor.
PHP ve NameSpace Kullanımı
StandardMerhaba arkadaşlar,
Bugün hayatımıza php 5.3 ile birlikte giren bir yeniliği geçte olsa size bahsetmek isterim. NameSpace yani yani İsim Alanları..
Peki neye yarar? PHP’de benzer isimdeki class,constant ve function’ları aynı sayfa/proje içerisinde kullanmamızı sağlar ve daha okunabilir ve anlamlı object mimarileri kurmamızı sağlar. Windows File System olarak kafanızda canlandırabilirsiniz. C:\Onur\test.txt dosyasını düşünelim; aynı dosyadan bir tane daha koymamız durumunda hata verecektir ve üzerine yazacaktır ama C:\Tester\test.txt şeklinde koyarsak aynı sürücüde farklı dizinlerde aynı isimde farklı dosyalar olabilir. İşte buradaki Onur ve Tester dizinlerini namespace gibi canlandırabilirsiniz gözünüzde.
Heman bir örnek ile somutlaştırmak istiyorum;
<?php ######----ONUR CANALP----#### ## NAMESPACES ## ## 25.07.2013 ## ############################# // "Personel" isminde bir namespace tanımlıyorum. namespace Personel; // "Personel" namespace'i içinde "Temizlik" sınıfı oluşturuyorum. Class Temizlik { // "Temizlik" sınıfı içinde "oku" isminde bir fonksiyon oluşturuyorum. public function oku() { return 'Personel namespace içindeki Temizlik çalışanları'; } } Class Teknik { // "Feed" sınıfı içinde "oku" isminde bir fonksiyon oluşturuyorum. public function oku() { return 'Personel namespace içindeki Teknik çalışanlar'; } } // "Yoneticiler" isminde bir namespace tanımlıyorum. namespace Yoneticiler; // "Yoneticiler" namespace'i içinde "Temizlik" sınıfı oluşturuyorum. Class Temizlik { // "Temizlik" sınıfı içinde "oku" isminde bir fonksiyon oluşturuyorum. public function oku() { return 'Yöneticiler namespace içindeki Temizlik çalışanlar'; } } Class Teknik { // "Teknik" sınıfı içinde "oku" isminde bir fonksiyon oluşturuyorum. public function oku() { return 'Yöneticiler namespace içindeki teknik çalışanlar'; } } // "Personel" namespace'i içinde bulunan "Temizlik" Sınıfını tanımlıyorum. $temizlik1 = new \Personel\Temizlik; // "Temizlik" namespace'i içinde bulunan "Temizlik" Sınıfını tanımlıyorum. $temizlik2 = new \Yoneticiler\Temizlik; // "Personel" namespace'i içinde bulunan "Teknik" Sınıfını tanımlıyorum. $teknik1 = new \Personel\Teknik; // "Temizlik" namespace'i içinde bulunan "Teknik" Sınıfını tanımlıyorum. $teknik2 = new \Yoneticiler\Teknik; // Sınıfların içinde bulunan fonksiyonları çağırıyoruz ve sonucu ekrana basıyoruz. echo '<p>' . $temizlik1->oku() . '</p>'; echo '<p>' . $temizlik2->oku() . '</p>'; echo '<p>' . $teknik1->oku() . '</p>'; echo '<p>' . $teknik2->oku() . '</p>'; ?>