*256 Bit SSL Sertifikası * Full Mobil Uyumlu * Full SEO Uyumlu
İsterseniz Mobil Uygulama Seçeneğiyle
Günümüzde teknolojinin gelişmesiyle birlikte, kişisel bilgisayarlarımızda veya mobil cihazlarımızda verilerimizi kaydetmek için not defteri uygulamaları oldukça popüler hale geldi. Bu nedenle, bu yazıda JavaScript'te OOP kullanarak bir not defteri uygulaması geliştirme konusu ele alınacaktır.
JavaScript, nesne yönelimli programlama (OOP) prensiplerine dayalı bir programlama dilidir. Bu, birçok nesneyi tasarlayabileceğiniz ve onları birbirleriyle iletişim halinde tutabileceğiniz anlamına gelir. Bu prensipleri kullanarak, bir not defteri uygulaması oluşturabiliriz.
Not Defteri Uygulaması
Bu uygulama, notlarınızı kaydetmenize ve düzenlemenize olanak tanıyacaktır. Notlarınızı eklemek, silmek veya güncellemek için bir form sunulacaktır. Ayrıca, notlarınızı listeleyebilir veya arayabilirsiniz.
Uygulamamızda kullanacağımız nesnelerin listesi şöyledir:
- Not: Her notun içeriği, başlığı ve tarihi olacaktır.
- NotListesi: Tüm notlarımızı ve bunları listelemek, aramak veya yönetmek için gerekli işlevleri içerecektir.
- KullanıcıArayüzü: Formları göstermek ve kullanıcının eylemlerini işlemek için kullanılacaktır.
Bu nesnelerden biri olan Not nesnesi, şu şekilde tasarlanabilir:
```javascript
class Not {
constructor(baslik, icerik) {
this.baslik = baslik;
this.icerik = icerik;
this.tarih = new Date();
}
}
```
Yukarıdaki kod, bir Not nesnesinin nasıl oluşturulacağını göstermektedir. Not'ların başlığı, içeriği ve tarihi olacak şekilde tasarlanmıştır.
NotListesi nesnemiz ise, tüm notları yönetmek ve listelemek için gerekli işlevleri içerir. Not listesi nesnemizi aşağıdaki şekilde tasarlayabiliriz:
```javascript
class NotListesi {
constructor() {
this.notlar = [];
}
yeniNot(not) {
this.notlar.push(not);
}
notSil(baslik) {
this.notlar = this.notlar.filter((not) => not.baslik !== baslik);
}
notAra(aramaKelimesi) {
return this.notlar.filter(
(not) =>
not.baslik.toLowerCase().includes(aramaKelimesi.toLowerCase()) ||
not.icerik.toLowerCase().includes(aramaKelimesi.toLowerCase())
);
}
}
```
Yukarıdaki kodda, NotListesi nesnesindeki yeniNot() yöntemi, bir Not nesnesini listeye eklerken, notSil() yöntemi, belirtilen başlığa sahip Not nesnesini listeden kaldırır. notAra () yöntemi, verilen arama kelimesine sahip tüm Not nesnelerini döndürür.
Son olarak, kullanıcı arayüzü (UI) işlevleri, kullanıcının notlarını yönetmesine olanak tanır. Bu işlevler aşağıdaki şekilde tasarlanabilir:
```javascript
class KullaniciArayuzu {
constructor() {
this.baslikInput = document.querySelector(\"#baslik\");
this.icerikInput = document.querySelector(\"#icerik\");
this.ekleBtn = document.querySelector(\"#ekleBtn\");
this.silBtn = document.querySelector(\"#silBtn\");
this.liste = document.querySelector(\"#notlar\");
this.araInput = document.querySelector(\"#araInput\");
this.araBtn = document.querySelector(\"#araBtn\");
}
temizleAlanlar() {
this.baslikInput.value = \"\";
this.icerikInput.value = \"\";
}
yeniNotuEkle(not) {
const item = document.createElement(\"li\");
item.innerHTML = `
${not.baslik}
${not.icerik}
${not.icerik}
Günümüzde teknolojinin gelişmesiyle birlikte, kişisel bilgisayarlarımızda veya mobil cihazlarımızda verilerimizi kaydetmek için not defteri uygulamaları oldukça popüler hale geldi. Bu nedenle, bu yazıda JavaScript'te OOP kullanarak bir not defteri uygulaması geliştirme konusu ele alınacaktır.
JavaScript, nesne yönelimli programlama (OOP) prensiplerine dayalı bir programlama dilidir. Bu, birçok nesneyi tasarlayabileceğiniz ve onları birbirleriyle iletişim halinde tutabileceğiniz anlamına gelir. Bu prensipleri kullanarak, bir not defteri uygulaması oluşturabiliriz.
Not Defteri Uygulaması
Bu uygulama, notlarınızı kaydetmenize ve düzenlemenize olanak tanıyacaktır. Notlarınızı eklemek, silmek veya güncellemek için bir form sunulacaktır. Ayrıca, notlarınızı listeleyebilir veya arayabilirsiniz.
Uygulamamızda kullanacağımız nesnelerin listesi şöyledir:
- Not: Her notun içeriği, başlığı ve tarihi olacaktır.
- NotListesi: Tüm notlarımızı ve bunları listelemek, aramak veya yönetmek için gerekli işlevleri içerecektir.
- KullanıcıArayüzü: Formları göstermek ve kullanıcının eylemlerini işlemek için kullanılacaktır.
Bu nesnelerden biri olan Not nesnesi, şu şekilde tasarlanabilir:
```javascript
class Not {
constructor(baslik, icerik) {
this.baslik = baslik;
this.icerik = icerik;
this.tarih = new Date();
}
}
```
Yukarıdaki kod, bir Not nesnesinin nasıl oluşturulacağını göstermektedir. Not'ların başlığı, içeriği ve tarihi olacak şekilde tasarlanmıştır.
NotListesi nesnemiz ise, tüm notları yönetmek ve listelemek için gerekli işlevleri içerir. Not listesi nesnemizi aşağıdaki şekilde tasarlayabiliriz:
```javascript
class NotListesi {
constructor() {
this.notlar = [];
}
yeniNot(not) {
this.notlar.push(not);
}
notSil(baslik) {
this.notlar = this.notlar.filter((not) => not.baslik !== baslik);
}
notAra(aramaKelimesi) {
return this.notlar.filter(
(not) =>
not.baslik.toLowerCase().includes(aramaKelimesi.toLowerCase()) ||
not.icerik.toLowerCase().includes(aramaKelimesi.toLowerCase())
);
}
}
```
Yukarıdaki kodda, NotListesi nesnesindeki yeniNot() yöntemi, bir Not nesnesini listeye eklerken, notSil() yöntemi, belirtilen başlığa sahip Not nesnesini listeden kaldırır. notAra () yöntemi, verilen arama kelimesine sahip tüm Not nesnelerini döndürür.
Son olarak, kullanıcı arayüzü (UI) işlevleri, kullanıcının notlarını yönetmesine olanak tanır. Bu işlevler aşağıdaki şekilde tasarlanabilir:
```javascript
class KullaniciArayuzu {
constructor() {
this.baslikInput = document.querySelector(\"#baslik\");
this.icerikInput = document.querySelector(\"#icerik\");
this.ekleBtn = document.querySelector(\"#ekleBtn\");
this.silBtn = document.querySelector(\"#silBtn\");
this.liste = document.querySelector(\"#notlar\");
this.araInput = document.querySelector(\"#araInput\");
this.araBtn = document.querySelector(\"#araBtn\");
}
temizleAlanlar() {
this.baslikInput.value = \"\";
this.icerikInput.value = \"\";
}
yeniNotuEkle(not) {
const item = document.createElement(\"li\");
item.innerHTML = `
${not.baslik}
${not.icerik}
${not.icerik}
Sınırsız Menü, Sınırsız Yemek, SSL Sertifikası, Full Mobil Uyumlu, Full SEO Uyumlu
ve Daha bir çok özellik. Bugün kullanmaya başlayın.