Şimdi gel, bu yazıda seni, Node.js ile gerçek zamanlı bir uygulama yapmanın sırlarını adım adım göstereyim. Ama merak etme, hiç karmaşık olmayacak. Eğlenceli bir yolculuğa çıkıyoruz!
Adım 1: Başlangıç İçin Gerekli Kurulumları Yapma
1. Node.js'i [resmi sitesinden](https://nodejs.org/) indiriyoruz ve kuruyoruz.
2. Terminal (ya da Komut İstemcisi) üzerinden `node -v` komutunu yazarak, Node.js’in doğru bir şekilde kurulup kurulmadığını kontrol edebiliriz. Eğer sürüm numarasını görüyorsan, her şey yolunda demektir!
Adım 2: WebSocket ile Gerçek Zamanlı İletişim Kurma
İlk olarak, WebSocket kullanabilmek için gerekli olan paketi yükleyelim:
npm install ws
Kurulum tamamlandığında, hemen bir WebSocket sunucusu kurarak veri akışına başlayabiliriz.
Adım 3: Basit Bir Chat Uygulaması Yapma
1. Server: İlk olarak bir WebSocket sunucusu oluşturalım.
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', (ws) => {
console.log('Yeni bir kullanıcı bağlandı.');
ws.on('message', (message) => {
console.log(`Mesaj alındı: ${message}`);
// Herkesle mesajı paylaş
wss.clients.forEach((client) => {
if (client !== ws && client.readyState === WebSocket.OPEN) {
client.send(message);
}
});
});
});
2. Client: Şimdi de, bu sunucuya bağlanacak basit bir frontend oluşturacağız. HTML ve JavaScript kullanarak, WebSocket bağlantısı kuracağız.
Chat Uygulaması
Chat Uygulaması
Bu kadar! Artık gerçek zamanlı bir chat uygulamanız var.
Adım 4: Uygulamayı Geliştirme ve Test Etme
WebSocket’i kullanarak, aynı zamanda canlı veri akışı projelerinde de kullanabiliriz. Örneğin, borsa verisi ya da hava durumu gibi veriler sürekli olarak güncellenebilir ve kullanıcıya anlık olarak iletilebilir.
Adım 5: Canlı Veri Akışını Eklemek
Örneğin:
wss.on('connection', (ws) => {
setInterval(() => {
// Burada bir API’den veri çekilebilir
const liveStockData = getLiveStockData();
ws.send(liveStockData);
}, 1000);
});
Bu şekilde, her saniye borsa verisini tüm bağlı istemcilere iletebilirsiniz.
Sonuç
Artık Node.js’in sunduğu potansiyeli keşfettiniz, peki ya sıradaki adım?