Mehmet Nedim BİLGİÇ

Framework Nedir?

Framework Nedir?

Framework Nedir?

Framework Nedir?

Framework, bir yazılım geliştirilirken oluşturacağınız yapı ve iskeleti her proje için tekrar tekrar oluşturmak yerine bir kere oluşturulup her proje için kullanılabilen yapılardır. Frameworkler MVC dediğimiz Model-View-Controller yapısı ile çalışırlar. Frameworkler, programcının iskeleti tasarlamak yerine projeye daha çok odaklanmasını sağlar. Bu da size hem zaman olarak tasarruf, hem de mental açıdan daha az yorulmanızı sağlar. Ayrıca içlerinde bulunan hazır yapılar sayesinde daha az hata ihtimali bulunduran projeler üretmenizi de kolaylaştırır.


MVC Yapısı Nedir?

MVC dediğimiz yapı Model-View ve Controllerdan oluşur. Model dediğimiz kısım veritabanı işlemlerini yaptığımız kısımdır. Controller yapısı ise kullanıcıdan aldığımız verileri işlediğimiz ve Model ile View arasında köprü kurduğumuz kısımdır. View de ise Model den gelen veri Controllerda işlenir ve View kısmında kullanıcıya görsel olarak sunulur.


Düşünün ki sistemimize bir kullanıcı dahil olacak. Bu kullanıcıyı sistemimize dahil edebilmek için bazı bilgilerini almamız gerekir. View kısmında kullanıcı forma bilgilerini doldurur ve kayıt tuşuna basar. Bu veriler Controller kısmına gider. Verileri Controller kısmında işledikten sonra veritabanına kayıt edilmesi için Modele gönderilir. Model de veritabanına gerekli işlemleri yaptıktan sonra, Model Controllere işlemin başarılı olup olmadığı, başarısızsa hatayı gönderir. Controller gelen bu cevabı işler ve Viewe başarılı, başarısız ve başarısızsa hatayı gönderir. Viewde gelen duruma göre kullanıcıya görsel olarak sonucu yansıtır. Kabaca ve basit bir şekilde MVC yapısının döngüsü tamamlanır.


Framework Ne İşe Yarar?

Framework'ler zamandan tasarruf etmek ve projeyi daha hızlı, daha anlaşılır bir şekilde geliştimenizi sağlar. Aynı uygulamayı framework kullanmadan da oluşturabilirsiniz. Fakat bu size kod karmaşası ve uzuncu bir mesaiye neden olabilir.


Framework Kullanmanın Avantajları Nelerdir?

Framework, tüm yazılım geliştirme sürecini hızlandırmanın yanı sıra daha güvenli ve daha okunaklı bir kod yazmanızı da sağlar. Kabaca;


    - Daha iyi ve sağlıklı programlama süreci

    - Kod daha güvenli

    - Daha az hataya meyilli ve tutarlı bir kod yazımı

    - Gelişmiş teknolojiler üzerinde çalışmayı kolaylaştırma

    - Yinelenen ve gereksiz kod yazmanın önüne geçmeyi

    - Zamandan tasarruf etme


gibi bir çok avantajdan faydalanabilirsiniz.


Java Frameworkleri

  • Spring: Büyük ekosistemi ve aktif topluluğuyla, muhtemelen en iyi bilinen Java framework’üdür. Kurumsal düzeyde Java uygulamaları, web hizmetleri ve mikro hizmetler oluşturmanıza olanak tanır.
  • Apache Click: Bileşen odaklı web uygulama framework’üdür.
  • Oracle ADF: Kurumsal uygulamalar için bir framework’tür.

Javascript Frameworkleri

  • Angular: Web üzerinde uygulama oluşturmayı kolaylaştıran, yazı tabanlı, açık kaynaklı bir JS framework’üdür. AngularJS kullanılarak geliştirilen bazı popüler web siteleri: Netflix, Paypal, Upwork ve Youtube’dir.
  • jQuery:  Üzerine diğer .JS framework’lerin oluşturulduğu bir JavaScript kütüphanesidir. jQuery Mobile, bir mobil uygulama alternatifidir.
  • Backbone.js: Ruby on Rails ile uyumlu MV tarzı bir framework’tür.
  • MeteorJS: Mobil uygulamalar için Angular ve Node.js kombinasyonu bir framework’tür.
  • ExpressJS: Node.js platformunda çalışan bir arka uç JavaScript framework’üdür.
  • React: Facebook tarafından oluşturulan React, kısa bir süre içinde popülerlik kazanan bir framework’tür. Gelen trafiği yüksek web sayfalarının dinamik kullanıcı arayüzünü geliştirmek ve çalıştırmak için kullanılır. Sanal bir DOM kullanımını sağlar ve bu nedenle herhangi bir uygulama ile entegrasyonu daha basittir.
  • Vue: 2016 yılında geliştirilmiş olan Vue, çeşitli özellikleriyle değerini kanıtlayan bir framework’tür. İkili entegrasyon modu, üst düzey SPA ve Tek Sayfa Uygulaması en çekici özelliklerdendir. Çapraz platform geliştirmek için çok güvenilirdir.

Php Frameworkleri

  • Symfony: İhtiyacınız olan PHP işlevlerini seçmenize veya tüm framework’ü kullanmanıza olanak tanıyan bir paket ve bileşen sistemi içerir, oldukça esnektir. Uygulamalarınızın olması gerektiği gibi çalışmasını sağlamak için yerleşik test işlevselliği içerir. Çok dik bir öğrenme eğrisi var.
  • CodeIgniter: Zengin bir kütüphane setiyle iş, seyahat ve alışveriş endüstrileri için uyarlanmış en popüler MVC tarzı PHP framework’üdür. Peki MVC nedir? Model-View-Controller anlamına gelen MVC, yazılım geliştiricilerin kullandığı bir yazılım mimaridir
  • Zend framework:  Alışveriş ve iş için bir MVC framework’üdür.
  • CakePHP:  İş, alışveriş ve eğlence sektörleri için tasarlanmış en popüler ikinci PHP framework’üdür.
  • Laravel:  Yüksek performanslı PHP web uygulaması geliştirme için standartlaştırılmış ve özelliklerle dolu bir platform sunan en güçlü PHP framework’üdür. Harika entegre test desteği ile uygulamaları hızla dışarı çıkarmanıza yardımcı olur. Laravel kullanılarak geliştirilen bazı popüler web siteleri: alison.com, barchart.com, Neighborhood Lender, World Walking.