Vincoli di versione e lockfile
Fissare e risolvere le versioni delle dipendenze
Vincoli di versione e lockfile è una lezione Dart Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Dart Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Dart Academy include 4 lezioni in totale.
Perché esistono i vincoli
Un version constraint indica a pub quali release di un package il progetto accetta. Consente di bilanciare la ricezione delle correzioni con l'evitare modifiche incompatibili. 🎯
http: ^1.2.0Versionamento semantico
I package Dart seguono il semantic versioning: major.minor.patch. Un aumento della major segnala modifiche incompatibili, la minor aggiunge funzionalità e la patch corregge bug.
version: 2.4.1Il vincolo caret
Il caret ^1.2.0 accetta qualsiasi versione da 1.2.0 fino, ma esclusa, alla 2.0.0. È l'impostazione predefinita flessibile usata da pub.
http: ^1.2.0Bloccare una versione
Scrivere un semplice numero significa indicare esattamente quella versione, e nessun'altra. Lo usi con moderazione quando serve una singola release nota.
http: 1.2.0Vincoli di intervallo
Può specificare un range con gli operatori di confronto. In questo modo ottiene un controllo preciso sia sul limite inferiore sia su quello superiore.
http: '>=1.0.0 <2.0.0'Il vincolo any
Usare any accetta qualsiasi versione. È rischioso perché una futura release major potrebbe creare problemi; preferisca quindi un caret.
http: anyConoscere il lockfile
Quando pub risolve le dipendenze, registra le versioni esatte scelte in pubspec.lock. Questo file blocca ciò che viene effettivamente installato da tutti.
Build riproducibili
Il lockfile garantisce build reproducible: un collega che esegue pub get ottiene esattamente le stesse versioni da Lei testate, senza aggiornamenti imprevisti.
Conviene eseguire il commit
Per le app, esegua il commit di pubspec.lock nel controllo versione. Per i package riutilizzabili, lo escluda, così saranno i consumatori a risolvere le versioni.
Aggiornare il lockfile
Esegua dart pub upgrade per aggiornare pubspec.lock alle versioni più recenti consentite dai vincoli. Un semplice get mantiene i blocchi esistenti.
dart pub upgradeRisoluzione dei conflitti
Se due package richiedono versioni incompatibili, pub segnala un conflict. Dovrà quindi allentare un vincolo o scegliere versioni compatibili dei package.
Verifica rapida
Che cosa consente il vincolo ^1.2.0?
Riepilogo
Ora sa leggere constraints come caret e intervalli e sa che pubspec.lock blocca le versioni esatte per build riproducibili e prive di conflitti. 🎉
Impara Dart con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 30
- Lezioni
- 120
Domande Frequenti
La lezione «Vincoli di versione e lockfile» è gratuita?
Sì — il testo completo di «Vincoli di versione e lockfile» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Dart Academy, passa a CoddyKit PRO. Il corso Dart Academy include 4 lezioni in totale.
Cosa imparerò in «Vincoli di versione e lockfile»?
Fissare e risolvere le versioni delle dipendenze Eserciti Dart Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Dart Academy?
Non è richiesta alcuna esperienza precedente. Dart Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Vincoli di versione e lockfile»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Dart Academy?
Sì. Ogni lezione Dart Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Anatomia di pubspec.yaml
- Aggiungere dipendenze con dart pub
- Import, export e librerie
- Vincoli di versione e lockfile