CodeIgniter Nedir ?

CodeIgniter Nedir ?

Hepinize merhaba dostlarım 😊. Bu yazımda sizlere daha önce kullandığım, ilk göz ağrım olan ve ismini duyduğumda aşırı mutlu olduğum bir php frameworkü olan CodeIgniter den bahsedeceğim. İsmini ilk defa duyanlar vardır veya direk şaşırmışsınızdır "Sadece Laravel Yok Muydu ?" diye söylenenleriniz vardır. Bir sürü framework var php nin :). Ben de size dediğim gibi bu yazımda CodeIgniter frameworkünden bahsedeceğim. O halde sözü daha fazla uzatmadan hemen konumuza girişimizi yapalım

CODEIGNITER NEDİR ?

Gelelim artık konumuzun ana kısmına ve CodeIgniter Nedir onu incelemeye. CodeIgniter php programlama dili ile yazılmış web uygulaması geliştirmemizde son derece kolaylık sağlayan açık kaynak kodlu bir mvc frameworktür (MVC adlı yazıma ilerlemek için buradan, Framework adlı yazıma ilerlemek için buradan ulaşabilirsiniz). Yani kısaca bahsetmek gerekirse dostlarım bizim yazdığımız projemizde veri tabanı ayarlamaları ayrı bir yerde, görünüm kısmı bir yerde ve backend kısmı ayrı bir yerde tutuluyor ve bunların aksine işlerimizi oldukça kolaylaştırıyor. Şimdi sizin aklınızda aşağıdaki gibi soru belirmiştir

Hocam ne tür kolaylaştırmalar bunlar ?

hemen açıklayayım size. Örnek veriyorum biz core php üzerinde veri tabanı bağlantısı yapıyorduk, veya sayfalama için uzun uzun fonksiyon yazıyorduk, hadi bunu da geçtim dosya yükleme işlemi olsun, session güncelleme işlemi, güvenlik önlemleri gibi vs vs işlemlerde kendimiz oturup kodlama yapmamız her işlemi yazmamız gerekiyordu. Ama CodeIgniter diyor ki

Kardeşim ben seni hiç yükün altına sokmak istemiyorum. Senin için temel araçları veriyorum gönül rahatlığıyla kullanabilirsin 

şeklinde hitap ediyor ve bizim kullanacağımız ve işimize oldukça yarayan araçları bize veriyor, projemizin ayağa kalkmasında bize son derece yardımcı oluyor.

NE GİBİ ÖZELLİKLERİ VARDIR ?

Artık CodeIgniter nedir ne değildir bunu anladığımıza göre dostlarım şimdi gelelim bunun özellikleri nelerdir ne değildir bir inceleyelim

  1. Hız: Hız bir programcı için olmazsa olmaz konulardan birisidir. Özellikle iş yetiştirme olsun debug etme olsun vs vs her zaman hız isteriz bu kaçınılmaz gerçektir. CodeIgniter e bakacak olursak da geliştiricileri tarafından oluşturulmuş performanslı ve hızlı bir frameworktür. Bu özelliği bize Hız Sağlama avantajını kazandırmıştır.
  2. Güvenlik: Bir programcının yazdığı uygulamalarda olmazsa olmaz dikkat etmesi gereken noktalardan birisi ise güvenliktir bunu hepimiz biliyoruz. Projenin en ücra kısımlarından bile ne olur ne olmaz dikkat etmemiz ve bu güvenlik açıklarını kapatmamız gerekmektedir. CodeIgniter bu noktada bize XSS (Cross Site Scripting) ve CSRF (Cross Site Request Forgery) gibi güvenlik açıklarını kapatmamızda bize yardımcı olan kütüphaneleri sunarak projemizin bu açıklara karşı güvenli olmasını sağlamada son derece katkı sağlar ve kötü amaçlı kişiler tarafından sitemizin korunmasında yardımcı olur
  3. Active Record ile Sorgularda Hız: Özellikle projelerimizde SQL ile ilgili çalışmalar yaparken bize hiçbir zaman uzun uzun sql kodu yazdırmıyor (çok gerektiği durumlar haricinde) ve bunun yerine bize verileri çekme, güncelleme, listeleme ve silme işlemleri için methodlar veriyor ve "Al bunu kullan ben senin işlerini hallederim" şeklinde hitap eder gibi bizim sql işlemlerimizi oldukça kolaylaştırıyor
  4. Session ve Cookie Oluşturma Rahatlığı: Session ve cookie oluşturmada bize son derece rahatlık sağlıyor diyebiliriz dostlarım. Pure php ile çalışırken dikkat etmişseniz öncelikle baglan.php içerisinde bizim session_start(); gibi bir fonksiyonu çağırmamız vs lazımdı (aklına takılan dostlarım buradan ulaşabilir). Ama CodeIgniter üzerinde herhangi bir ayar yapmaya vs hiç gerek yok session oluşturma kodunu yazdığı andan itibaren veya cookie kodunu yazdığımızdan itibaren bizim için hızlı bir şekilde bu işlemleri ayarlıyor
  5. Sayfalama: Özellikle sayfalama gerektiren durumlarda önceki zamanlarda uzun uzun fonksiyonlar yazdığımız bunların içinden ofsetleme için uzun uzun sorgu yazdığımız zamanlar hem güzeldi hem de bize birazcık zaman kaybettiriyordu hepimiz bunun bilincindeyiz :). CodeIgniter frameworkü ise kendinden gelen pagination sınıfı ile bizim projemiz üzerinde göndereceğimiz parametreler doğrultusunda gerekli ayarlamaları yaptırıp ve sayfa numaralarını da ekranımıza bastırıp bizi büyük bir yükün altından kurtarabiliyor diyebiliriz
  6. Captcha: En sevdiğim bir özelliktir CodeIgniter üzerinde. Bizim formumuzun gönderilme işlemlerimizde güvenlik adı altında geliştirilmiş ve oluşturduğumuz captcha nın içerdiği değere göre kontrol yapıp formumuzun gönderilme işlemlerini sağlayan bir kütüphanedir. CodeIgniter üzerinde hazır gelen bu kütüphane büyük projelerde işimize oldukça yarar diyebiliriz

şeklinde daha bir sürü özellikleri var dostlarım. Bunları ileriki zamanlarda örnek yapa yapa göreceğiz :). Şimdi özelliklerine değindikten sonra gelelim ne gibi avantajllar sağlıyor bunlara bir göz atalım diyorum

PEKİ AVANTAJLARI NELERDİR ?

Tamam iyi güzel özelliklerini gördük ama bunun bir de avantajlarına bakmamız lazım değil mi acaba ne tür güzellikleri var bunlara bakmasak olmaz. O halde hemen avantajları nelerdir ne değildir bunlara bir göz atalım

  1. Küçük bir framework olduğu için hızlıdır: Evet bunu özellikler kısmında da anlatmıştım. Diğer frameworkler gibi (Symfony, Laravel gibi) çok fazla kütüphane içermediği için bunlara nazaran oldukça hızlıdır ve projemizde bize oldukça hız sağlar. Yani buradan CodeIgniter frameworkünün tam bir geliştirici dostu olduğunu rahatlıkla görebiliriz 
  2. Geliştiricinin temel isteklerini içerisinde barındırır: Bu kısım aslında her frameworkte olduğu gibi CodeIgniter frameworkü içerisinde de vardır. Geliştiricinin yapacağı proje üzerindeki temel istek ve ihtiyaçlarını karşılayacak kütüphaneler bulunur. Geliştirici ihtiyacı olduğunda kullanır, eğer işi çok büyük ise özel kütüphaneler indirip bunları projesine entegre eder.
  3. Popülaritesi Vardır: Ve geldik bir frameworkü ayakta tutan ve CodeIgniter için de aynı şeyi rahatlıkla söyleyebileceğimiz konu olan popülarite konusuna. Popülarite nin popülerlik olduğunu hepimiz biliyoruz. İşte bu noktadan yola çıkacak olursak CodeIgniter in hala popüler olduğu, sektörde bu framework ile çalışan firmaların olduğunu (iş ilanlarında dikkat ederseniz) rahatlıklal görebiliriz. Aklınıza takılan bir yer olduğunda CodeIgniter üzerinde forum sayfalarında hızlıca cevap bulabilmeniz de popülarite ye birer örnektir :).

Şimdi avantajlara da göre sizin aklınızda olan soruyu cevaplandırmaya

Hocam CodeIgniter kullanmak için neleri bilmemiz gerekli ?

şeklinde sorular zihninizde yer etmiş bulunmakta ve ben bunu rahatlıkla seziyorum dostlarım. Cidden öğrenme aşamasındaki en güzel sorulardan birisi diyebilirim. CodeIgniter kullanmak için bilmemiz gereken bilgilere bakacak olursak

  1. Temel düzeyde HTML, CSS ve Javascript Bilgisi
  2. Orta Düzey PHP Programlama Dili bilgisi
  3. Orta Düzey SQL Bilgisi

şeklindedir. Ama özellikle demek isterim ki 2. ve 3. adımı orta derecede sağlamlaştırıp geçmeniz size proje geliştirmeniz aşamasında kolaylık sağlayacaktır. Temel düzey PHP Programlama Dili ve SQL bilgisi ile geçmeniz ileriki zamanlarda biraz zorluk çıkarabilir. O yüzden orta düzeye getirip o şekilde geçmenizi tavsiye ederim

 

Eveeet dostlarım 😊. Bu yazımda sizlere bir PHP frameworkü olan CodeIgniter nedir ne değildir, özellikleri nelerdir, bize ne gibi avantajlar sağlar bunlardan elimden geldiğince dilim döndüğünce anlatmaya çalıştım. Umarım faydalı olmuşumdur. Eksik veya hatalı bir anlatım yapmış isem benimle iletişime geçmekten çekinmeyin. PHP programlama dilini orta seviyeye getirdiğinizde bu frameworkle uğraşıp proje geliştirmenizi canı gönülden isterim :)

Hayallerinizi gerçekleştirmeniz ve güzel yerlere gelmeniz dileklerimle... İyi çalışmalar dilerim :)

Muhammed Fatih BAĞCIVAN
Yazar Hakkında

Kendi Halinde Bir Backend Developer

Önceki YazıLaravel Query Builder İşlemi -1-
Sonraki YazıPHP Zincirleme Method (Chain Method) Kullanımı
Yorumlar (0)
Bu Yazıya Ait Hiçbir Yorum Bulunamadı (veya admin onaylamadı). İlk Yorum Yapan Sen Ol
Yorum Yapabilirsiniz