23.04.2023

0

Like

10

Views

Modül Türleri: Custom, Node, 3rd Party

Modül, bir programın veya uygulamanın içinde bulunan ve belirli bir işlevi yerine getiren parçalardır. Modüller kod tekrarını önler, daha organize bir yapı sağlar ve farklı işlevleri farklı modüllerde toplamayı mümkün kılar.

Custom Module

Custom modül, kullanıcı tarafından oluşturulan ve uygulamaya özelleştirilmiş bir modüldür. Custom modüller, genellikle uygulamanın ihtiyaç duyduğu ve mevcut built-in modüllerden farklı işlevleri yerine getirmek için oluşturulur.

Örnek

  1. Oluşturulmak istenilen custom modül için bir dosya oluşturulur.

(Ör: myModule.js)

  1. module.exports ile modül tanımlanır.
module.exports = {

};

3. Custom modülde yer alması gereken işlevler tanımlanır.

module.exports = {
greeting: function(name) {
return "Hello, " + name + "!";
},
calculateSum: function(a, b) {
return a + b;
}
};

4. Oluşturulan custom modülü diğer dosyalarda require ile kullanılabilir.

var myModule= require(./myModule.js);
console.log(myModule.greeting("Deniz"));
console.log(myModule.calculateSum(5,8));

Node Module

Node.js birçok built-in modül sunar. Built-in modüller, Node.js uygulamalarının geliştirilmesini kolaylaştıran ve çeşitli işlemler yapmak için gerekli olan fonksiyonlar sunar.

  • fs (File System) Modülü: Dosya sistemiyle ilgili işlemler yapmak için kullanılır. Dosya okuma, yazma, silme, oluşturma gibi işlemleri gerçekleştirebilir. Ayrıca dosya ve dizinlerin özelliklerini sorgulayabilir.

Örnek:

var fs = require('fs');

fs.readFile('file.txt', 'utf-8', function (err, data) {
if (err) {
console.error(err);
return;
}
console.log(data);
});

fs modülünü kullanarak file.txtadlı bir dosyanın içeriğini okuma işlemi yapıldı.

require(‘fs’) satırı, fs modülünü projemize dahil etmemizi sağlar. Daha sonra fs.readFile() fonksiyonunu kullanarak, dosya adını ve okunacak karakter kodlamasını veriyoruz. Bu fonksiyon, dosya okuma işlemi tamamlandığında çağrılacak bir callback fonksiyonu da alır.

Callback fonksiyonu, bir hata durumunda ( err değişkeni) bir hata mesajı yazdırır, başka bir durumda ise (data değişkeni) okunan dosya içeriğini konsola yazdırır.

  • path Modülü: Dosya yoluyla ilgili işlemler yapmak için kullanılır. Dosya yollarını birleştirme, ayrıştırma, dosya uzantısını belirleme gibi işlemler yapabilir.

Örnek:

var path = require('path');

var dir = '/home/user/';
var file = 'file.txt';

var filePath = path.join(dir, file);
console.log(filePath);

path modülü kullanılarak dosya yolu gösterilir.

require(‘path’) satırı, path modülünü projemize dahil etmemizi sağlar. Daha sonra, dir ve file değişkenleri dosya yolunun parçalarını tutar.

path.join()fonksiyonu, verilen dosya yolu parçalarını birleştirir ve dosya yolunun tam halini döndürür. Bu örnekte, /home/user/file.txt olarak birleştirilir ve filePath`değişkenine atanır. Son olarak, dosya yolu konsola yazdırılır.

  • http Modülü: HTTP (Hypertext Transfer Protocol) protokolü üzerinden sunucu ve istemci arasındaki iletişimi sağlar.

Örnek:

var http = require('http');var server = http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World!');
});server.listen(3000, function () {
console.log('Sunucu 3000 portundan dinleniyor...');
});

http.createServer() fonksiyonu, HTTP isteklerini işleyecek olan bir callback fonksiyonu alır. Bu callback fonksiyonu, req (HTTP isteği) ve res (HTTP yanıtı) parametrelerini alır.

Bu fonksiyon içinde, HTTP yanıtının başlıklarını tanımlar ve 'Hello World!' yazısını içeren bir yanıt verir. server.listen() fonksiyonu, sunucunun hangi porttan dinleneceğini belirtir. Bu örnekte, sunucu 3000 portundan dinlenir. Dinleme işlemi başladıktan sonra, sunucunun yapılandığı mesajı konsola yazdırılır.

  • events Modülü: Node.js’in etkileşimli uygulamalar geliştirmek için kullanabileceğiniz bir yapıdır. Events modülü, bir nesnenin bir olayın gerçekleştiğini diğer kodlarına bildirmesini sağlar.

Örnek: Bir kullanıcının bir formu doldurduğunu ve “Gönder” düğmesine bastığını varsayalım. Formun doldurulduğu olayı yakalamak için events modülü kullanabilirsiniz.

var events = require('events');
var eventEmitter = new events.EventEmitter();
// 'formSubmit' olayı için bir dinleyici oluşturun
eventEmitter.on('formSubmit', function () {
console.log('Form gönderildi!');
});// 'formSubmit' olayını tetikleyin
eventEmitter.emit('formSubmit');

events.EventEmitter() fonksiyonu, bir olay emitter'ı oluşturur. eventEmitter.on() fonksiyonu, 'formSubmit' olayı için bir dinleyici oluşturur. Dinleyici, olayın gerçekleştiğinde console.log() fonksiyonuyla bir mesaj yazdırır. eventEmitter.emit() fonksiyonu, 'formSubmit' olayını tetikler ve dinleyici çalışır. Konsol çıktısı, 'Form gönderildi!' yazısını içerecektir.

  • os Modülü: (Operation System) modülü Node.js’de sistem bilgisi ve fonksiyonalitelerine erişmenizi sağlar. Örneğin, işletim sistemi tipi, sürümü, makine adı, işlem sayısı gibi bilgileri okuyabilirsiniz.

Örnek:

var os = require('os');console.log('Işletim sistemi tipi: ' + os.type());
console.log('Işletim sistemi sürümü: ' + os.release());
console.log('Makine adı: ' + os.hostname());
console.log('İşlem sayısı: ' + os.cpus().length);

os modülünü kullanarak işletim sistemi bilgilerini okunur. os.type() fonksiyonu, işletim sistemi tipini döndürür. os.release() fonksiyonu, işletim sistemi sürümünü döndürür. os.hostname() fonksiyonu, makine adını döndürür. os.cpus().length fonksiyonu, makinedeki işlem sayısını döndürür. Kod çalıştırıldığında, konsol çıktısı işletim sistemi bilgilerini içerecektir.

Bunlar sadece birkaç örnektir ve Node.js’de bulunan tüm built-in modüller, https://nodejs.org/dist/latest-v14.x/docs/api/ adresinde listelenmiştir.

3rd party

3rd party modüller, Node.js topluluğundaki geliştiriciler tarafından oluşturulmuş ve npm (Node Package Manager) aracılığıyla paylaşılan modüllerdir. Bunlar, daha önce oluşturulmuş ve kullanıma sunulmuş olan fonksiyonaliteleri kolayca kullanmanıza olanak tanır. Örneğin, veritabanı erişimi, HTTP istekleri, görsel efektler ve daha pek çok fonksiyonalite içeren modüller bulunabilir.

  • express: Web uygulamaları geliştirmek için kolayca kullanılabilecek bir framework sunar.

Örnek:

var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Merhaba Dünya!');
});app.listen(3000, function () {
console.log('Web sunucusu http://localhost:3000 adresinde çalışıyor');
});

express modülünü kullanılarak basit bir web sunucusu oluşturdu. app.get('/', ...) fonksiyonu, / URL'sine gelen HTTP isteklerine yanıt verecek. app.listen(3000, ...) fonksiyonu, web sunucusunu 3000 portuna bağlayacak. Kod çalıştırıldığında, tarayıcınız http://localhost:3000 adresine gittiğinde "Merhaba Dünya!" mesajını görmelisiniz.

npm, Node.js modüllerini keşfetmek, yüklemek ve kullanmak için kullanılan bir araçtır. npm üzerinden yüzbinlerce Node.js modülüne erişebilirsiniz ve bu modülleri projeniz için kullanabilirsiniz. npm’nin resmi web sitesi npmjs.com’dur.

Comments

You need to log in to be able to comment!

Deniz Dağlı

Bilgisayar mühendisliği 4. sınıf öğrencisiyim. Burada güncel teknolojileri rahatça öğrenme şansına sahip olduğumdan dolayı varım.

Location

Kütahya, TR

Education

Bilgisayar Mühendisliği - Dumlupınar

Job Experience

Yazılım Stajyeri - Retter.io

© 2021 Patika Dev

facebook
twitter
instagram
youtube
linkedin

Disclaimer: The information /programs / events provided on https://patika.dev and https://risein.com are strictly for upskilling and networking purposes related to the technical infrastructure of blockchain platforms. We do not provide financial or investment advice and do not make any representations regarding the value, profitability, or future price of any blockchain or cryptocurrency. Users are encouraged to conduct their own research and consult with licensed financial professionals before engaging in any investment activities. https://patika.dev and https://risein.com disclaim any responsibility for financial decisions made by users based on information provided here.