lostyazilim
tr.link

Php MVC yapısı ve Codeigniter kullanımı

7 Mesajlar 6.589 Okunma
acebozum
tr.link

YazilimPortal YazilimPortal WM Aracı Kullanıcı
  • Üyelik 20.01.2012
  • Yaş/Cinsiyet - / E
  • Meslek Bilgisayar Mühendisi
  • Konum
  • Ad Soyad ** **
  • Mesajlar 9
  • Beğeniler 0 / 1
  • Ticaret 0, (%0)
Merhabalar, yakın zamanda bir proje için codeigniter kullanmaya başladım. Şuan geliştiricisi tarafından sorunlar yaşayan codeigniter mükemmel bir php framework. Geliştirilmeye açık ve kolay bir yapısı var. Bu yazı ile birlikte yazılımportal’da codeigniter ile nesne yönelimli php kodlama örnekleri vereceğim. Bir kaç yazı daha yazmayı planlıyorum. Bu yazılarla birlikte okurlarımızın codeigniter ile proje geliştirebilecek seviyeye gelmesini sağlayacağız. Bu yazıda temel bilgilerden başlayarak codeigniter ortamı ile tanışacağız.

MVC , Framework kavramları nedir ?

MVC , model – view – controller kelimelerinin ingilizce baş harflerinden oluşan bir terim. Framework ise türkçeye çatı olarak çevrilmekte. Programlama dünyasında mvc ve framework nedir dersek kısaca açıklayalım.

Model : Uygulamanın iş mantığı burada çalıştırılır. Controller tarafından gelen işler burada çalıştırılıp geri döndürülür yani bir iş modeli için fonksiyonlarınız burada tutulur. İş modeli örneği ; bir blog sistemindeki blog yazıları için oluşturulan model adı yazılar olsun. Model dosyanız içinde yazılarla ilgili işlemleri yaparsınız ( sil , ekle , düzenle , yayınla gibi).
Controller : Uygulamadaki karar mekanizmasıdır. Belirlediğiniz süzgeçlerle hangi içeriğin gösterileceği ve işleneceğine karar veren mekanizmaları burada yazarız. Örneğin anasayfada blog yazıları listelenmesi gerekiyorsa modelinizi controllerınızda çağırırsınız.
View : Uygulamanın kullanıcıya gösterilen kodları burada yazılır. Yani işlenen verilerinizi bastığınız kısım viewde tutulur. Html , css , jquery kodlarınız view içerisindeki template dosyalarınızda yazılır.
MVC dediğimizde artık kafanızda ufak bir şema oluşuyor olması gerekir. Basitçe özetlersek Controllerınız bir karar verir. Karardan alınan içerik modeller ile işlenir ve View de bulunan tema dosyalarınızla kullanıcıya gösterilir.

Bu yapı karmaşık ve iç içe olan kodlamanın önüne geçerek hem uygulamaya esneklik hemde yazılımcıya çalışmasında kolaylık sağlamaktadır.

Framework ise MVC yapılarını kullanarak bir çok gelişmiş özelliği içinde barındıran hazır bir çalışma alanıdır. Sizin için belirli fonksiyonları önceden hazırlamış ve size mvc yapısını kurarak projenizi kodlayacak bir tezgah sunmaktadır. Evet framework bana göre bir tezgah gibidir. Üzerinde her türlü faydalı aleti bulundurduğunuz gerektiğinde kolayca ulaştığınız bir tezgah.

Frameworklerin faydaları (tıklayın)

Codeigniter Kurulumu

Codeigniter ile çalışmak için bir php sunucunuz olmalıdır. Local makine üzerine php sunucu kurmak için öncelikle bu yazıyı okumalısınız. Daha sonra http://ellislab.com/codeigniter adresinden son sürümünü indirip www dizinine dosyalarınızı çıkartın. Her hangi bir ayara gerek duymadan kullanmaya başlayabilirsiniz.

Codeigniter dosya yapısını tanıyalım

System : Fw geliştiricileri için hazırlanmış ve bizim pek işimiz olmayan bir klasör. Sistemin işleyişi ile alakalı dosyalar barındırır.

core : Fw sisteminin çekirdek kodları burada bulunur. Temel görevleri barındırır.
database : Fw ‘ün veritabanı işlemlerini yürüten modeli barındırdığı kısımdır.
fonts : System fontlarını burada barındırır.
helpers : Fw sisteminin model oluşturmayan yardımcı fonksiyonlarıdır.
language : Sistemdeki modellerin dil dosyaları burada barınır.
libraries : Sistemde kullanılan yardımcı kütüphaneler burada barınır.




Application : Uygulamamızı yazacağımız dizin burasıdır.

core : Uygulamamızda varsa çekirdek kodlar buraya yazılır.
cache : Cache dosyaları buraya kaydedilir.
config : Uygulamamız ile ilgili belirli configrasyonları yaptığımız klasör.
controllers : Uygulamamızdaki karar mekanizması buraya kodlanır.
errors : Uygulamada oluşan hataları burdaki hata dosyalarımızla gösteririz.
helpers : Model oluşturmayan yapılarımızı yardımcı fonksiyonlarımızı burada kodlarız.
hooks : Fw ‘ün çekirdek koduna müdahale etmek gerekirse buradan yapılır.
language : Uygulamamızın dil dosyalarını burada tutuarız.
libraries : Uygulamamızda kullancağımız ek kütüphaneleri buradan include ederiz.
logs : Uygulamamızdaki logları burada saklarız.
models : Uygulamamızın model yapıları burada oluşturulur.
views : Uygulamanın arayüzü bu kısımda kodlanır.
third-party: 3. parti uygulamaları fw’e burada entegre ederiz.


Genel olarak dosyalarımızı tanıdık nerede ne yapacağımızı biliyoruz. Ufak bir uygulama geliştirmek için önümüzde her hangi bir engel görünmüyor :)



Kaynak ve devamındaki proje için : http://yazilimportal.com/php-mvc-yapisi-ve-codeigniter-framework-1/
Alucard

kişi bu mesajı beğendi.

elektronikssl
webimgo

kelebek kelebek WM Aracı Kullanıcı
  • Üyelik 11.05.2013
  • Yaş/Cinsiyet 32 / E
  • Meslek Geliştirici
  • Konum Malatya
  • Ad Soyad E** K**
  • Mesajlar 3142
  • Beğeniler 60 / 764
  • Ticaret 5, (%100)
Yazının tamamını eklemek zorundasınız!
Onur89TR

kişi bu mesajı beğendi.

Onur89TR Onur89TR Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 04.12.2011
  • Yaş/Cinsiyet 35 / E
  • Meslek .
  • Konum İzmir
  • Ad Soyad ** **
  • Mesajlar 2376
  • Beğeniler 704 / 791
  • Ticaret 1, (%100)

kelebek adlı üyeden alıntı

Yazının tamamını eklemek zorundasınız!

Yazsak da anladım ki bir şey değişmiyor.
 

 

YazilimPortal YazilimPortal WM Aracı Kullanıcı
  • Üyelik 20.01.2012
  • Yaş/Cinsiyet - / E
  • Meslek Bilgisayar Mühendisi
  • Konum
  • Ad Soyad ** **
  • Mesajlar 9
  • Beğeniler 0 / 1
  • Ticaret 0, (%0)
merhaba arkadaşlar biraz daha kibar bir dil kullanmanızı isteyebilir miyim ? Forum ortamını boş yere germeyelim. Buradaki amaç reklam falan değil. Yazı yazmıştım bunu forumda paylaştım. Yazının devamında kodlar olduğu için buraya eklemek zor ve anlamsız kaldı. O nedenle sadece kodları eklemedim. Forum kurallarına aykırı bir durum olduğunu düşünmüyorum eksik yazı eklemenin. Eğer aykırıysa sonundaki bilgilendirmeyi ( devamında proje olduğunu ) kaldırabilirim.
 

 

wmaraci
wmaraci

Alucard Alucard The Captain Kullanıcı
  • Üyelik 01.01.2013
  • Yaş/Cinsiyet 29 / E
  • Meslek Öğrenci
  • Konum İstanbul Avrupa
  • Ad Soyad İ** A**
  • Mesajlar 126
  • Beğeniler 14 / 9
  • Ticaret 1, (%100)
Paylaşım için teşekkürler. Ben de bu framework ile çalışmaya başladım. Umarım yeni projelerime renk katar.
 

 

MertKoseoglu MertKoseoglu Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 12.07.2013
  • Yaş/Cinsiyet 29 / E
  • Meslek x
  • Konum Ankara
  • Ad Soyad M** K**
  • Mesajlar 659
  • Beğeniler 120 / 168
  • Ticaret 3, (%100)
Adam o kadar emek harcamis yazinin devaminami takilfin ? Diyecek soz bulamiyorunlm.
eline saglik kardesim, bu konularda turkce makale sinirli sayida eline saglik..
 

 

YazilimPortal YazilimPortal WM Aracı Kullanıcı
  • Üyelik 20.01.2012
  • Yaş/Cinsiyet - / E
  • Meslek Bilgisayar Mühendisi
  • Konum
  • Ad Soyad ** **
  • Mesajlar 9
  • Beğeniler 0 / 1
  • Ticaret 0, (%0)
İlginize teşekkür ederim arkadaşlar, fırsat bulduğumda daha faydalı konularıda ele alacağım. Fakat codeigniter'ın şuan sahipsiz olması beni biraz düşündürüyor acaba codeigniter biter mi diye. Siz ne düşünüyorsunuz ?
 

 

Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al