JavaScript'te Nesne Yönelimli Programlama Nedir?

JavaScript'te Nesne Yönelimli Programlama Nedir?

JavaScript'te nesne yönelimli programlama, kodlama dünyasında oldukça önemli bir konudur Bu yazılım yöntemi, programlama sürecini daha kolay ve verimli hale getirir Bu yazıda, JavaScript'te nesne yönelimli programlamanın temel ilkelerini öğrenebilir ve uygulamalarınızda kullanabilirsiniz Daha fazla bilgi edinin!

JavaScript'te Nesne Yönelimli Programlama Nedir?

JavaScript dilinde nesne yönelimli programlama (OOP), bir programın temel öğeleri olan nesneleri kullanarak kodların yapısını düzenleyen bir programlama yaklaşımıdır. OOP temel olarak, nesnelerin bir araya getirilmesi, işlevselliklerinin ve özelliklerinin belirtilmesiyle oluşur. Bu sayede kodlar daha anlaşılır, düzenli ve tekrar kullanılabilir hale gelir.

Nesne yönelimli programlama, JavaScript gibi bir dilde oldukça kullanışlıdır. Bu yaklaşım, kod kalitesini artırırken uzun vadede zaman ve iş gücü tasarrufu sağlayabilir. Nesne yönelimli programlama, daha büyük projeler üzerinde çalışırken özellikle kullanışlıdır. JavaScript'te nesne yönelimli programlama yapmak için belirli prensiplere uygun davranmak ve bazı özelliklerin işleyişini anlamak gerekmektedir.

Bu makale, JavaScript dilinde nesne yönelimli programlama prensiplerini ve uygulamasını açıklamaktadır. Ayrıca, özelliklerinin yanı sıra adım adım nasıl yapılacağı hakkında bilgi sunmaktadır. Böylece, genellikle kullanılan nesne yönelimli programlama öğelerinin yanı sıra, örneklerle de yöntemin uygulamasının nasıl yapıldığı gösterilmektedir.


Nesne Yönelimli Programlama Nedir?

Nesne yönelimli programlama (OOP), programlama paradigmalarından biridir. Bu yaklaşım, programlamayı bir dizi nesneye dayandırmaya odaklanır. Bu nesneler bir şirket, bir hayvan veya herhangi bir şey olabilir ve her biri verileri ve işlevleri içerir.

Bu yaklaşımda, bir nesne, verileri ve işlevleri (metodları) içeren bir şey olarak düşünülür. Bununla birlikte, bir nesne sadece kendi işlevleri için kullanılmaz, aynı zamanda başka nesneleri de etkiler. Nesneler, sınıflarda tanımlanır ve bu sınıfların özellikleri, nesneler tarafından kullanılır.

Nesne yönelimli programlama, kodun daha anlaşılır hale gelmesini sağlar. Birçok çalışma grubu, OOP yaklaşımını kullanarak, kodu daha iyi bir şekilde organize edebilir ve daha kolay bir şekilde yeniden kullanabilir.

Bu nedenle, OOP yaklaşımı, büyük ölçekli yazılımların ve proje gruplarının geliştirilmesinde yaygın olarak kullanılır.


Neden JavaScript'te Nesne Yönelimli Programlama Kullanmalıyız?

Nesne yönelimli programlama birçok açıdan faydalıdır ve JavaScript gibi bir dil için de önemlidir. JavaScript, sadece bir dizi işlevi birleştirmekle kalmaz, aynı zamanda büyük bir karmaşıklığın üstesinden gelmek için nesne yönelimli programlama tekniklerini kullanır.

Nesne yönelimli programlama ile, kodunuz daha organize olur ve daha az hata yapma olasılığınız artar. Ayrıca, kodun daha kolay anlaşılması için daha iyi bir yapı sağlanır. Nesne yönelimli programlama, kodun yeniden kullanılabilirliğini de artırır; çünkü aynı kod bloğu, farklı nesneler için kullanılabilir.

Ayrıca, nesne yönelimli programlama düzenli ve yorulmadan yazılabilen bir dil oluşturur. Bu, büyük projelerde kodları daha kolay takip etmenize yardımcı olur. Ayrıca, nesne yönelimli programlama, değişen projelerde gereksinimlerin ve özelliklerin çabucak yeniden tanımlanmasına izin verir.

JavaScript dilinde nesne yönelimli programlama kullanarak daha sağlam bir yapı oluşturabilirsiniz. Daha az hata yaparsınız, çalışmanız daha hızlı ilerler ve gelecekteki değişiklikler daha kolay yapılır. Bu nedenle, JavaScript dilinde nesne yönelimli programlamayı kullanmanız önerilir.


JavaScript'te Nesne Yönelimli Programlama Özellikleri

JavaScript dilinde nesne yönelimli programlama, nesneler ve prototipler kavramları üzerine kuruludur. Nesneler, özellikler ve metodlar tarafından tanımlanır. Bu özellikler, tanımlandığı sınıf ve üst sınıflar tarafından kalıtılabilir veya değiştirilebilir. JavaScript'teki nesne yönelimli programlama özelliklerine bakalım:

  • Nesne: JavaScript'te nesne, özellikleri ile birlikte tanımlanır. Özellikler, anahtar-değer çiftleri şeklinde tanımlanabilir. Nesneler, değişkenler ve fonksiyonlar gibi türler ile birlikte kullanılabilir.
  • Prototip: JavaScript'teki nesneler, üst sınıfları, değerleri, üyeleri ve metodlarıyla birlikte prototipe sahiptir. Prototip, nesne özellikleri ve metodları için bir şablon görevi görür. Nesnelerin özellikleri prototipten kalıtılır ve bu özelliklerin değerleri nesne tarafından değiştirilebilir.
  • Metod: JavaScript'teki nesneler, özelliklerin yanı sıra, metotlar da içerebilir. Metotlar, nesnenin davranışlarını ve fonksiyonlarını tanımlar. Bu yöntemler, protoype'ten miras alınabilir veya özel olarak tanımlanabilir.
  • Kalıtım: JavaScript'teki nesne yönelimli programlama, kalıtımı destekler. Bir nesne, özelliklerin ve metodların bir üst sınıftan kalıtılmasını sağlayabilir. Bu, kod tekrarını en aza indirir ve düzgün bir yapı oluşturulmasını sağlar.

JavaScript nesne yönelimli programlama, öğrenilmesi gereken önemli bir konudur. Nesnelerin oluşturulması, sınıfların tanımlanması, kalıtımın kullanılması, prototipleme ve miras alma gibi kavramlar üzerinde iyi bir anlayışa sahip olmak, daha iyi bir kod yazmaya olanak tanır.


Nesneler ve Metodlar

JavaScript nesne yönelimli programlama özelliği ile her nesne bir metot da içerebilir. Bu kadar önemli bir konseptin pratikte anlaşılması, kodlamayı daha verimli ve anlaşılır hale getirir.

JavaScript'teki bir nesne, bir şeyi temsil eden bir veri birimidir. Bu, bir özellik veya bir fonksiyon olabilir. Özellik, nesnenin mevcut durumunu temsil ederken, fonksiyonlar, nesnenin işlevselliğini temsil eder. Nesnelerde tanımlanan fonksiyonlara metod denir.

Bundan dolayı, nesneler ve metodlar hem iyi kodlama pratiğini yansıtır hem de JavaScript uygulamalarında vazgeçilmez bir özelliktir. Nesneler, fonksiyonların nasıl davranması gerektiğini belirler ve metodlar da nesnelerde çalıştırılacak olan fonksiyonları içerir.

Her JavaScript nesnesi bir veya daha fazla özellik içerebilir. Bu özellikler, genellikle anahtar-değer çiftleri olarak tanımlanır ve her bir özellik bir isme sahiptir. Bu özel isim, noktalı virgül kullanılarak çağrılabilir. Örneğin:

Kod Bloğu Açıklama
var araba = { araba adı: "BMW", modele: "X5", yıl: 2020};
alert(araba.araba adı); BMW mesajını gösterir.

JavaScript metodları, bir nesnenin davranışını kontrol eden işlevlerdir. Bu metodlar, nesneler içine tanımlanır ve bu nesneler çağrılarak kullanılabilir. Nesne metodları, bu nesnenin alabileceği hangi özelliklere sahip olabileceğini ve hangi işlemleri gerçekleştirebileceğini kontrol eder. Örneğin:

Kod Bloğu Açıklama
var araba = { araba adı: "BMW", modele: "X5", yıl: 2020,
araba Özellikleri: fonksiyon() { return this.araba adı + ", " + this.model + ", " + this.yıl;}
;
alert(araba.araba Özellikleri()); BMW, X5, 2020 mesajını gösterir.

Bu örnekler de gösterildiği gibi, JavaScript nesneleri ve metodları modern şartlara uygun, pratik ve hızlı bir programlama yöntemi kullanmak için harika bir yoldur. Nesnelerin açıklanması ile birlikte yukarıda açıklanan diğer temel öğeler, JavaScript'e hakimiyetinizi artırabilir.


Miras Alma

JavaScript dilinde nesne yönelimli programlamada en önemli özelliklerden biri miras alma veya kalıtımdır. Miras alma, yeni nesne türlerinin tanımlanmasını kolaylaştıran ve kodun kullanılabilirliğini artıran bir özelliktir. Miras alma, bir nesnenin özelliklerini başka bir nesneye aktarmak anlamına gelir. Bu sayede, yeni bir nesne eklemek istediğinizde oluşturduğunuz nesneleri yeniden yazmak zorunda kalmadan sadece özelliklerini aktararak işlemi tamamlayabilirsiniz.

Miras alma işlemi, bir üst sınıfın özelliklerini alt sınıflara aktarmak için kullanılır. Bu sayede, alt sınıfların kullanabileceği ortak özelliklerin tanımlanması daha kolay olur. Yeni bir nesne oluşturduğunuzda, önceden tanımlanmış bir sınıftan miras alarak yeni sınıfın özelliklerine erişebilirsiniz. Bu işlem, kodlama sürecini hızlandırır ve sınıflar arasındaki benzerlikleri artırır.

Örnek olarak, bir “Hayvan” sınıfı oluşturduğunuzu varsayalım. Bu sınıfta, hayvanların genel özelliklerini tanımlayabilirsiniz. Ardından, “Kedi” ve “Köpek” sınıfları gibi alt sınıflar oluşturarak, bu sınıfların özelliklerini “Hayvan” sınıfından miras alabilirsiniz. Böylece, her alt sınıfın özellikleri arasındaki benzerlikler artar ve kodlama süreci daha kolay hale gelir.

Miras almanın diğer bir avantajı, kodun tekrar kullanılabilirliğini artırmasıdır. Kodlama sürecinde, her seferinde yeni bir nesne oluşturmak yerine önceden tanımlanmış bir sınıftan miras alarak yeni nesneyi oluşturabilirsiniz. Bu sayede, kodunuzda daha az hata oluşur ve daha az zaman harcarsınız.

JavaScript dilinde miras alma işlemi, “prototype” özelliği kullanılarak gerçekleştirilir. Bir nesne oluştururken, “prototype” özelliğini kullanarak var olan bir nesneden özelliklerini devralabilirsiniz. Bu işlemi yaparken, yeni nesneye ait özellikleri koruyabilirsiniz.


Nesne Yönelimli Tasarım Prensipleri

Nesne Yönelimli Programlama'nın önemli bir parçası da nesne yönelimli tasarım prensipleridir. Bu prensipler, bir programlama projesinin tasarımının mümkün olan en iyi hale getirilmesine yardımcı olur. Bu prensiplerin amacı, nesne yönelimli programlama projelerinin doğru ve etkili bir şekilde tasarlanabilmesine izin vermek için bir çerçeve sağlamaktır.

Bununla birlikte, nesne yönelimli tasarım prensipleri, programcıların nesnelerini daha net ve anlaşılır bir şekilde tasarlamalarına yardımcı olmak amacıyla geliştirilmiştir. Bu prensipler genellikle SOLID akroniminden yararlanılır. Bu akronim, her harf için bir tasarım ilkesi temsil eder.

SOLID ilkeleir şu şekildedir:

  • Single Responsibility Principle (SRP) - Tek Sorumluluk İlkesi: Bir sınıfın veya metodu değiştirme nedeni, sınıfın sorumluluğunu taşıdığı ve değişikliğin etkileyeceği bu görevle ilgilidir.
  • Open Closed Principle (OCP) - Açılır/Kapanır Prensibi: Bir sınıf, birlikte kullanılan başka sınıflara bağımlılık gerektirmeden genişletilebilir olmalıdır.
  • Liskov Substitution Principle (LSP) - Liskov Yerine Koyma İlkesi: Türeyen alt sınıflar, temel sınıfın yerine geçebilmelidir.
  • Interface Segregation Principle (ISP) - Arayüz Ayırma İlkesi: Veri arayüzleri, istemci özelliklerine göre ilgili tipler halinde ayrıştırılmalıdır.
  • Dependency Inversion Principle (DIP) - Bağımlılık Tersine Çevirme Prensi: Yüksek seviyeli modüller daha düşük seviyeli modüllere bağımlı olmamalıdır. Tersi olmalıdır.

Bu tasarım prensiplerine uygun bir şekilde programlama yapmak, nesne yönelimli programlama projelerini daha anlaşılabilir, sürdürülebilir ve esnek hale getirir.


JavaScript'te Nesne Yönelimli Programlama Nasıl Yapılır?

Nesne yönelimli programlama prensiplerinin temel kavramlarını öğrendikten sonra, şimdi JavaScript dilinde nesne yönelimli programlama uygulama adımlarına bakalım.

JavaScript'te nesne yönelimli programlama kullanarak önce bir nesne oluşturmanız gerekir. Bu nesnenin özelliklerini ve metotlarını tanımlamak için sınıf kullanabilirsiniz. Sınıf, bir nesnenin özelliklerini ve metodlarını tanımlayan bir şablondur.

AdımAçıklama
Adım 1Nesnenin özelliklerini tanımlayın. Özellikler, nesnenin niteliklerini temsil eder. Örneğin, bir araba nesnesi için özellikler, hız, renk, motor gücü, vs. olabilir.
Adım 2Nesnenin metodlarını tanımlayın. Metodlar, nesnenin davranışlarını temsil eder. Örneğin, bir araba nesnesi için metodlar, ilerle(), dur(), hızlan(), yavaşla(), vs. olabilir.
Adım 3Sınıf oluşturun. Bir sınıf, nesnelerin özelliklerini ve metodlarını tanımlayan bir şablondur. Örneğin, bir Car sınıfı oluşturarak, tüm arabaların özelliklerini ve metodlarını tanımlayabilirsiniz.
Adım 4Nesneyi oluşturun. Sınıfı kullanarak, örneğin Car sınıfından bir nesne oluşturabilirsiniz. Bir nesne oluşturduktan sonra, özelliklerini ve metodlarını kullanabilirsiniz.

JavaScript'te nesne yönelimli programlamada, kalıtım ve miras alma gibi konular da oldukça önemlidir. Bir nesne, başka bir nesne tarafından kalıtım veya miras alınabilir. Bu, nesneler arasında kod tekrarından kaçınmak için yararlıdır.

  • Kalıtım: Bir nesne, özelliklerini ve metodlarını başka bir nesneden alabilir. Örneğin, bir Car sınıfı, bir Truck sınıfından özelliklerini ve metodlarını kalıtım yoluyla alabilir.
  • Miras Alma: Bir sınıf, başka bir sınıfın özelliklerini ve metodlarını alabilir. Örneğin, bir Truck sınıfı, bir Car sınıfının özelliklerini ve metodlarını miras alabilir.

JavasScript'te nesne yönelimli programlama, kod tekrarını azaltmanın yanı sıra, daha okunaklı ve yönetilebilir bir kod yazmanıza yardımcı olabilir. Ayrıca, nesne yönelimli programlama kullanarak, daha modüler bir kod oluşturabilirsiniz.


Nesne Oluşturma

JavaScript'te nesne oluşturma işlemi, bir nesnenin özelliklerini ve davranışlarını tanımlayan bir sınıf tanımlanmasıyla gerçekleştirilir.

Bir sınıfın örnekleri nesne olarak adlandırılır ve new anahtar kelimesi kullanılarak oluşturulur. Nesne oluşturma işlemi şu adımlarla gerçekleştirilir:

  • Bir sınıf tanımlanır.
  • Bir nesne örneği (instance) oluşturulur.
  • Oluşturulan nesne örneği, sınıfın metodları ve özellikleriyle kullanılmak üzere değişkene atanır.

Bir nesne örneği oluşturmak için aşağıdaki örnek kullanılabilir:

class Araba {  constructor(marka, model, yil) {    this.marka = marka;    this.model = model;    this.yil = yil;  }    bilgileriGoster() {    console.log(this.marka + ' ' + this.model + ' ' + this.yil);  }}let araba1 = new Araba('Ford', 'Mustang', 1969);araba1.bilgileriGoster(); // Ford Mustang 1969

Bu örnekte, Araba adlı bir sınıf tanımlanmış ve constructor() metodu kullanılarak sınıfın özellikleri belirlenmiştir. Araba sınıfının bilgileriGoster() metodundan yararlanarak, araba1 adlı bir nesne örneği oluşturulmuştur. Bu nesne örneği sınıfın özellikleriyle eşleştirildiği için, bilgileriGoster() metodu ile bu özelliklere erişim sağlanabilir.


Sınıflar

JavaScript'teki nesne yönelimli programlama konsepti sınıfları içermektedir. Sınıflar, nesnelere benzeyen, ancak bir örneği olmayan, bir veri yapılarından oluşur. Bunu daha iyi anlayabilmek için, bir sınıf adının özellikleri ve davranışları belirleyen bir şablon olarak düşünebiliriz.Sınıf tanımlamak, üzgünüm ki, diğer dillerdeki kadar basit değildir. JavaScript'te sınıflar, nesnelerin özelliklerini ve davranışlarını tanımlamak için kullanılan bir fonksiyon tarafından tanımlanır. Bu fonksiyona kurucu fonksiyon adı verilir ve nesnenin oluşturulması sırasında çalıştırılır.Sınıfın yapısı için birkaç örnek vermek gerekirse, _class_ anahtar kelimesi ile sınıf tanımlamak mümkündür. Örneğin:

class Araba {    constructor(marka, model) {      this.marka = marka;      this.model = model;    }  }

Bu örnekte, Araba adlı bir sınıf tanımlanıyor ve constructor fonksiyonu, sınıfın özelliklerinin belirlenmesini sağlıyor. Marka ve model özellikleri, constructor fonksiyonunun girdileridir ve "this" anahtar kelimesi ile bir nesne özelliğine atanırlar.Sınıflar, nesnelerin özelliklerinin yanı sıra, fonksiyonları da içerebilir. Örneğin:

class Araba {    constructor(marka, model) {      this.marka = marka;      this.model = model;    }    tamirEt() {      console.log(this.marka + " " + this.model + " tamir ediliyor...");    }  }

Bu örnekte, Araba sınıfı, tamirEt() fonksiyonunu içeriyor. Bu fonksiyon, Araba nesnesi oluşturulduğunda çağrılabilir ve "this" anahtar kelimesini kullanarak nesnenin özelliklerine erişir.Sınıfların miras alınması da mümkündür. Böylece, bir sınıfın diğer sınıflardan özelliklerini alarak yeni bir sınıf oluşturabilirsiniz. Bu yapı, karmaşık programlar yazarken oldukça yararlı olabilir.Sonuç olarak, sınıflar, JavaScript'teki nesne yönelimli programlama konsepti içinde oldukça önemlidir. Sınıflar, nesnelere yönelik davranışları, özellikleri ve yöntemleri tanımlamak için şablon olarak kullanılabilir. Ancak, sınıf tanımlama süreci, diğer dillere kıyasla daha karmaşıktır ve biraz alışkanlık gerektirir.

Kalıtım ve Miras Alma

JavaScript'te nesne yönelimli programlama kullanarak, programcılar bir nesnedeki özellikleri ve davranışları diğer nesnelere nasıl aktaracağını düşünebilir. Bu işlem, kalıtım adı verilen bir işlemle gerçekleştirilebilir. Kalıtım, önceki bir nesnenin davranışlarının ve özelliklerinin bir sonraki nesne tarafından devralındığı bir süreçtir.

Bir sınıf, bir nesnenin temel özelliklerinin ve davranışlarının tanımlandığı bir şablondur. Kalıtımın kullanımı, bir sınıftaki özelliklerin, alt sınıflara, nesnelere ve metotlara nasıl aktarılacağına karar verebilir. JavaScript, bir sınıftan kalıtımı nasıl yapılacağına dair bazı mekanizmalar sunar.

JavaScript, kalıtımı yapmak için üç mekanizmadan faydalanır: prototip tabanlı kalıtım, sınıf tabanlı kalıtım ve karışık kalıtım. Prototip tabanlı kalıtım, sınıfları oluşturma mekanizmasına benzeyen bir şablondur ancak hiyerarşik yapısı yoktur. Bu sayede, yeni özellikler ve davranışlar eklenebilir, değiştirilebilir veya silinebilir.

Sınıf tabanlı kalıtım, sınıf tabanlı dillerde kullanılan kalıtım türüdür. Bu tür kalıtımda, alt sınıf üst sınıftan tüm davranışları, özellikleri, verileri ve metotları miras alır. Böylece, kod tekrarı en aza indirilir ve kod yazma işlemi hızlandırılır.

Karışık kalıtım, prototip tabanlı kalıtım ve sınıf tabanlı kalıtımın bir arada kullanıldığı bir kalıtımdır. Bu şekilde JavaScript, bir nesneye birden fazla sınıfın özelliklerini eklemek için kullanılabilir.

Aşağıdaki örnekte, bir Kişi ve bir Öğrenci sınıfı tanımlanmıştır:

```function Person(name, age) { this.name = name; this.age = age;} Person.prototype.getName = function() { return this.name;}; function Student(name, age, major) { Person.call(this, name, age); this.major = major;} Student.prototype = Object.create(Person.prototype);Student.prototype.constructor = Student; Student.prototype.getMajor = function() { return this.major;}; var student = new Student("Aylin", 21, "Software Engineering");alert(student.getName() + " is studying " + student.getMajor());```

Bu kodda, Öğrenci sınıfının Person sınıfından kalıtım aldığı görülebilir. Öğrenci sınıfına, major özelliğinin yanı sıra getName ve getMajor metodları eklenmiştir. Bu şekilde Öğrenci sınıfı, Person sınıfında tanımlanan özelliklere sahip olacak ve ayrıca kendi tanımladığı özelliklere de sahip olacaktır.


JavaScript'te Nesne Yönelimli Programlama Uygulama Örnekleri

JavaScript dilinde nesne yönelimli programlama uygulamaları birçok alanda yapılabilir. Bu uygulamaların örnekleri ise oldukça çeşitlidir. Bunlardan bazıları aşağıda listelenmiştir:

JavaScript ile nesne yönelimli bir programlama uygulaması olan yaş hesaplama uygulaması yapılabilir. Bu uygulama özellikle sosyal medya platformlarında kullanılabilir. Kullanıcının doğum tarihini girerek yaşını hesaplayan bu uygulamanın uygulanması oldukça kolaydır. HTML form elemanları kullanılarak girilen doğum tarihi verileri alınır ve bu veri hesaplanarak sonuç kullanıcıya gösterilir.

JavaScript ile nesne yönelimli bir programlama uygulaması olan müşteri listesi uygulaması yapılabilir. Bu uygulama, bir web sitesinde veya uygulamada bir müşteri listesi oluşturmaya yönelik kullanılabilir. Bu uygulamada, müşterilerin isimleri, adresleri ve telefon numaraları gibi veriler eklenebilir. Bu veriler, bir dizi nesne olarak depolanabilir ve müşteri listesi olarak görüntülenebilir.

Bu örneklerin yanı sıra, JavaScript dilinde nesne yönelimli programlama kullanarak birçok farklı uygulama geliştirilebilir. Uygulama geliştirirken nesne yönelimli prensiplere uygun olarak kodlamak, daha verimli ve düzenli bir programlamayı sağlar.


Yaş Hesaplama Uygulaması

Yaş hesaplama uygulaması, nesne yönelimli programlama prensipleri kullanılarak JavaScript dilinde kolayca yapılabilmektedir. Bu uygulama sayesinde kullanıcıların doğum tarihlerine göre yaşlarını hesaplayabilir ve sonuçları ekranda gösterebilirsiniz.

Uygulamayı oluşturmak için öncelikle bir "Yaş Hesapla" butonu oluşturun ve bu butona bir tıklama fonksiyonu ekleyin. Ardından, kullanıcının doğum tarihini girmesi için bir form oluşturun ve bu formun içinde gün, ay ve yıl seçenekleri yer alsın. Tarih seçimini yaptıktan sonra, "Yaş Hesapla" butonuna tıklama işlemi gerçekleştirildiğinde, yaş hesaplaması ve sonuçları ekranda göstermek için bir JavaScript fonksiyonu yazın.

Bu fonksiyon, kullanıcının doğum tarihini alır, bugünün tarihini hesaplar ve bu iki tarihi karşılaştırarak kullanıcının yaşını hesaplar. Yaş hesaplama işlemi tamamlandıktan sonra sonucu ekranda göstermek için bir HTML sayfası tasarlayın. Sonuçları liste veya tablo şeklinde görüntüleyebilirsiniz.

Bu uygulama, JavaScript'teki nesne yönelimli programlamanın birçok kullanım örneğinden sadece bir tanesidir. Nesne yönelimli programlama prensiplerini öğrenerek, JavaScript'teki uygulamalarınızı daha etkili ve kullanışlı bir hale getirebilirsiniz.


Müşteri Listesi Uygulaması

Müşteri listesi uygulaması, JavaScript'te nesne yönelimli programlama uygulaması ile oldukça kolay bir şekilde yapılabilir. İlk olarak, bir Müşteri sınıfı tanımlanır ve bu sınıfın özellikleri belirlenir. Özellikler arasında müşteri adı, soyadı, adresi, telefon numarası, e-posta adresi, sipariş geçmişi vb. yer alabilir.

Daha sonra, Müşteri sınıfından nesneler oluşturulur ve bu nesneler bir dizi içinde depolanır. Müşteri listesi uygulaması, bu dizideki öğeleri listeleyerek ve her bir müşteri için ayrıntılı bilgileri göstererek çalışır. Bu nedenle, bir HTML sayfası oluşturulmalı ve bu sayfa, JavaScript kodu tarafından uygulamanın çalışması için kullanılmalıdır.

Örnek olarak, aşağıdaki kod bloğunda Müşteri sınıfı tanımlanmıştır:

class Musteri {  constructor(ad, soyad, adres, telefon, eposta, siparisler) {    this.ad = ad;    this.soyad = soyad;    this.adres = adres;    this.telefon = telefon;    this.eposta = eposta;    this.siparisler = siparisler;  }  tamAd() {    return this.ad + " " + this.soyad;  }  siparislerinToplamFiyati() {    let toplam = 0;    for (let i = 0; i < this.siparisler.length; i++) {      toplam += this.siparisler[i].fiyat;    }    return toplam;  }}let musteriler = [  new Musteri("Ahmet", "Yılmaz", "İstanbul", "555-555-55-55", "ahmet.yilmaz@example.com", [    {      ad: "telefon",      fiyat: 2000    },    {      ad: "bilgisayar",      fiyat: 4000    }  ]),  new Musteri("Ayşe", "Demir", "Ankara", "555-555-55-56", "ayse.demir@example.com", [    {      ad: "televizyon",      fiyat: 3000    },    {      ad: "cep telefonu",      fiyat: 2500    }  ])];

Bu örnekte, Musteri sınıfı tanımlanmıştır ve iki müşteri nesnesi oluşturulmuştur. Her müşterinin özellikleri belirlenmiştir ve siparişler dizisi kullanılarak her müşteri için sipariş geçmişi detaylı bir şekilde listelenmiştir.

Sonuç olarak, müşteri listesi uygulaması, JavaScript'teki nesne yönelimli programlama prensiplerini kullanarak kolayca yapılabilecek bir uygulamadır. Sınıflar, özellikler ve metodlar kullanılarak müşterilerin bir listesi oluşturulabilir ve bu liste, HTML sayfasında kullanarak ayrıntılı bilgi gösterilebilir.