{"title":"Stabilità API","version":"5.2","locale":"it","docname":"misc/api-stability","url":"/it/5.2/misc/api-stability/","canonical":"https://djangodocs.dev/it/5.2/misc/api-stability/","summary":"Django è votato alla stabilità delle API ed alla compatibilità futura. In poche parole, questo significa che il codice che sviluppi per una versione di Django…","html":"<h1>Stabilità API<a class=\"heading-anchor\" href=\"#api-stability\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>Django è votato alla stabilità delle API ed alla compatibilità futura. In poche parole, questo significa che il codice che sviluppi per una versione di Django continuerà a funzionare con le release future. Potresti avere bisogno di applicare alcuni piccoli cambiamenti quando aggiorni la versione di Django del tuo progetto: vedi la sezione «Modifiche non retrocompatibili» in <a class=\"reference internal\" href=\"/it/5.2/releases/\"><span class=\"doc\">release note</span></a> relativa alla versione o alle versioni verso le quali stai aggiornando.</p>\n<p>Pur essendo la stabilità delle API una priorità molto alta, Django è anche votato al miglioramento continuo, avendo congiuntamente l’obiettivo di illustrare (con il tempo) «un unico modo di fare le cose» nelle API che fornisce. Questo significa che quando troviamo un modo decisamente migliore di fare le cose, renderemo deprecati e rimuoveremo i vecchi modi di farle. Il nostro scopo è quello di fornire un web framework moderno ed affidabile che incoraggi le best practices in tutti i progetti che lo utilizzano. Con i miglioramenti incrementali, cerchiamo di evitare nello stesso modo la stagnazione ed i grandi breaking-upgrades.</p>\n<section id=\"what-stable-means\">\n<h2>Cosa significa «stabile»<a class=\"heading-anchor\" href=\"#what-stable-means\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>In questo contesto, stabile significa:</p>\n<ul>\n<li><p>Tutte le API pubbliche (tutto in questa documentazione) non saranno spostate o rinominate senza fornire alias retro-compatibili.</p></li>\n<li><p>Se nuove caratteristiche sono aggiunte a queste API – che è del tutto possibile – non romperanno o cambieranno il significato dei metodi già esistenti. In altre parole, «stabile» non (necessariamente) significa «completo».</p></li>\n<li><p>Se, per qualche motivo, una API dichiarata stabile deve essere rimossa o sostituta, verrà definita come deprecata ma rimarrà tra le API per almeno due rilasci futuri. Si riceveranno degli avvertimenti quando si chiameranno i metodi deprecati.</p>\n<p>Controlla <a class=\"reference internal\" href=\"/it/5.2/internals/release-process/#official-releases\"><span class=\"std std-ref\">Official releases</span></a> per maggiori dettagli su come funziona lo scema di numerazione delle versioni di Django, e come le features saranno deprecate.</p>\n</li>\n<li><p>Interromperemo la retrocompatibilità di quelle API senza un processo di deprecazione se un bug oppure un problema di sicurezza lo rende completamente inevitabile.</p></li>\n</ul>\n</section>\n<section id=\"stable-apis\">\n<h2>API stabili<a class=\"heading-anchor\" href=\"#stable-apis\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>In generale, tutto quello che è coperto nella documentazione – ad eccezione di qualsiasi cosa si trovi nell’area <a class=\"reference internal\" href=\"/it/5.2/internals/\"><span class=\"doc\">internals area</span></a> è da considerarsi stabile.</p>\n</section>\n<section id=\"exceptions\">\n<h2>Eccezioni<a class=\"heading-anchor\" href=\"#exceptions\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Ci sono alcune eccezioni per questa promessa di stabilità e retrocompatibilità.</p>\n<section id=\"security-fixes\">\n<h3>Fix di sicurezza<a class=\"heading-anchor\" href=\"#security-fixes\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>Se veniamo a conoscenza di un problema di sicurezza – magari da parte di chi segue la nostra :ref:` politica di security reporting &lt;reporting-security-issues&gt;` – faremo il necessario per sistemarlo. Questo potrebbe comportare il fatto di interrompere la retrocompatibilità; la sicurezza trionfa sulla garanzia di compatibilità.</p>\n</section>\n<section id=\"apis-marked-as-internal\">\n<h3>API marchiate come internal<a class=\"heading-anchor\" href=\"#apis-marked-as-internal\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>Alcune API sono esplicitamente marcate come «internal» in diversi modi :</p>\n<ul class=\"simple\">\n<li><p>Alcune documentazioni si riferiscono agli internal e li menzionano come tali. Se nella documentazione qualcosa viene annotato come internal, ci riserviamo il diritto di cambiarlo.</p></li>\n<li><p>Funzioni, metodi e altri oggetti con il prefisso underscore (<code class=\"docutils literal notranslate\"><span class=\"pre\">_</span></code>). Questo è il modo standard di Python per indicare che qualcosa è privato; se qualsiasi metodo inizia con un singolo  <code class=\"docutils literal notranslate\"><span class=\"pre\">_</span></code>, allora è una API internal.</p></li>\n</ul>\n</section>\n</section>","rootId":"api-stability","toc":[{"title":"Cosa significa «stabile»","anchor":"what-stable-means","children":[]},{"title":"API stabili","anchor":"stable-apis","children":[]},{"title":"Eccezioni","anchor":"exceptions","children":[{"title":"Fix di sicurezza","anchor":"security-fixes","children":[]},{"title":"API marchiate come internal","anchor":"apis-marked-as-internal","children":[]}]}],"breadcrumbs":[{"docname":"misc/index","title":"Meta-documentazione e miscellanea","url":"/it/5.2/misc/"}],"prev":{"docname":"misc/index","title":"Meta-documentazione e miscellanea","url":"/it/5.2/misc/"},"next":{"docname":"misc/design-philosophies","title":"Design di filosofie","url":"/it/5.2/misc/design-philosophies/"},"formats":{"html":"/it/5.2/misc/api-stability/","markdown":"/it/5.2/misc/api-stability.md","json":"/it/5.2/misc/api-stability.json"},"source":"https://github.com/django/django/blob/stable/5.2.x/docs/misc/api-stability.txt","official":"https://docs.djangoproject.com/it/5.2/misc/api-stability/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}