avatar
·2 dk okuma
Karakter Setleri ve Encoding

Karakter Setleri ve Encoding

Node.js, modern web geliştirmede kritik bir role sahiptir ve bu makalede, Node.js'in karakter setleri ve kodlama ile ilgili yönlerine odaklanacağız. Bu konular, bilgisayarların nasıl veri depoladığı ve işlediği ile ilgili temel bilgileri içerir.

Karakter Setleri ve İkili (Binary) Veri

Bilgisayarlar veriyi ikili (binary) formatta, yani 0'lar ve 1'ler dizisi olarak saklar ve işler. Basit bir sayı olan 4'ün ikili karşılığı 100 olarak temsil edilir. Bu temsil, 2 tabanlı (binary) sayı sistemine dayanır.

Karakterlerin ikili formatta temsili ise daha karmaşıktır. Örneğin, 'V' harfinin bilgisayar tarafından nasıl temsil edildiğini düşünelim. Bilgisayar, önce 'V' karakterini temsil eden bir sayıya (bu durumda Unicode'da 86) dönüştürür ve ardından bu sayıyı ikili formata çevirir. Karakter setleri, bu karakter-sayı eşleşmelerini tanımlar. En yaygın iki karakter seti ASCII ve Unicode'dur.

Karakter Kodlaması

Karakter kodlaması, bir karakter setindeki bir sayının nasıl ikili veriye dönüştürüleceğini belirler. UTF-8, en yaygın kullanılan karakter kodlama sistemlerinden biridir. UTF-8, her karakteri temsil etmek için bir veya daha fazla byte (8 bit) kullanır. Örneğin, 'V' harfi (86) UTF-8'de 01010110 olarak kodlanır.

Uygulamalı Örnekler

Node.js'te karakter setleri ve kodlamayla çalışırken, bu temelleri göz önünde bulundurmak önemlidir. Dosya okuma-yazma işlemleri, ağ iletişimleri ve veritabanı etkileşimleri gibi durumlarda, doğru karakter seti ve kodlamayı kullanmak veri bütünlüğü ve uyumluluğu açısından kritiktir.

// Node.js'te UTF-8 ile bir dosya okuma örneği
const fs = require('fs');

fs.readFile('dosya.txt', 'utf8', (hata, veri) => {
    if (hata) throw hata;
    console.log(veri);
});

Özet

Bu makalede, Node.js ile karakter setleri ve kodlama konularına değindik:

  1. Bilgisayarlar verileri ikili formatta depolar ve işler.

  2. Karakter setleri, karakterleri sayılarla eşleştirir; örneğin, Unicode ve ASCII.

  3. Karakter kodlaması, bu sayıların ikili veriye nasıl dönüştürüleceğini belirler; örneğin, UTF-8.

  4. Uygulamalı bir örnek olarak, Node.js'te UTF-8 kullanarak dosya okuma işlemi gerçekleştirdik.

Bu bilgiler, veri işleme ve depolama konularında sağlam bir temel oluşturur ve Node.js'te daha ileri düzey konulara geçiş yaparken faydalı olacaktır.