Framework Nedir?

Aug 5, 20202 dakika

Genel Bakış

Frameworkler, yazılımcılar tarafından geliştirilen ve uygulama geliştirilmesi için başka yazılımcılara sunulan kalıp programlardır. Daha geniş tanımlamayla, programlara genel işlevsel özellikleri sağlayan kullanıcılar tarafından seçici bir şekilde değiştirilebilen bir yazılım soyutlamasıdır.



Hiçbir yazılımcı, uygulama oluşturacağı zaman baştan sona uygulamanın bütün ihtayaçlarını kendi kodlamak istemez veya daha doğru ifadeyle kodlayamaz. Bunun için projesinde kendine yardımcı olacak parçaları ve araçları arar. Frameworklerin temel amaçları yazılım süreçlerin kolaylaştırmak, etkili yapmak ve yazılım arzını artırmaktır.



Uygulamanızın rekabetçi olabilmesi için bazı koşulları sağlaması gerekir. Günümüzde uygulamanızın verimli, ölçeklenebilir, hızlı, düşük maliyetli, test edilebilir vs... özelliklerine sahip olması elzemdir. Saydığımız özellikleri içeren bir yazılım projesi oluşturabilmek için eğer framework kullanmazsanız ciddi bir ekip gücü ve alt seviye programlama bilgisine ihtiyaç duyarsınız . Bu nedenle frameworkler uygulamalar için gerekli olan ana bileşenleri sizin için halleder, sizde uygulamanın ihtiyaçlarına ve sürecine odaklanmış olursunuz.





Yukarıdaki paragraf framework'un asıl görevini tanımlar. Bunun yanında frameworkler artık yazılım endüstrisi için bir zorunluluktur. Bilgi çağıyla birlikte her alanda yazılım ihtiyaçları artıyor ve bu ihtiyaçları karşılamak ve zamanında teslimat yapmak için frameworklere ihtiyaç duyuyoruz. Bugün görmüş olduğunuz uygulamaların %99'u bir yazılım dilinin frameworklerini kullanır ve kullanmak zorundadır. Bu benim içinde geçerli, bugün bylge.com'u sizlere tek başıma ulaştırabiliyorsam bu frameworklerin bana vermiş olduğu kolaylık sayesindedir.



İsterseniz yukarıdaki terimleri bir kenara bırakıp bunu bir metaforlar açıklayalım. Diyelim ki günlük olarak bitki çaylarından karışım yaparak çay içen birisiniz. Bir gün papatya, zencefil, rezene ve kekikten belirli oranlarda koyarak mükemmel bir karışım yakaladınız. Bu çayı tekrar tekrar içmek istiyorsunuz, bu durumda ne yaparsınız? Çayları her gün tekrar tekrar aynı oranda mı karıştırırsınız? Tabi ki de böyle yapmazsınız, bir tane kavanoz alır o mükemmel oranınızı kullanarak bitkileri içine boşaltır, her gün kavanozunuzdan istediğiniz kadar alır ve içmeye başlarsınız. Framework işte bu kavanozdur. Sizi tekrarlı işlerden kurtarır ve hayatınızı kolaylaştırır.

Niçin Framework Kullanırız

Yukarıda da ifade ettiğim gibi yazılım geliştirme karışık bir süreçtir. Çok sayıda görevin yerine getirilmesi gerekir. Framework kullanımı projenizde size aşağıdaki avantajları sunar;



  • Daha iyi uygulamalar oluşturmanıza ve programlama dillerinin tasarım pratiklerini kullanmanıza olanak sağlar.
  • Kodunuzu daha güvenli hale getirir.
  • Hatalı veya daha fazla kodun yazılmasını engeller.
  • Tutarlık bir kod gelişimiyle uygulamanızda ki hataları en aza indirir.
  • Uygulamanızın karmaşık teknolojilerle entegrasyonunu kolaylaştırır.
  • Frameworkler, açık kaynaklı oldukları için sürekli bir gelişim halindedir. Bu nedenle ilerleyen dönemlerde uygulamanız gelişime daha çok açıktır.
  • Frameworkler, küçük parçalar halinde oldukların kolay test edilirler. Bu, uygulamanızın daha stabil olmasını sağlar.
  • Uygulama geliştirmek için gerekli süreyi hatrı sayılır şekilde düşürürler.



Yazılımda karşımıza sıklıkla çıkan diğer bir tanım da library'dir. Framework ve library temelde aynı mantık la çalışırlar. Ancak aralarında teknik olarak farklılıklar bulunur. Bu konu hakkında bir içerik paylaşmıştım, buradan konuyu daha detaylı inceleyebilirsiniz.



Küçük bir destek binlerce beğeniden daha değerlidir
https://bylge-images.s3.amazonaws.com/wheat-3241114_1920.jpg
Ali Söylemez

Endüstri Mühendisi, Yazılımcı - Bylge.com Kurucusu

Bylge Icon
Bylge Icon