Altbilgi içeriğine atla
NODE YARDıM

Node.js ne için kullanılır

Node.js, geliştiricilerin çeşitli uygulamalar oluşturmasına olanak tanıyan, web geliştirme alanını dönüştüren güçlü bir araçtır. JavaScript diline dayanmaktadır, bu da en yaygın programlama dillerinden biridir. Bu kılavuz, Node.js'nin temellerini ve "Node.js'nin ne için kullanıldığı" sorusunu ve modern web geliştirme içerisinde neden önemli bir yer edindiğini irdeleyecektir. Ayrıca IronPDF'yi de inceleyeceğiz, bu Node.js için bir PDF kütüphanesidir.

Node.js'ye Giriş

Node.js ne için kullanılır: Şekil 1 - Node.JS web sayfası

Node.js, web tarayıcılarının sınırlarının ötesinde JavaScript kodunu çalıştırmak için tasarlanmış açık kaynaklı, platformlar arası bir çalışma ortamı olarak hizmet eder. Geleneksel olarak, başka JavaScript çerçevelerinde JavaScript, esas olarak etkileşimli web sitesi unsurları oluşturmak için kullanıldı ve istemcinin tarayıcısı içinde çalıştırıldı. Node.js, hem bir JavaScript çerçevesi hem de çalışma ortamı olarak, bu yetenekleri genişleterek sunucu tarafında çalışmasını sağlar.

Bu, geliştiricilerin, en popüler programlama dili olan JavaScript'i hem ön uç hem de arka uç geliştirme için kullanabileceği, tüm web uygulama yığını boyunca aynı dil ile yazılım geliştirme sürecini tekdüze hale getirir.

Node.js Nasıl Çalışır

Node.js'nin kalbinde, Google tarafından geliştirilen ve JavaScript'i yerel makine koduna derleyen, hızlı ve verimli çalışmasını sağlayan V8 JavaScript motoru tarafından desteklenen engellemez, olay bazlı bir mimari bulunur. Node.js, çoklu eşzamanlı istekleri, her biri için yeni bir iş parçacığı oluşturmadan ele almak için bir olay döngüsü ve geri çağırma işlevleri kullanır.

Bu, aynı anda binlerce eşzamanlı bağlantıyı yönetebileceği anlamına gelir, bu da eşzamanlı istek hacmi yüksek, ölçeklenebilir web uygulamaları oluşturmak için son derece verimlidir. Bu mimari, G/Ç görevleri gibi işlemleri verimli bir şekilde yürütmek için önemli olan asenkron kod çalıştırmak için avantajlıdır.

Örnek: Bir Dosyayı Asenkron Olarak Okuma

Dosya sisteminden bir dosya okuma gerektiren bir senaryoyu düşünün. Geleneksel, senkron programlamada, sunucu, müşteri isteklerinin bir sonraki aşamasına geçmeden önce dosyanın okunmasını bekler, bir darboğaz oluştururdu. Node.js, bu senaryoyu farklı şekilde ele alır:

const fs = require('fs');

// Asynchronously read from a file
fs.readFile('example.txt', 'utf8', (err, data) => {
  if (err) {
    console.error("Error reading the file:", err);
    return;
  }
  console.log("File content:", data);
});

console.log("Reading file, please wait...");

Bu kod parçasında, example.txt adlı bir dosyayı asenkron olarak okumak için Node.js'nin fs modülünü kullanıyoruz. readFile yöntemi, dosya okuma işlemi tamamlandığında yürütülen bir geri çağırma işlevi alır. Bu işlev, hataları kontrol eder ve eğer hiçbir sorun yoksa dosyanın içeriğini yazdırır. Bu arada, programın geri kalanı çalışmaya devam eder, dosya içeriği görüntülenmeden önce konsola "Dosya okunuyor, lütfen bekleyin..." mesajının kaydedildiği görülmektedir. Bu, Node.js'nin engellemez doğasını, olay döngüsünün G/Ç işlemi tamamlanırken diğer görevlerin yürütülmesine izin verdiği durumu göstermektedir.

Çıktı

Kod yürütüldüğünde elde edilen çıktı şöyledir:

Node.js ne için kullanılır: Şekil 2 - Önceki kodun konsol çıktısı

Web Geliştirmede Node.js

Node.js, hızlı, ölçeklenebilir web uygulamaları oluşturmak isteyen geliştiriciler için önde gelen bir sunucu tarafı programlama çözümü haline gelmiştir. Kendi başına bir web sunucusu olarak hizmet edebilir veya web sunucuları oluşturmak için kullanılabilir, geleneksel web geliştirme çerçeveleri ve dillerinin eşleşemeyeceği bir esneklik seviyesi sunar. Ruby on Rails gibi daha katı bir yapıyı izleyen diğer sunucu tarafı teknolojilerinin aksine, Node.js geliştiricilere uygulamalarını kendi istedikleri şekilde yapılandırma özgürlüğü sunar. Bu esneklik, çoklu eşzamanlı istekleri verimli bir şekilde işleme yeteneği ile birleştirildiğinde, Node.js'yi sunucu tarafı web uygulamaları ve sohbet uygulamaları ya da canlı güncellemeler gibi gerçek zamanlı uygulamalar için özellikle uygun hale getirir.

Node.js ile Basit Bir Web Sunucusu Kurmak

Node.js'in en yaygın kullanım alanlarından biri web sunucuları oluşturmaktır. Bu yetenek, geliştiricilerin Node.js'i güçlü, ölçeklenebilir web uygulamaları oluşturmak için kullanmalarını sağlar. Node.js, HTTP isteklerini işleyebilen ve yanıt döndürebilen bir web sunucusu kurmayı kolaylaştırır. Aşağıda Node.js kullanarak web sunucusu oluşturmanın temel bir örneği verilmiştir.

Bu örnek, HTTP isteklerini dinleyen ve 'Merhaba, Dünya!' yanıtını veren basit bir web sunucusunun nasıl kurulacağını gösterir. Bu web çerçevesi, Node.js ile daha karmaşık web uygulamaları oluşturmaya yönelik temel bir adım olarak hizmet eder.

const http = require('http');

// Create a web server
const server = http.createServer((req, res) => {
  // Set the response header
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello, World!\n');
});

// The server listens on port 3000
server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});

Bu kodda, bir web sunucusu oluşturmak için http modülünden yararlanıyoruz. createServer metodu, sunucuya her bir istek geldiğinde çağrılır. Bu geri çağırma fonksiyonu, iki nesne alır: req (istek) ve res (yanıt). res nesnesini kullanarak HTTP yanıt başlığını ayarlıyor ve basit bir metin yanıtını istemciye geri gönderiyoruz. Son olarak, sunucu, 3000 numaralı port üzerinden gelen istekleri dinler ve sunucunun çalıştığını ve istek kabul etmeye hazır olduğunu belirten bir mesajı konsola yazarız.

Çıktı

İşte JS Kodunun çıktısı:

Node.js ne için kullanılır: Şekil 3 - Önceki koddan konsol çıktısı

Node.js Ekosistemi

Node.js'in güçlü yönlerinden biri, çekirdek kütüphanesi olan Node.js Package Manager (NPM) tarafından desteklenen geniş ekosistemidir. NPM, geliştiricilerin uygulamalarına işlevsellik eklemek için kullanabileceği açık kaynaklı paketlerin devasa bir kitaplığıdır ve çerçeveler ve kütüphanelerden araçlar ve yardımcı programlara kadar uzanır. Bu geniş ekosistem, uygulamanıza eklemek istediğiniz hemen hemen her özellik veya işlevsellik için bir paket olduğu anlamına gelir. JavaScript kütüphanelerine ek olarak, NPM, web uygulamalarının geliştirilmesini yapılandırma ve hızlandırmada instrumental olan birçok JS çerçevesine erişim sağlar.

IronPDF Node.js'nin Tanıtımı

Node.js ne için kullanılır: Şekil 4 - IronPDF web sayfası

IronPDF for Node.js, Node.js uygulamaları içinde PDF içeriklerini oluşturmayı, düzenlemeyi ve çıkarmayı kolaylaştıran çok yönlü bir JavaScript kütüphanesidir. Güçlü bir Chrome Motorunu kullanarak, PDF'leri HTML dizgilerinden, dosyalardan ve web URL'lerinden oluşturabilir, bu da sunucu tarafı kod ön yüzü PDF oluşturma için mükemmel bir araç haline getirir. Bu kütüphane, PDF işleme sürecinin hesaplama açısından yoğun kısmını ele almak için tasarlanmıştır, böylece ReactJs ve Angular gibi ön uç web çerçevelerinin bu görevi sunucu tarafına devretmesine izin verir.

IronPDF Yükleyin

Node.js projenizde IronPDF kullanmaya başlamak için, npm install @ironsoftware/ironpdf komutu ile npm üzerinden yükleyebilirsiniz. Kütüphane, Node.js 12.0+ için çapraz platform desteği sunar ve Windows, Linux, Mac ve Docker ortamları ile uyumludur.

PDF Oluşturma Örneği

İşte HTML'yi bir PDF belgesine dönüştürmenin temel bir örneği:

import { PdfDocument } from "@ironsoftware/ironpdf";

// HTML to PDF
(async () => {
    const pdf = await PdfDocument.fromHtml("<h1>Hello, IronPDF!</h1>");
    await pdf.saveAs("html.pdf");
})();
import { PdfDocument } from "@ironsoftware/ironpdf";

// HTML to PDF
(async () => {
    const pdf = await PdfDocument.fromHtml("<h1>Hello, IronPDF!</h1>");
    await pdf.saveAs("html.pdf");
})();
JAVASCRIPT

Bu asenkron programlama parçası, basit bir HTML dizgisinden PDF oluşturmayı gösterir. IronPDF, URL'leri PDF'lere dönüştürme, PDF'lere resim veya metin damgalama ve mevcut PDF belgelerinin veri yapısını birleştirerek, bölerek ve sayfalar ekleyerek manipüle etme gibi çeşitli diğer işlemleri destekler.

Çıktı

Kodu çalıştırdığınızda, şu PDF'yi üretecektir:

Node.js ne için kullanılır: Şekil 5 - Önceki koddan çıktılanmış PDF

Sonuç

Node.js ne için kullanılır: Şekil 6 - IronPDF lisanslama sayfası

Node.js, modern web geliştiricilerinin cephaneliğinde kritik bir araç olarak konumunu sağlamlaştırmıştır. Etkinlik tabanlı mimarisi ve V8 JavaScript motorunun sağladığı verimlilik, onu hızlı, ölçeklenebilir web ve mobil uygulamalar geliştirmek için mükemmel bir seçim haline getirir. İster küçük bir proje geliştiriyor olun, ister büyük ölçekli bir web uygulaması oluşturuyor olun, Node.js, fikirlerinizi hayata geçirecek araçlar, hız ve esneklik sunar.

Node.js uygulamalarına PDF oluşturma ve düzenleme yeteneklerini entegre etmek isteyen geliştiriciler için IronPDF cazip bir çözüm sunar. IronPDF for Node.js, PDF'lerle çalışmayı kolay ve verimli hale getiren kapsamlı bir araç paketi sunar. İlgilenen kullanıcılar, IronPDF'nin bir ücretsiz deneme sunduğunu ve özelliklerini ve yeteneklerini hemen taahhüt etmeden keşfetmelerine olanak tanıdığını bilmekten memnun olacaktır. Faydalarını birinci elden deneyimledikten sonra, lisanslama seçenekleri $799 başlayan fiyatlarla sunularak, ileri düzey PDF işlevselliklerini Node.js projelerinize maliyet etkin bir şekilde entegre etme imkanı sağlar.

Darrius Serrant
Tam Yığın Yazılım Mühendisi (WebOps)

Darrius Serrant, Miami Üniversitesi'nden Bilgisayar Bilimleri lisans derecesine sahiptir ve Iron Software'de Tam Yığın WebOps Pazarlama Mühendisi olarak çalışmaktadır. Küçük yaşlardan itibaren kodlamaya ilgi duyan Darrius, bilişimi hem gizemli hem de erişilebilir buldu ve onu yaratıcılık ve problem çö...

Daha Fazlasını Oku

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara