Framework Nedir?

İstenilen çoğu şeye çabuk bir şekilde ulaşılan ve günlük işlerin görece daha pratik biçimde neticelendiği bir dijital çağın içerisindeyiz. İşlerin böylesine kısa bir zaman zarfında halloluyor oluşunda, bilgisayar programları ve yazılımlarının yadsınamaz bir rolü bulunur. Hayatımızın her alanına bir şekilde dokunan bu yazılım ve programlar, proje süreçlerini çok daha kısa bir sürede bitirmek adına çeşitli yöntemlere başvurur. Bu yöntemler arasında framework, fark yaratır ve hemen bir adım öne çıkar.

“Framework nedir?” sorusuna bu anlamda daha sağlıklı bir yanıt verebiliriz. Framework, yazılım geliştiricilerin kullanmış olduğu, evvelce hazırlanmış olan kütüphanelerin mevcut olduğu ve bu kütüphanelere yenilerinin eklenebileceği yapıların adıdır. Çerçeve ve çatı gibi anlamlara gelen framework kelimesi, yazılım geliştiricilere adeta kılavuzluk eder.

Framework Ne İşe Yarar?

Günümüzde pek çok alanda kullanılmakta olan framework kavramı; kullanıcı giriş çıkış, veri tabanı bağlantısı, mail atma, tema motoru gibi durumlarda sıklıkla kullanılır. Ortaya konulan yeni projelerin kısa sürede bitirilmesi ve işlerde zaman yönünden tasarruf sağlanması, framework ögesinin en mühim kullanım amacıdır. Yazımı uzun zaman alan ve önemli oranda emek isteyen kompleks olarak nitelendirilebilecek kodların, birkaç kelimeden oluşan kod satırıyla kısa bir hale getirilmesi bu yapı sayesinde mümkündür. Bu yapının kullanılmasındaki bir diğer amaç, yazılımlar vasıtasıyla yapılan tüm iş ve işlemlerin daha basit bir hale getirilmesinin sağlanmasıdır.

Framework Nasıl Çalışır?

Framework aracılığıyla yazılım geliştiriciler iskeleti tekrardan oluşturmak yerine uygulamaları inşa etmeye girişebilirler. Örneğin Java veya PHP kullanan geliştiriciler, sıfırdan işlem yapmadan kolaylıkla hazır şablonlar üzerinden çeşitli işlemler gerçekleştirebilir. Framework çalıştırılması için API (Uygulama Programlama Arayüzü) olması gerekir. Teknik olarak framework de bir API içerir. Framework bünyesinde kullanılmakta olan en yaygın yazılım dili PHP’dir. PHP kanalıyla erişilebilecek framework unsurları, sisteme entegre edilerek belirlenen çalışma programları sürdürülebilir. Belirli bir uygulama oluşturulması maksadıyla değiştirilen ve genişletilen frameworkler, yazılımın temelini oluşturmak için soyutlama denilen yüksek seviye kodunu kullanır.

Framework Kullanmanın Avantajları Nelerdir?

Yazılım geliştirme aşamasının bir hayli karmaşık olduğu düşünülecek olursa framework faktörü, yazılım geliştirme sürecini epeyce hızlandırarak yazılım geliştiricilerin işini bir hayli kolaylaştırır. Framework kullanmanın avantajları şu şekildedir:

  • Kaliteli düzeyde uygulama programları oluşturmaya aracılık eder.
  • Gereksiz ve yinelenen kod önlenebilir; kod daha güvenli haldedir.
  • Minimum hatayla tutarlı şekilde kod geliştirmeye katkı sağlar.
  • Fonksiyonel olarak sürekli gelişme sağlanır.
  • Kod türleri daha önce meydana getirilmiş ve test edilmiştir. Uygulamalar bu şekilde daha güvenlidir.
  • Kodun test edilmesi ve hatanın ayıklanması kolay bir şekilde yapılır. Kod sahibi olmayan geliştiricilerin bile yapması mümkündür.
  • Bir uygulama geliştirilmesi için gerekli olan süre, hatırı sayılır derecede azalır.

Library ve Framework Arasındaki Farklar Nelerdir?

Library ve Framework genel anlamda, kolaylaştırıcı kod yapılarının derlemeleridir. Birbirlerinden ayrıştıkları nokta, teknik olan kısımdır. İkisini birbirinden ayıran temel özellik, kodun nasıl çağrıldığına yöneliktir. Library bazı özellikleri beraberinde getirirken kodun nerede ve nasıl kullanılacağına karışmaz. Framework ise kodun nerede ve nasıl kullanılacağını belirtir. Eğer Framework’te belirtilen usulde kod kullanımı yapılmazsa işlev kullanılamaz hale gelir.

Yazılım geliştiriciler, Library kullanırken son derece özgürdür. Kodu, içerisinde bulunulan uygulamanın herhangi bir yerinde rahatlıkla kullanabilirler. Framework’te ise kullanım belli kurallara tabidir. Kısacası yazılım geliştiriciler tarafından oluşturulan kod ile Library çağrılmış olur, Framework ise kod aracılığıyla geliştiricileri çağırır.

Yaygın Kullanılan Frameworkler

Frameworkler pek çok yazılım dilinde kullanıldığından her yazılım dilinin kendine ait Framework türü bulunur. Doğru olan Framework unsurunun seçilmesi, ihtiyaçlara göre belirlenmesi gereken bir husustur. Tercih edilmesi muhtemel Framework yapıları içerisinde, yazılım diline uygun çeşitli alternatifler mevcuttur. Framework bünyesinde en çok tercih edilen yazılım dilleri PHP, Java, Python, Javascript’tir. Bunları aşağıda biraz daha kapsamlı şekilde inceleyeceğiz.

JavaScript Frameworkleri

  • Angular: İnternet üzerinde uygulama oluşturmayı kolaylaştıran; yazı tabanlı ve açık kaynaklı bir JS Framework’üdür. Bu Framework kullanılarak geliştirilen uygulamalara örnek olarak Netflix, Paypal ve YouTube gösterilebilir.
  • React: Facebook tarafından oluşturulmuş olan React, kısa bir sürede popülerlik kazanmıştır. Gelen yüksek trafiğe sahip sayfaların dinamik kullanıcı arayüzünü çalıştırmak ve geliştirmek için kullanılır. Reaktif bir yaklaşıma sahiptir. Çok sayıda ek araç kullanmayı öğrenmeyi gerektirebilir.
  • jQuery: Bu dilin üstüne diğer .js Framework’ler oluşturulur. Bir mobil uygulama alternatifidir.
  • Vue: 2016 yılında ortaya çıkan Vue, sahip olduğu özelliklerle değerini kanıtlar. Sayfa uygulamasının bu özellikler arasında en dikkat çekici olduğu değerlendirilebilir. Bu Framework kanalı, çapraz platform geliştirmek açısından son derece güvenilirdir.

PHP Frameworkleri

  • Symfony: İhtiyaç hissedilen PHP işlevlerini seçmeye ve tüm Framework’u kullanmaya imkan tanıyan bir paket sistemi bünyesinde barındırır ve son derece esnektir. Uygulamaların optimum bir şekilde çalışması için yerleşik test işlevselliği içerir.
  • Laravel: Yüksek performansıyla PHP web uygulaması geliştirme için standart ve çok güçlü özelliklerle dolu en güçlü PHP framework’üdür. Harikulade entegre test tekniğiyle uygulamaları hızla dışarı çıkarmaya yarar. Laravel kullanılarak oluşturulmuş birçok meşhur site mevcuttur. Laravel sayesinde, en karmaşık web uygulamaları çok kolay bir şekilde özelleştirilebilir ve yönetilebilir.      
  • Codelgniter: Zengin bir kütüphane setiyle oluşturulmuş olup alışveriş, iş ve seyahat siteleri için en popüler uyarlanmış MVC (Model View Controller) tarzı framework’dür.
  • Zend: İş ve alışveriş için bir MVC framework’u olarak kullanılır.
  • CakePHP: Açık kaynak kodlu ve MVC mantığıyla işleyen alışveriş, iş ve eğlence sektörleri için tasarlanmış diğer popüler PHP framework’üdür. 

Java Frameworkleri

  • Spring: Sahip olduğu ekosistem ve aktif bir toplulukla, en iyi bilinen Java framework’üdür. Kurumsal şekilde Java uygulamaları, mikro ve web hizmetleri oluşturmaya imkan tanır. Her türden Java projesi için kullanılabilir. Bir projenin herhangi bir aşaması ya da seviyesi için kullanılabilecek modüler bir framework’tür. Projenin yalnızca bir aşamasında değil tüm aşamaları için Spring kullanılabilir.
  • Oracle ADF: Kurumsal uygulamalara yönelik organizasyonlarda kullanılan bir framework’tür.
  • Apache Click: Bileşen eksenli web uygulama framework’ü olarak bilinir.

Python Frameworkleri

  • Django: Açık kaynaklı ve tam yığın kullanılabilen bir framework’tür. Web uygulamasını sıfırdan meydana getirmek için son derece kullanışlıdır. Ayrı ayrı kütüphaneler sunmanın yerine gereken tüm özellikleri varsayılan olarak sağlayan bir çalışma prensibine sahiptir. Modern web uygulamalarını ideal bir şekle getiren, güvenli, hızlı ve ölçeklenebilen bir framework’tür.
  • Web2py: Bir başka popüler, ölçeklenebilir ve açık kaynaklı Phyton Framework’üdür. Kod düzenleyici, hata ayıklayıcı ve tek tıklamayla dağıtım içermekte olan internet tabanlı IDE’siyle gelen bir framework’tür.
  • Flask: Sağlam bir web uygulaması temeli oluşturmaya yarar ve bunun için uzantılar kullanılabilir. 
  • Pyramid: Açık kaynaklı bir Python framework’üdür. Bu framework sayesinde, minimum karmaşıklık ile olabildiğince fazla iş yapmak amaçlanmıştır. Hem küçük hem de büyük uygulamalarla iyi bir şekilde çalışabilir.
  • Bottle: API oluşturulması için en başında her şeyi tek bir kaynak dosyaya uygular. Python standart kütüphane dışında hiçbir bağımlılığı bulunmaz.
0 Shares:
Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Benzer İçerikler