avatar
·2 dk okuma
Node.js'de Olaylar (Events) Modülü

Node.js'de Olaylar (Events) Modülü

Node.js, sunucu tarafı uygulamalarını geliştirmek için kullanılan popüler bir JavaScript ortamıdır. Bu makalede, Node.js'in ikinci yerleşik modülü olan Olaylar (Events) Modülü üzerinde duracağız ve bu modülün nasıl kullanıldığını örneklerle açıklayacağız.

Olaylar Modülünün Temelleri

Node.js'te olaylar, uygulamada gerçekleşen eylemler veya olaylardır ve bu olaylara yanıt verebiliriz. Olaylar Modülü, kendi özel olaylarımızı oluşturmamıza ve bu olaylara engellemeyen bir şekilde yanıt vermeye olanak tanır.

Olaylar Modülü ile Basit Bir Örnek

Olaylar kavramı, yalnızca Node.js'e özgü değildir ve günlük hayatımızda da mevcuttur. Örneğin, bir pizza siparişi verme sürecini ele alalım:

  1. Sipariş verildiğinde (bu bir olaydır), pizza pişirme işlemi başlar.

  2. Pizza pişirme işlemi, sipariş verme olayına bir yanıttır.

Bu senaryoyu, Node.js'de Olaylar Modülünü kullanarak kodlayabiliriz. İlk adım olarak, bu modülü içe aktarırız:

const EventEmitter = require('events');
const emitter = new EventEmitter();

EventEmitter sınıfı, olayları yaymak ve olaylara yanıt vermek için gerekli işlevselliği sağlar.

Olay Yayma ve Dinleme

Bir olayı yaymak için emit metodunu kullanırız. Örneğin, bir pizza siparişi olayını yayabiliriz:

emitter.emit('orderPizza', 'large', 'mushroom');

Bu olayı yakalamak ve yanıt vermek için on metodunu kullanırız. Bu, bir geri çağırma fonksiyonu alır:

emitter.on('orderPizza', (size, topping) => {
    console.log(`Bir ${size} pizza ${topping} ile pişiriliyor.`);
});

Olayların Önemi ve Asenkron Davranış

Olaylar, Node.js'de olay tabanlı programlamayı sağlar ve kodun engellenmeden çalışmasını mümkün kılar. Olay yayıldığında, olaya kayıtlı dinleyiciler (geri çağırma fonksiyonları) otomatik olarak çağrılır. Bu, Node.js'in asenkron doğasının bir parçasıdır ve uygulamanın engellenmesini önler.

Özet

Bu makalede, Node.js'in Olaylar Modülünü ve bu modülün nasıl kullanılacağını inceledik:

  1. events modülü, Node.js'te olaylarla çalışmamızı sağlar.

  2. EventEmitter sınıfı, olayları yaymak ve olaylara yanıt vermek için kullanılır.

  3. Olayları yaymak için emit metodunu, olayları dinlemek için on metodunu kullanırız.

  4. Olaylar, Node.js uygulamalarında asenkron programlama ve engellenmeyen kod akışı sağlar.

Olaylar Modülü, Node.js'in güçlü yönlerinden biridir ve etkili bir şekilde kullanıldığında, uygulamaların daha verimli ve hızlı çalışmasını sağlar.