mannaxxx 1
mannaxxx
Agora Metin2 1
Agora Metin2
Mt2Hizmet 1
Mt2Hizmet
berkmenoo 1
berkmenoo
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
farkmt2official 1
farkmt2official
Hikaye Ekle

[NODE JS] İlk Node.js Uygulamanızı Yazın: Hello World

Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!

nodejs.png


[NODE JS] İlk Node.js Uygulamanızı Yazın: Hello World​


Herkese merhaba. Her programlama dilinde olduğu gibi Node.js öğrenirken de ilk adım Hello World yazmaktır. Ama ben bu yazıda sadece bir satırlık console.log ile sizi bırakmayacağım. Gerçek anlamda ilk uygulamanızı yazarken nelere dikkat etmeniz gerektiğini, dosya yapısından çalıştırma yöntemlerine kadar her şeyi anlatacağım.

En Basit Haliyle Başlayalım​


Herhangi bir text editörünü açın. Ben genelde VS Code kullanıyorum ama Sublime Text, Atom, hatta Notepad++ bile işinizi görür. Bir klasör oluşturun, adına "ilk-uygulama" deyin ve içine app.js adında bir dosya açın. Neden app.js? Çünkü Node.js topluluğunda ana dosya genellikle app.js, server.js veya index.js olarak adlandırılır. Ben projelerime göre farklı isimlendirme yapıyorum ama yeni başlıyorsanız app.js gayet uygun.

Şimdi bir şeyi anlatalım: Node.js'te kod yazmak, tarayıcıda JavaScript yazmaktan farklı. Tarayıcıda window ve document nesneleriniz var, Node.js'te ise bunlar yok. Onun yerine process, global, Buffer gibi Node.js'e özgü nesneler mevcut. Bu farkı baştan kavramak çok önemli çünkü geçen bir arkadaşım Node.js'te document.getElementById yapmaya çalışıyordu, tabii ki hata aldı.

JavaScript:
// app.js - İlk Node.js Uygulaması

// En basit Hello World
console.log('Merhaba Dünya!');
console.log('Node.js ile ilk uygulamamı yazdım!');

// Biraz daha anlamlı bir şey yapalım
const uygulama = {
    isim: 'İlk Node.js Uygulamam',
    versiyon: '1.0.0',
    yazar: 'Ben',
    tarih: new Date().toLocaleDateString('tr-TR'),
    aciklama: 'Node.js öğrenme serüvenimin başlangıcı'
};

console.log('
--- Uygulama Bilgileri ---');
console.log(`Uygulama: ${uygulama.isim}`);
console.log(`Versiyon: ${uygulama.versiyon}`);
console.log(`Yazar: ${uygulama.yazar}`);
console.log(`Tarih: ${uygulama.tarih}`);
console.log(`Açıklama: ${uygulama.aciklama}`);

// Kullanıcıya selam verelim
function selamVer(isim) {
    const saat = new Date().getHours();
    let selamlama;

    if (saat >= 6 && saat < 12) {
        selamlama = 'Günaydın';
    } else if (saat >= 12 && saat < 18) {
        selamlama = 'İyi günler';
    } else if (saat >= 18 && saat < 22) {
        selamlama = 'İyi akşamlar';
    } else {
        selamlama = 'İyi geceler';
    }

    return `${selamlama}, ${isim}! Saat şu an ${saat}:00 civarı.`;
}

console.log('
' + selamVer('Geliştirici'));

// Basit bir hesap makinesi
function hesapla(sayi1, sayi2, islem) {
    const islemler = {
        topla: (a, b) => a + b,
        cikar: (a, b) => a - b,
        carp: (a, b) => a * b,
        bol: (a, b) => {
            if (b === 0) return 'Sıfıra bölme hatası!';
            return a / b;
        }
    };

    if (!islemler[islem]) {
        return 'Geçersiz işlem!';
    }

    return islemler[islem](sayi1, sayi2);
}

console.log('
--- Hesap Makinesi ---');
console.log(`10 + 5 = ${hesapla(10, 5, 'topla')}`);
console.log(`10 - 5 = ${hesapla(10, 5, 'cikar')}`);
console.log(`10 * 5 = ${hesapla(10, 5, 'carp')}`);
console.log(`10 / 5 = ${hesapla(10, 5, 'bol')}`);
console.log(`10 / 0 = ${hesapla(10, 0, 'bol')}`);

Çalıştırma Yöntemleri​


Dosyayı yazdıktan sonra terminal açıp dosyanın bulunduğu klasöre gidin ve "node app.js" yazın. Bu kadar basit. Ama birkaç farklı yöntem daha var. Mesela "node -e" ile tek satırlık kodları doğrudan terminalden çalıştırabilirsiniz. Ya da "node --watch app.js" ile dosya değişikliklerinde otomatik yeniden başlatma sağlayabilirsiniz. Bu özellik Node 18 ile geldi ve nodemon ihtiyacını büyük ölçüde ortadan kaldırdı.

Tecrübeme göre yeni başlayanların en çok yaptığı hata, terminali yanlış dizinde açmak. Dosyanız C:\projeler\ilk-uygulama\app.js ise terminaliniz de o klasörde olmalı. Ya da tam yolu yazabilirsiniz: "node C:\projeler\ilk-uygulama\app.js". Basit bir şey ama inanın çok kişi bu yüzden "module not found" hatası alıyor.

Biraz Daha İleri Gidelim​


Hello World güzel de gerçek hayatta sadece console.log yazmıyoruz tabii. Gelin basit bir HTTP sunucusu oluşturalım. Bu Node.js'in en temel yeteneklerinden biri ve hiçbir ek kütüphane gerektirmiyor.

JavaScript:
// server.js - Basit HTTP Sunucusu
const http = require('http');

const PORT = 3000;
const HOST = 'localhost';

// İstek sayacı
let istekSayaci = 0;

const sunucu = http.createServer((istek, yanit) => {
    istekSayaci++;
    const simdi = new Date().toLocaleTimeString('tr-TR');

    console.log(`[${simdi}] ${istek.method} ${istek.url} - İstek #${istekSayaci}`);

    // Basit yönlendirme
    if (istek.url === '/' && istek.method === 'GET') {
        yanit.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
        yanit.end(`
            <html>
            <head><title>İlk Node.js Sunucum</title></head>
            <body>
                <h1>Merhaba Node.js!</h1>
                <p>Bu benim ilk Node.js HTTP sunucum.</p>
                <p>Toplam istek sayısı: ${istekSayaci}</p>
                <p>Sunucu zamanı: ${simdi}</p>
                <ul>
                    <li><a href="/hakkinda">Hakkında</a></li>
                    <li><a href="/api/bilgi">API Bilgi</a></li>
                </ul>
            </body>
            </html>
        `);
    } else if (istek.url === '/hakkinda') {
        yanit.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
        yanit.end('<h1>Hakkında</h1><p>Node.js öğrenme projesi</p>');
    } else if (istek.url === '/api/bilgi') {
        yanit.writeHead(200, { 'Content-Type': 'application/json; charset=utf-8' });
        yanit.end(JSON.stringify({
            mesaj: 'API çalışıyor',
            versiyon: '1.0.0',
            istekSayisi: istekSayaci,
            zaman: simdi,
            nodeVersiyon: process.version
        }, null, 2));
    } else {
        yanit.writeHead(404, { 'Content-Type': 'text/html; charset=utf-8' });
        yanit.end('<h1>404 - Sayfa Bulunamadı</h1>');
    }
});

sunucu.listen(PORT, HOST, () => {
    console.log(`Sunucu http://${HOST}:${PORT} adresinde çalışıyor`);
    console.log('Durdurmak için Ctrl+C basın');
});

Bu sunucuyu "node server.js" ile çalıştırdığınızda tarayıcınızdan localhost:3000 adresine gidip sonucu görebilirsiniz. İşte Node.js'in gücü burada ortaya çıkıyor. Hiçbir Apache, Nginx veya IIS kurmadan, sadece birkaç satır kodla çalışan bir web sunucunuz var.

Benim ilk Node.js uygulamamı yazdığımda bu kadar kolay olmasına inanamamıştım. PHP'den geliyordum ve WAMP, XAMPP gibi araçlara ihtiyaç duymadan doğrudan sunucu oluşturabilmek harika bir deneyimdi.

Son bir tavsiye: kodlarınızı yazarken düzenli olun. Değişken isimlerini anlamlı koyun, fonksiyonlarınızı küçük ve tek bir iş yapacak şekilde tasarlayın. İlk günden iyi alışkanlıklar edinirseniz ileride çok işinize yarar. Kolay gelsin, bir sonraki konuda görüşmek üzere.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst