Php' de OOP, MVC ve Framework Konularını Nasıl Anlayabiliriz?
Bu yazımda, MVC mantığını anlayabilmeniz için izleyebileceğiniz çeşitli bağlantıları paylaşacağım. Benim için faydalı olan bu derslerin sizlerinde işinize yarayacağından eminim. Şimdiden hepinize kolay gelsin. Artık başlayalım.
Bu dersleri öğrenebilmek için PHP' de belli bir seviyeye gelmiş olmanız gerekiyor, bunu da belirtelim. PHP ile en az bir iki tane site geliştirmiş, yazdığınız tüm kodların anlamını biliyor olmanız gerekiyor. Bunları yapabiliyorsanız, kendinizi hazır hissettiğiniz bir gün, açın bu dersleri izleyin ve uygulamaları tek tek yapın.
Öncelikle PHP' de OOP'yi, Class'ları, public-private'leri vb. bilgileri öğrenmeniz, MVC yi anlayabilmenizi daha da kolaylaştıracaktır.
Bunları okuyun, uygulayın ve anlayın. Bu yazılardan sonra öğrenmesi kolay olan ve Türkçe kaynağı bol miktarda bulunan CodeIgniter Framework'ünü öğrenmeye başlayın. Framework öğrenmek ne kadar gerekli sorusunu araştırabilirsiniz. Ancak Nesne Tabanlı Programlama'yı ve MVC yapısını bu şekilde daha rahat anlayabileceğinizi düşünüyorum. Bu benim kişisel düşüncemdir. Ben bu şekilde öğrendim diyebilirim.
Bu linklerde, webteders.com' da bulunan ve ücretsiz olan CodeIgniter Framework konusu bulunmaktadır. Çok öz bir anlatım olmuş. Ben bunu tavsiye edebilirim sizlere.
İzlemenizi tavsiye edeceğim son ders ise, Youtube' da bulduğum ve MVC' yi öğretirken, kendi framework'ünüzü nasıl yazabileceğinizi anlatan bu settir. Sırasıyla bu eğitimleri izlerseniz, anlamadığınız çok fazla bir şey kalmayacak. Kendinize olan güveniniz yerine gelecektir.
Hepinize iyi şanslar.
Merhaba hocam makale için öncelikle teşekkür ederim. bootstrap şua nbenim şu şekilde anadizine birklasör atıp calıstırgımda hep error'a düşüyor yansıl değiştirmem gerek acaba
YanıtlaSilfunction __construct() {
$url = isset($_GET['url']) ? $_GET['url'] : null;
$url = rtrim($url, '/');
$url = explode('/', $url);
//print_r($url);
if (empty($url[0])) {
require 'controllers/index.php';
$controller = new Index();
$controller->index();
return false;
}
$file = 'controllers/' . $url[0] . '.php';
if (file_exists($file)) {
require $file;
} else {
$this->error();
}
$controller = new $url[0];
// calling methods
if (isset($url[2])) {
if (method_exists($controller, $url[1])) {
$controller->{$url[1]}($url[2]);
} else {
$this->error();
}
} else {
if (isset($url[1])) {
if (method_exists($controller, $url[1])) {
$controller->{$url[1]}();
} else {
$this->error();
}
} else {
$controller->index();
}
}
}
function error() {
error_reporting(0);
require 'controllers/error.php';
$controller = new Error();
$controller->index();
return false;
}
@Kadir Yıldız, dostum yarattığın klasöre ulaşmaya çalıştığın zaman mı error çalışıyor? Yani "http://localhost/klasoradi" diye içine ulaşmaya çalıştığında mı sıkıntı yaşıyorsun?
YanıtlaSil