Nx
Sistema di costruzione intelligente, veloce ed estensibile
Cos'è Nx?
Nx è un sistema di compilazione di nuova generazione con supporto di prima classe sia per progetti autonomi che per monorepos.
Pro e contro
Pro
- Esperienza dello sviluppatore
- Manutenibilità del progetto
- Costruire velocità
- Supporto monorepo
- Ottimizzazione del flusso di lavoro
- Supporto angolare
- Impalcatura del codice
- Gestione delle dipendenze
- Generatori ed esecutori
- Supporto multiprogetto
- Ecosistema di plug-in
- Utensileria
Contro
- Funzionalità cloud
- Complessità della configurazione
- Problemi con le impostazioni predefinite
Dettagli dello strumento
| Categorie | Software di gestione dei progetti, Ingegneria e sviluppo, Strumenti da riga di comando |
|---|---|
| Sito web | nx.dev |
| Diventato popolare | 7 dicembre 2022 |
| Piattaforme | Web |
| Social media | GitHub |
Recensioni recenti (9)
Una soluzione monorepo per la creazione di app su larga scala. Nx semplifica il nostro ciclo di vita di sviluppo consentendoci di condividere codice e gestire le dipendenze in modo efficace su più progetti, aiutando i nostri team di ingegneri a fornire risultati coerenti più rapidamente.
Utilizzo molto spesso generatori ed esecutori e rendono chiaro il mio flusso di lavoro.
Questo è l'anello mancante di cui abbiamo sempre avuto bisogno. Cercando di convertire attivamente più progetti in Nx.
Sebbene sia una bella interpretazione della caotica toolchain javascript, le sue impostazioni predefinite per il progetto dattiloscritto più elementare sono disordinate e non funzionano. Ho passato ore cercando di avere cose piuttosto basilari; ad esempio, poiché le mappe dei sorgenti sono attive, includi le fonti... e non traspirle in una cartella "src" altrimenti quando aggiungo le importazioni delle fonti diventeranno confuse e proverò a importare il file ts .. e perché stai trasponendo tutto in una cartella "dist" esterna? questo rende sbagliati tutti i riferimenti alla mappa sorgente (""../../../../packages/etc/etc/file.ts") e non funziona nulla. Nx avvolge e nasconde molti dettagli, ma l'avvolgimento spesso nasconde e blocca cose utili; Ho aggiunto alla mia configurazione jest due impostazioni di configurazione totalmente valide (ovvero maxWorkers e testSequencer) e funziona se eseguo semplicemente "cd package/name; npx jest", tuttavia il wrapper Nx per jest non le riconosce, quindi non le applica, quindi i test non funzionano. In tutto questo, ogni pacchetto contiene OTTO file nella directory root, i comuni package.json e README.md (sì, potrei eliminare questo), poi tre file tsconfig json, una configurazione jest, un .eslint.json .. e poiché questi non erano sufficienti Nx aggiunge il proprio file project.json. Questi file vengono generati, quindi ripetono le stesse cose più e più volte in ogni cartella... in modo che quando qualcosa deve essere cambiato, dovrà essere cambiato in tutti i posti. Il file project.json era specificamente noiosamente lungo (47 righe per impostazione predefinita), comunque modificando solo i percorsi (non poteva semplicemente cwd e utilizzare percorsi relativi?) .. poi dopo giorni di utilizzo ho trovato una pagina che spiegava che la maggior parte del contenuto di project.json poteva essere impostato in nx.json nella cartella principale e che mi permetteva di eliminare oltre 500 righe di ripetizioni inutili .. quindi perché lo scaffolding automatico non lo fa già? perché ho dovuto scoprirlo e poi farlo manualmente? Mi aspettavo molto, molto, molto di più dato l'hype che questo progetto ha ovunque. Ho finito per modificare e ripulire tutti i file generati, quindi non posso più utilizzare la parte di generazione, non posso eseguire test su di esso su molti dei miei pacchetti, quindi non è molto più di un'esecuzione npm per ciclo in ogni cartella. Forse ci sono diversi casi d'uso in cui è eccellente, forse venendo da anni di Java usando Maven sono semplicemente troppo abituato a impostare un progetto con decine di moduli in un paio d'ore. Sto solo cercando di avere un monorepo con una libreria di 10 pacchetti al suo interno.
Nx è al centro di ogni progetto di sviluppo web su cui lavoro. Non inseriamo tutti i progetti dell’azienda nello stesso repository, ma raggruppiamo invece i progetti correlati. Ma anche se in un repository è presente una sola applicazione, Nx offre tantissimo valore con aggiornamenti, gestione delle dipendenze multiprogetto, scaffolding del codice e altro ancora.
Molto facile da usare, aveva molti plugin che vengono aggiornati frequentemente e aiutano a mantenere un repository. Puoi utilizzare i plugin come preferisci per migliorare parte del tuo flusso di lavoro se non puoi utilizzare i plugin completamente
Semplifica enormemente l'esperienza dello sviluppatore. Facile da usare ed estendere per tutti i tipi di progetti software. Nx è il mio driver quotidiano per lo sviluppo di software (in particolare lo sviluppo angolare).
Semplifica l'esperienza degli sviluppatori, migliora la velocità di creazione e offre ottimi strumenti. Tutti i miei progetti iniziano con Nx.
Le funzionalità principali di Nx sono fantastiche, ma non posso dire lo stesso del cloud
Domande frequenti su Nx
Quando è diventato popolare Nx?
Nx è diventato popolare intorno a 7 dicembre 2022.
Quali sono i principali vantaggi di Nx?
I principali vantaggi di Nx includono: esperienza dello sviluppatore, manutenibilità del progetto, costruire velocità, supporto monorepo, ottimizzazione del flusso di lavoro.
Quali sono gli svantaggi di Nx?
Alcuni svantaggi segnalati di Nx includono: funzionalità cloud, complessità della configurazione, problemi con le impostazioni predefinite.
Qual è la valutazione complessiva di Nx?
Nx ha una valutazione complessiva di 4.6/5 basata su 11 recensioni degli utenti.
Che tipo di strumento è Nx?
Nx appartiene alle seguenti categorie: Software di gestione dei progetti, Ingegneria e sviluppo, Strumenti da riga di comando.
Strumenti Software di gestione dei progetti correlati
Strumenti Ingegneria e sviluppo correlati
Strumenti Strumenti da riga di comando correlati
Confronta Nx :
Non farti ingannare dai video falsi sui social media
Il primo verificatore di fatti al mondo per i social media. Incolla qualsiasi link e ottieni un punteggio di credibilità istantaneo con fonti.
Prova FactCheckTool gratis