Deciso di codificare il nuovo progetto in TypeScript, dovrebbe essere codificato tutto in questa lingua?

0

Abbiamo deciso di codificare il nuovo progetto in TypeScript presso l'azienda. Questo significa che tutto dovrebbe essere codificato in questa lingua?

Discussione

Il mio primo pensiero è stato Sì. D'altra parte TypeScript è compilato su NodeJS prima che venga eseguito. Quindi, perché creare una nuova libreria, ad esempio Postgres ?

Connect-to-pg.js

var pg = require('pg');
var conString = "postgres://<user>:<pass>@127.0.0.1:5432/<db>";

var client = new pg.Client(conString);
client.connect();

//queries are queued and executed one after another once the connection becomes available
var x = 1000;

    client.query("INSERT INTO products(product_no, name, price) values(1, 'Ted2',12)");

var query = client.query("SELECT * FROM products where name = 'Ted2'");
//fired after last row is emitted

query.on('row', function(row) {
    console.log(row);
});

query.on('end', function() {
    client.end();
});

quando cambio l'estensione in ts ed eseguo tsc per compilarlo, restituisce:

.ts(1,10): error TS2304: Cannot find name 'require'.

L'esecuzione di npm install @types/node --save-dev risolve il problema e il file è compilato e può essere eseguito utilizzando il nodo.

Domanda

Sulla base dei risultati vorrei suggerire la seguente politica:

  1. Se è necessaria una libreria, ad es. postgres controlla se ce n'è uno disponibile per dattiloscritto
  2. Se questo non è il caso, controlla se una libreria è disponibile per NodeJS
  3. Se è vero, includilo nel codice dattiloscritto, compilalo e utilizza il codice

Anche altre aziende seguono questa strategia? Qual è la loro opinione su questo e quali sono i pro e i contro?

    
posta 030 18.11.2016 - 14:00
fonte

0 risposte

Leggi altre domande sui tag