Özet - Native addon'lar
- Node.js kursu
- Uzman
- Ders 12/47
- 5 dk
N-API, binding ve build'i birleştirerek bir native modül yazarsın.
Özet - Native addon'lar
Bu grupta native addon'ların temel parçalarını gördük: N-API, node-addon-api, binding, callback ve build. Her biri C/C++ kodunu Node.js'e bağlamanın bir yönünü ele alır.
N-API sürümler arası kararlı arayüz sağlar. node-addon-api C++ sarmalayıcı sunar. Binding JS fonksiyonunu native koda bağlar. Callback native'den JS'e yanıt taşır. Build (node-gyp) kaynağı derleyip .node dosyası üretir. Son derste tümünü bir raporda birleştireceğiz.
Rapor fonksiyonu
Son görev tüm addon parçalarını tek bir raporda birleştirir. addonReport() fonksiyonu mod, wrapper ve binding bilgilerini ' | ' ile ayırarak döndürür. Çıktı: N-API v9 | node-addon-api | add.
Bu rapor, native addon'ın üç temel yönünü özetler: API (N-API v9), sarmalayıcı (node-addon-api) ve bağlanan fonksiyon (add). Fonksiyon içinde her parçayı bir değişkene koyar, sonra + ile birleştirirsin. Bu, öğrendiklerini konsolda görmeni sağlar; gerçek bir addon derlemeden yapıyı modellemiş olursun.
Uygulama Addon raporu yaz
function addonReport() yaz. const mod = {api: 'N-API', version: 9} tanımla. const wrapper = 'node-addon-api' tanımla. const binding = {name: 'add', arity: 2} tanımla. return mod.api + ' v' + mod.version + ' | ' + wrapper + ' | ' + binding.name ile döndür. console.log(addonReport()) ile yazdır.
Başlangıç kodu
// addonReport fonksiyonu yaz
// api, wrapper ve binding bilgilerini birleştir
// 'N-API v9 | node-addon-api | add' döndürsün
// çağır ve yazdır
// buraya yazÖrnek çözüm
function addonReport() {
const mod = {api: 'N-API', version: 9};
const wrapper = 'node-addon-api';
const binding = {name: 'add', arity: 2};
return mod.api + ' v' + mod.version + ' | ' + wrapper + ' | ' + binding.name;
}
console.log(addonReport());Beklenen çıktı
N-API v9 | node-addon-api | add
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Hangi araç addon'ı derler?
- npm
- node-gyp Doğru cevap
- require
- express
Açıklama: node-gyp, binding.gyp ile addon'ı derler.
2 Kavramı rolüne eşle
| Kavram | Anlamı |
|---|---|
N-API |
Kararlı arayüz |
node-addon-api |
C++ sarmalayıcı |
Binding |
JS-native köprü |
node-gyp |
Derleme aracı |