Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Frameworks

Yii Framework' e Giriş

by
Length:ShortLanguages:

Turkish (Türkçe) translation by Oğuz Çelikdemir (you can also view the original English article)

Final product image
What You'll Be Creating

Neden Yii?

PHP' de "Merhaba Dünya" yazmak oldukça kolaydır ancak gerçek bir web uygulaması oluşturmak çabucak karmaşıklaşır. PHP' nin eksik tarafı, güvenlik yönetimi, DRY (Kendini Tekrarlama!) kod yazımı veya MVC tasarım deseni tekniklerini kullanmak istediğinizde ortaya çıkar. Geçmişte Ruby on Rails üzerinde çalıştım, fakat özellikle ekonomik sunucu ve esnek uygulama dağıtımı söz konusu olduğunda bunun zor olduğunu keşfettim.

İşte burada PHP frameworkleri devreye girdi.

Symfony, Cake, Zend, CodeIgniter, Laravel ve benim favorim Yii gibi bir dizi PHP framework vardır. Yii ücretsiz, açık kaynak kodlu, kod tekrarından uzak, hızlı uygulama geliştirmeyi destekleyen bir framework' tür. Yii' nin, diğer PHP frameworklerinin zorladığı sınırların en azıyla, yüksek performanslı bir paketteki framework' ten beklediğim herşeyi sunduğunu keşfettim.

Yeni türeyen medya sitesi Vice, WordPress'e alternatif geliştirilen CraftCMS ile Yii' de yazılmıştır (CraftCMS tanıtımı için @reifman adresini takip edin).

Yii, bir framework'ü benimsemenizde kritik öneme sahip performansı ile göze çarpar.

Ayrıca Yii framework optimize edilmiş web uygulamalarını hızlı ve kolay bir şekilde yazmamızı sağlayan kasamlı yetenekler sunar. Ve en önemlisi, Yii eksiksiz bir dökümantasyona ve destek topluluğuna sahiptir.

Yii gelişmiş, test edilmiş ve istikrarlıdır. Qiang Xue tarafından geliştirilmiş 1.x sürümü 2008' den bu yana piyasadadır. Sürüm 2.0 belgelerinin ve nihai testlerinin tamamlanıp, heran yayınlanması beklenmektedir.

Özellikler

Yüksek performanslı bir framework yönünden, Yii' nin yetenek ve özellik kümesinin genişliği oldukça sıradışıdır ki bu bir framework' te ilgimi çeken nedenlerden birisidir. Yii Playground alanında, Yii kod örneklerine göz atabilir ve deneyebilirsiniz.

İlgi çekici bazı özellikleri:

  • Model-View-Controller mimarisi. Tıpkı Ruby on Rails gibi, MVC' yi PHP uygulamalarınızda sonuna kadar kullanabilirsiniz.
  • Veritabanı Erişim Nesnesi (DAO), Active Record ve programlı Veritabanı taşıma işlemleri, veritabanı destekli web uygulamaları geliştirme zorluklarını basitleştirir.
  • Form girdisi, doğrulama ve Ajax desteği yerleşik olarak bulunur. Yii form işlemlerini oldukça basitleştirir.
  • Yerleşik kimlik doğrulama ve güçlü kullanıcı yönetimi genişletmeleri, yeni web uygulamalarını kolayca başlatmayı sağlar.
  • Yii' nin yerleşik kod üretme aracı, Gii, MVC tarzında uygulama iskeleti geliştirmeyi hızlandırır.
  • Yii Konsolu. Yii komut satırından veya geri plan yordamı (daemon) olarak çalıştırılabilir. Bununla, PHP' de yüksek performanslı arka plan görevleri oluşturmak mümkündür.
  • Bootstrap genişletmesi gibi tema seçenekleri, mükemmel görünümlü duyarlı uygulamalar geliştirmeyi basit hale getirir.
  • Yii' nin katmanlı ön bellek desteği, uygulamanız için uyumlu önbellek türlerini uygulamayı kolaylaştırır.
  • Güvenlik. Yii, PHP ve MySQL ile çalışan hizmetlerin tipik risk faktörlerini en aza indirir.
  • Diğer framework' ler ile entegrasyon. Yii' de Zend ve PEAR özelliklerini kullanmak kolaydır.
  • Genişletmeler. Yii' nin geliştirici topluluğu çeşitli ücretsiz, açık kaynak kodlu eklenti ve yapıtaşları (widget) sunuyor.
  • Çoklu dil desteği. Yii I18N standardını destekler ve uygulamanızın yerelleştirilmiş sürüm ihtiyacını geliştirmeyi kolaylaştırır.
  • Hata yönetimi, günlük kaydı ve test işlemleri - evet Yii tüm bunları sunar.

Yii topluluğu ayrıca, güzel bir web tabanlı zengin içerik editörü olan Redactor ün sınırsız lisansını satın aldı - yani her türlü Yii uygulamalarınızda kullanabilirsiniz. Bu da CMS (içerik yönetim sistemi) özellikleri yada zenginleştirilmiş metin girişleri için mühim bir özelliktir.

Yii dökümantasyonu ve topluluğu da harika özelliklerindendir. Başlamanıza yardımcı olacak birkaç mükemmel kitapta mevcuttur.

Yii ile Deneyimim

Yii son iki yılda artan üretkenliğimin önemli bir parçası oldu. Yii' nin işimi kolaylaştırdığı web uygulamalarından birkaçı:

  • Simplify Email, günümüz iletişim sorunlarını basitleştirme, günlük eposta özetlerinin yönetimi ve gönderimi, filtreleme ve rahatsız edilmeme gibi güçlü yeni özellikler sunar. Bildirimler için PHP IMAP kütüphanesi, Mailgun ve Pushover API' leri ile bütünleşiktir.
  • Geogram mahalle ve bölgeler için eposta grupları kurma imkanı sunan konsept bir projedir. Geogram Zillow mahalle datası, Google Harita, Google Mekan ve Mailgun hizmetleri ile bütünleşiktir.
  • Simple Monitor ile WordPress sitelerimi ve sunucu durumlarını izliyorum. Birşeyler ters gittiğinde, iOS telefonuma bir bildirim gönderiyorum.
  • ListApp, Mailgun' ın liste ve eposta doğrulama API' ni kullanan ücretsiz, açık kaynak kodlu bir uygulama. Bu uygulama ile ilgili yakında Tuts+ üzerinde bir yazı yayınlayacağım.

Simplify Email ve Simple Monitor uygulamalarının Yii kodunu incelemek isterseniz satın alabilirsiniz. Ayrıca yazdığım diğer faydalı Yii eğitimleri de mevcuttur.

Favori Yii uzantılarımdan bazıları Yii User, Yii Bootstrap, Redactor ve Yii Hybridauth dir.

Sürüm 2.0 da Neler Yeni?

Yii 2.0 sürümü yayına hazırlanıyor (geliştirici yol haritasını takip edin). Yii 1.x den bu yana yapılan geliştirmelerin özeti Yii 2 nin beta notlarında yer alıyor

Yii 1.x gelişmiş bir framework olmasından ötürü Yii 2 sürümünde şaşırtıcı bir özellik yok fakat, Yii geliştiricilerinin hayatını daha da kolaylaştıracak büyük gelişmeler mevcut.

İşte bunlardan birkaçı:

  • PSR-4 otomatik sınıf yükleme, basit isim alanları, daha hızlı yükleme ve geliştiriciler için kullanılabilirlik desteği.
  • Performans ve güvenlik iyileştirmeleri.
  • API' lerin geliştirilmesini kolaylaştırıcı RESTful API framework entegrasyonu.
  • Codeception test entegrasyonu.
  • Toplu sorgular, alt sorgular ve ilişkileri tersine çevirme desteği de olmak üzere veritabanı ve active record iyileştirmeleri.
  • Gelişmiş URL yönetimi ve işlemleri.
  • Çekirdek yapıdaki mevcut metinlerin 26 dilde çevirileri.
  • Dökümantasyon oluşturucu.

Yii' ye Başlarken

Üstün dökümantasyonundan ötürü Yii ile uygulama geliştirmeye başlangıç oldukça kolaydır. Başlangıç için işte birkaç şey:

Yii 2.0 ve bir PHP framework'ü olarak Yii' nin geleceği üzerine müthiş heyecanlıyım ki bir yazılım geliştirici ve danışman olarak verimliliğimi düzelttiğini belirtmek isterim. Umarım sizler de Yii' yi benim kadar ilginç ve kullanışlı bulursunuz.

Herhangi bir sorunuz veya düzeltme talebiniz olursa lütfen yorum alanından bunları belirtiniz. İlerde Tuts+ üzerinde yayınlanacak diğer eğitimlerimden haberdar olmak isterseniz, beni twitter dan yada yazar sayfamdan takip edebilirsiniz.

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.