İlginizi Çekebilir
  1. Ana Sayfa
  2. Genel
  3. Framework Nedir? Ne İçin Kullanılır?

Framework Nedir? Ne İçin Kullanılır?

Framework Nedir? Ne İçin Kullanılır?

Framework; yazılım geliştiriciler tarafından kullanılan, önceden hazırlanmış, denenmiş ve kullanıma hazır hale getirilmiş kütüphanelerin bulunduğu, istenirse eklemeler yapılabilecek yapılara verilen isimdir. Framework, dilimizde ‘geliştirme çatısı’ ya da ‘yazılım iskeleti’ şeklinde karşılık bulmaktadır; ancak bu tanımlar pek kullanılmamakta, web teknolojilerinde, bütün dünyada olduğu gibi, ülkemizde de genel olarak İngilizce terimler tercih edilmektedir.

Frameworkler, yazılım alanında pek çok projede kullanılabilmektedir. Web tasarımı yaparken arayüz çalışmalarında, arka plan işlemlerinde ve mobil uygulamalarda framework kullanımı; hem işleri basitleştirmekte, hem de zaman kazandırmaktadır.

framework

Framework Kullanmanın Avantajları

  • Frameworkler, projeyi basitleştiren kodların, çalışmaya entegre edilmesine ve değiştirilmesine izin vererek, kullanıcıya esneklik sağlar.
  • Sağlam, denenmiş ve güvenilir yapılar üzerinde kod yazmak, kullanıcıya büyük kolaylık sunar.
  • Frameworkler, sadece en çok kullanılan kütüphaneleri ve modülleri içerir; gelişmiş yapıları barındırmaz. Kullanıcının en temel bölümleri yeniden yazmasına gerek yoktur; yaptığı projeye uyarlamak için, var olanları genişletme yoluna gider. Bu nedenle, frameworkler, yapılan işe hız kazandırır.
  • Frameworkler, hız avantajının yanısıra; iş yükünü azaltır; proje sürecini kolaylaştırır.
  • Projelerin hazırlanması sürecinde zamandan tasarruf edilmesini sağlar. Frameworkler sayesinde, bilinen kodları yeniden yazma zahmeti ortadan kalkar. Altyapı hazırlamak yerine, projenin kendisiyle uğraşmak için emek ve zaman kazandırır.
  • Düzenli ve temiz kod yazılım olanağı sunar.
  • Proje bir ekip tarafından hazırlanıyorsa, görev paylaşımını kolaylaştırır.
  • Frameworkler, içerdikleri database adaptörleri aracılığıyla, farklı veritabanı türlerine kolay entegre edilebilir.
  • MVC (Model, View, Controller) gibi bölümlerden oluşan frameworkler, ayrıca, projelerin kolay düzenlenebilir olmasını sağlar.
  • Frameworkler, kullanıcı tarafından sürekli olarak denendiği için, güvenlidir.
  • Frameworkler açık kaynaklıdır; sürekli değiştirilip geliştirilir. Bu nedenle, güncelliğini korur.

Framework Kullanmanın Dezavantajları

Framework kullanmak, orta ve büyük çaplı projelerde oldukça avantajlıdır; ancak küçük projeler için, işi kolaylaştırmak yerine, tam tersine zorlaştırıp yavaşlatabilir. Birçok avantajının yanında, frameworklerin dezavantajları da bulunmaktadır.

  • Her birisi, farklı bir kod yapısına sahiptir; öğrenmek zaman alır.
  • Bazıları, çok karmaşık bir yapıda olabilmektedir.
  • Her yazılımcı, kendine özgü bir kod yazma biçimine sahiptir. Kullanılan, buna uygun olmayabilir.
  • Zaman içerisinde programlama bilgisinin unutulmasına yol açabilir.

Sayılan dezavantajlarına rağmen, frameworklerin avantajlarının çok daha fazla olduğu görülmektedir. Bunun bilincinde olan kullanıcılar, farklı frameworklere sıklıkla başvurmaktadırlar.

En Çok Kullanılan Frameworkler Nelerdir?

Kullanım amacına göre farklı frameworkler bulunmaktadır. Yazılım dili olarak PHP kullananlar için, çok fazla framework seçeneği bulunmaktadır. Yii, PhalconPHP, Laravel, Symfony2, CakePHP, Phalcon, Zend ve Codeigniter bunlara örnek olarak verilebilir. En yaygın diğer frameworkler, şöyle örneklendirilebilir:

Javascipt Frameworkleri: JQuery, VueJS, TypeScript, AngularJS, NodeJS, ReactJS

Python Frameworkleri: Django, Flask, Pytest, Robot, PyUnit, Behave

C# Frameworkleri: ASP, ASP.NET

CSS Frameworkleri: Pure CSS, Foundation, Bootstrap, Semactic Ui

Ülkemizde en çok PHP yazılım dili için geliştirilmiş frameworkler kullanılmaktadır. Hangi frameworkün kullanılacağına karar vermek için, indirip kurulmalı ve performans, iş süreci, güvenlik gibi özellikler açısından incelenerek karşılaştırma yapılmalıdır. Yaygın olarak kullanılan bazı PHP frameworklerini karşılaştırarak, kullanıcıların işini biraz kolaylaştıralım.

Yii Framework

En güvenilir framework olma iddiasındaki Yii Framework’ü farklı kılan önemli bir yönü, Acive Record özelliğidir. Bu özellik, veritabanı sorgularının yükünü büyük oranda azaltmayı sağlamaktadır. Yii Framework, geniş bir extension kütüphanesinin sahiptir. Yii Framework’te bulunan Gii sayesinde, MCV yapısı kolaylıkla oluşturulabilmektedir.

Codeigniter

MVC (Model-View-Controller) yapısını kullanır. Kurulumu son derece kolaydır. Türkçe kaynak konusunda oldukça zengin içeriğe sahip olan Codeigniter, ülkemizde birçok web tasarımı projesinde kullanılmaktadır. Codeigniter; birçok frameworke göre hızlıdır; farklı veritabanlarına entegrasyonu kolaydır. Codeigniter, küçük siteler için uygun değildir; orta ve büyük ölçekli projelerde, oldukça başarılı sonuç verir.

Symfony2

Bu framework de Türkçe kaynak açısından zengindir ve ülkemizde sıklıkla tercih edilmektedir. Çok sayıdaki avantajına rağmen, Symfony2, eski PHP versiyonları ile çalışmamakta; bu da kullanıcı açısından birçok soruna neden olabilmektedir.

Phalcon

2012’de piyasaya çıkan Phalcon, tüm dünyada popülaritesini hızla artırmıştır. C diliyle yazılmış olması, Phalcon’un kullanıcılar tarafından tercih edilmesinin en önemli nedenidir. Phalcon, bu sayede, rakiplerinden çok daha yüksek performans sağlamaktadır. Türkçe dokümantasyona sahip olmaması, ülkemizde yeterince büyümemesine neden olmuştur.

Laravel

En çok kullanılan ve popülaritesi giderek artan Laravel’in pazar payı hızla büyümektedir. 2011 yılında piyasaya sürülen Laravel’in rakiplerinden temel farkları; çok esnek ve hafif bir framework olması; kolay kullanılabilmesi ve ekip çalışmalarında verimi artırmasıdır. Laravel, birçok frameworkten farklı olarak, orta ve büyük ölçekli web sitelerinin yanısıra, çok küçük sitelerde de kullanılabilmektedir. Laravel, ayrıca, Türkçe kaynak açısından son derece zengin bir içeriğe sahiptir. Bu da, Türkiye’de tercih edilmesinin ana nedenlerinden biridir.

Zend Framework

Karmaşık projeler için çok başarılı bir frameworktür, ancak küçük çaplı projeler için önerilmemektedir.

Yorum Yap

Yazar Hakkında

Merhaba 24 yaşındayım. İstanbul Kültür Üniversitesi - Bilgisayar Mühendisliği öğrencisiyim. Webizce Yazılım teknolojileri çatısında yazılım hizmeti veriyorum.

Yorum Yap