Non so esattamente cosa intendi per rischi per la sicurezza, con la necessità di digitare typecheck parametri passati usando i metodi is*
sugli argomenti o ottenendo la rappresentazione del valore usando v8::Value
, gli argomenti passati sono abbastanza sicuri da usare.
Se hai paura della gestione manuale della memoria e consideri questo un rischio (che non è nemmeno più spaventoso, con std::move
e RAII), allora forse il modulo C ++ non è la strada da percorrere, finché non impari a farlo correttamente.
Ma alla domanda. Il vantaggio principale è che è C ++ e, come hai già detto, il codice C ++ ben scritto ti ricompenserà con la massima velocità.
Ho provato solo i componenti aggiuntivi C ++ di Node.js per operazioni di dati molto semplici, quindi non posso parlare per un'applicazione di dimensioni aziendali, ma dall'esperienza che ho avuto, lo sviluppo è piuttosto semplice e abbastanza facile da implementare.
Il principale svantaggio? È C ++. C ++ non è affatto un linguaggio di programmazione facile. Sebbene i nuovi standard lo rendano sempre più amichevole per gli sviluppatori, è ancora molto complicato.
Oltre a questo, non c'è davvero un problema con l'incollaggio dei due codebase (JavaScript e C ++) insieme e se conosci il C ++, vai avanti e provalo tu stesso.