İlk Olarak NPM Nedir?
npm kendisiyle birlikte gelen Node Package Manager – Node Paket Yöneticisidir ve bütün Node gelişmelerine yardımcı olur. Node yıllardır JavaScript geliştiricileri tarafından araç paylaşmak, çeşitli modüller yüklemek ve bağımlılıklarını yönetmek için yaygın biçimde kullanılmıştır.
Peki Ya Modül Nedir?
Modül, bir yazılımın bir veya daha fazla rutin işlemini içeren parçasına verilen isimdir. Bir veya birden daha fazla modül birbirinden bağımsız olarak geliştirilerek bir yazılım meydana getirilmesi için kullanılabilir. Kurumsal düzeyde hazırlanan yazılımların büyük bir çoğunluğu içerisinde birçok modül içermektedir. Bu modüllerin her biri yazılım içerisinde farklı ve benzersiz bir işlem operasyonunu gerçekleştirmek için kullanılır.
Biz bunları yine discord.js üzerinden anlatacağız.Mesela modül ile yapılmış bir koddan örnek verelim.
npm kendisiyle birlikte gelen Node Package Manager – Node Paket Yöneticisidir ve bütün Node gelişmelerine yardımcı olur. Node yıllardır JavaScript geliştiricileri tarafından araç paylaşmak, çeşitli modüller yüklemek ve bağımlılıklarını yönetmek için yaygın biçimde kullanılmıştır.
Peki Ya Modül Nedir?
Modül, bir yazılımın bir veya daha fazla rutin işlemini içeren parçasına verilen isimdir. Bir veya birden daha fazla modül birbirinden bağımsız olarak geliştirilerek bir yazılım meydana getirilmesi için kullanılabilir. Kurumsal düzeyde hazırlanan yazılımların büyük bir çoğunluğu içerisinde birçok modül içermektedir. Bu modüllerin her biri yazılım içerisinde farklı ve benzersiz bir işlem operasyonunu gerçekleştirmek için kullanılır.
Biz bunları yine discord.js üzerinden anlatacağız.Mesela modül ile yapılmış bir koddan örnek verelim.
JavaScript:
const Discord = require('discord.js');
const weather = require('weather-js');
exports.run = (client, message, args) => {
weather.find({search: args.join(" "), degreeType: 'C'}, function(err, result) {
if (err) message.channel.send(err);
if (result === undefined || result.length === 0) {
message.channel.sendEmbed(new Discord.RichEmbed().setDescription('Lütfen bir yer gir.').setColor('RANDOM'));
return;
}
var current = result[0].current;
var location = result[0].location;
const embed = new Discord.RichEmbed()
.setDescription(`**${current.skytext}**`)
.setAuthor(`${current.observationpoint} için hava durumu`)
.setThumbnail(current.imageUrl)
.setColor(0x00AE86)
.addField('Zaman Dilimi',`UTC${location.timezone}`, true)
.addField('Derece Türü',location.degreetype, true)
.addField('Sıcaklık',`${current.temperature} Derece`, true)
.addField('Hava', `${current.feelslike}`, true)
.addField('Rüzgar',current.winddisplay, true)
.addField('Nem', `${current.humidity}%`, true)
message.channel.send({embed});
})
}
Burada kullandığımız 2 modül weather ve discord oldu.Bunun gibi sizlerinde botuna katkı olacak modülleri sıraladım ve bu modüllerin ne işe yaradağını anlattım.Umarım yararlı olur
YTDL-Core:Youtube indirme olarak kısaca özetleyebiliriz.Genelde müzik çalmak için yada bot ile youtube'da arama yapmak için kullanılır
quick.db:Çok lanet bir modül olsada gerçekten çok kullanılışlı.Veri depolamaya işe yarar bu modül ile ekonomi botu (level,coin sistemi),oto rol-tag vb.Komutları daha iyi hale getirebilirsiniz
superagent:Birçok üst düzey HTTP özelliğini destekleyen kullanılışlı bir modül.Daha çok gifli komutlarda kullanılıyor.
chalk:Yazdığınız kodun renklendirmeye yarayan modül.Genellikle bir kodda hata olduğunu görebilmemiz için yapılır
Jimp:Tamamen JavaScript ile yazılmış bir görüntü işleme modülü
ms:Çeşitli saat biçimlerini milisaniyeye kolayca dönüştürmek için kullanılan modül
common-tags:Yaygın olarak kullanılan etiket modülü.
Discord.js:Discord API ile kolayca etkileşime girmenizi sağlayan güçlü bir node.js modülüdü.