Programlamaya yeni başlamışların en çok karıştırdığı ve anlamlarını tam manası ile bilmediği 3 terimi ele alacağım. Bu 3 terim: kütüphane framework programlama dili. İşin aslında ben de bu 3 terimi tam manası ile bilmiyorum. Bu sebepten dolayı yazının içerisinde de hatalar bulunabilir. Bunları bana bildirirseniz yazıyı güncellerim.
Kütüphane Framework Programlama Dili Tek Tek Ele Alalım
Tüm bu terimleri elimden geldiği kadar size anlatmaya çalışacağım. Sizlere direk sözlük karşılıklarını vermeyeceğim. Korkmayın çok teknik de konuşmayacağım. Sadece kabaca bu 3 terimi ve farklarını anlatacağım.
Genelden özele gidecek olursak ilk ele alacağımız terim programlama dilidir. Felsefi konuşmak istemem ancak hepimiz sözlük tanımı olmasa da dilin tanımını biliyoruzdur diye tahmin ediyorum. Organımız olan dil değil konuştuğumuz dilden bahsediyorum. Türkçe gibi İngilizce gibi dilden bahsediyorum. Programlama dili de aynı Türkçe gibi bir dildir. Aradaki tek fark 2 insan arası değil de programlanacak cihaz ve program geliştiricisi arasında kullanılan bir dildir. Bu dillerin kendine has kuralları ve kelimeleri bulunmaktadır.
Her programlama dilinin kendine has kelimelerinin olduğunu size söylemiştim. Sizin konuştuğunuz dilde anlamsız olsa da bu kelimeler programlama dillerinde birer anlamı bulunabilmektedir. Bu kelimeler bir araya gelerek komutları oluşturabilmektedir. Ya da tek bir kelime de bir komuta tekabül edebilmektedir. Bu komutlar bir araya gelerek ya da tek başına fonksiyonları oluşturabilmektedir. Bu fonksiyonları sizin oluşturabildiğiniz gibi sizden önce birileri de oluşturmuş olabilir.
Bu fonksiyonları oluşturup bir araya topladığınız dosyaya kütüphane diyebiliriz. Kütüphaneleri paylaşırken genelde dll formatında paylaşırız. Bu sayede amacımız kodların gözükmemesidir. Dll dosyalarını bilgisayar içerisinde muhakkak görmüşsünüzdür. Kütüphaneleri siz ya da sizden önce birileri oluşturmuş olabilir. Kodunuzda bu kütüphaneleri ve kütüphaneler içerisinde bulunan fonksiyonları kullanabilirsiniz.
Sırada frameworkü tanıtmak kaldı. Framework aslında özel bir kütüphane diyebiliriz. Framework ve kütüphaneler birbiri ile çok karışır. Her bir framework bir kütüphanedir ancak her bir kütüphane framework değildir. Frameworklerin belli bir standartları vardır. Frameworklerde bir yazılım mimarisi bulunmaktadır. Framework içerisinden bir fonksiyonu ya da bir metodu kullanırken uymanız gereken belli standartlar vardır. Framework sizi bu standartları kullanmaya mecbur bırakmaktadır.
ASP.NET’in MVC frameworkünden örnek verecek olursak, eğer bir view modeliniz var ise bu modele bağlı model view ve controller modelleri de olmak zorundadır. Bu frameworkün bir standartıdır ve bunun dışına çıkamazsınız.
Kütüphanelerin bir dökümantasyonu olması gerekliliği yoktur. Olsa tabiki daha hoş olur ancak bu bir zorunluluk değildir. Frameworklerde bu durum bir zorunluluktur.
Çocukluğumdan beri arabalara olan ilgim babam sayesinde başlamıştır. Araba manyağı seviyesinde bir ilgim var ancak bunu her ortamda dile getirmem. Teknolojiye ve bilgisayara olan ilgim kendimi tanımaya başladım başlayalı oldu. Şimdi ise kendimce kod yazabilen bir bilgisayar mühendisi olarak çalışıyorum.