İşlevsel Programlama x Nesne Yönelimli Programlama
Paradigmalar olarak bilinen birkaç kodlama stilimiz var . Fonksiyonel Programlama (FP) ve Nesne Yönelimli Programlama (OOP) bunlardan biridir. Bu iki kodlama stili en ünlü olanlardır ve kesinlikle bir programcı olarak hayatınızda bir kez aralarındaki farkı tanımlamanız gerekecektir. O zaman hadi gidelim!
Fonksiyonel Programlama
Burada birçok fonksiyon ve değişken kullanıyoruz. FP'de, verileri ve işlevleri ayrı tutarız ve yalnızca bir şeyin hesaplanmasını istediğimizde verileri işlevlere aktarırız. Yani bu fonksiyonlardan dönen değerleri kodun başka bir yerinde kullanıyoruz.
Aşağıda, FP kod stilini gösteren bir örneğimiz var. İşlevi verilerden ve işlevden dönen değeri izleyiciyi konsolide etmek için kullandığımızdan ayırdığımıza dikkat edin.
function getArea(a, b) {
return a * b
}
var a = 2;
var b = 5;
var area = getArea(a, b);
console.log(area); // <= Use Here!
Burada verileri ve işlevleri, nesnelerin içindeki özellikler ve yöntemler olarak gruplandırıyoruz (bu nedenle “nesne yönelimli” adı verilmiştir). Bu, gerçek hayattaki nesnelerin modellerini oluşturmak istediğimizde çok yardımcı olur çünkü birlikte mantıksal anlam ifade eden özellikleri ve verileri gruplandırabiliriz.
Şimdi, OOP kod stilini kullanarak bir köpeğin nasıl inşa edileceğini görelim:
var dog = {
legs: 4,
sleepy: true,
bark: function(){
if(this.sleepy){
console.log('Woof, Woof');
} else {
console.log('Zzzzz');
}
},
nap: function() {
this.sleepy = false
}
}
console.log(dog.sleepy) // true
dog.bark(); // Woof, Woof
dog.nap();
console.log(dog.sleepy) // false
dog.bark(); //Zzzzz
İşlevsel Programlama x Nesne Yönelimli Programlama
Tabii ki, bu iki ayrı tarzın pek çok kavramı ve ilkesi vardır, ancak burada sadece aralarındaki ana farka odaklandım, böylece bir genel bakışa sahip olabilir ve sorulduğunda hızlı bir şekilde yanıtlamaya hazır olabilirsiniz.
Özgeçmişte, Fonksiyonel Programlama paradigmasının veri ve fonksiyonelliği ayrı tutarak, Nesne Yönelimli Programlamanın ise veri ve fonksiyonelliği anlamlı nesnelerde gruplandırarak çalıştığını söyleyebiliriz.
Referans
Profesyonel sertifika Meta Ön Uç Geliştirici — (Kurs 2) — Coursera'da mevcuttur.

![Bağlantılı Liste Nedir? [Bölüm 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































