Ho sentito dire che la libreria standard Java è più grande di quella di Python. Questo mi rende curioso di cosa manca in Python?Cosa c'è nella libreria standard Java a cui mancano Python?
risposta
Python arriva anche Con batterie incluse ... L'unico posto in cui ho sentito che Python manca è un buon toolkit GUI (no, TK non è paragonabile a Swing xD).
Cosa c'è di sbagliato in PyGtk? –
@Matt, PyGTK non fa parte di stdlib. – Tshepang
Python manca di una solida implementazione XML (con supporto XSLT e XPATH completo). Lo stdlib Python ha alcune implementazioni decenti per lavorare con XML (parser DOM, parser SAX e un tree builder chiamato ElementTree), ma XML più avanzato richiede una libreria di terze parti. Ho usato 4XSLT e ora rimando a LXML quando ho bisogno di fare del vero lavoro XML in Python.
Concordo con ciò e aggiungo che in una nota correlata l'implementazione SOAP non è forte. Tuttavia, ci sono buoni pacchetti (gratuiti) di terze parti che riprendono il gioco. E spesso quelli finiscono come parte della lib standard. – zenWeasel
Il parser DOM (se si intende [xml.dom.minidom] (http://docs.python.org/library/xml.dom.minidom.html)) non è affatto buono. Se vuoi analizzare un documento ElementTree è l'unica cosa decente nella libreria standard. –
L'unica pecca in Python è che in Python manca un vero metodo di distribuzione canonica. (Sì, ci sono quelli buoni là fuori, ma niente che sia davvero solido come una roccia).
Quale può ostacolare la sua adozione in alcuni ambienti Enterprise.
L'imballaggio e la distribuzione hanno un disperato bisogno di aiuto. Ci sono alcuni con una visione in avanti - speriamo che ci riescano. –
Java fornisce numerose implementazioni di interfacce per i tipi di base. Java ha un ArrayList e un elenco a collegamento singolo e un elenco a doppio collegamento, mentre Python ha solo un elenco. Java include molteplici implementazioni di mappe come TreeMap o LinkedHashMap, mentre Python generalmente si attacca alla singola implementazione di dict. Un ordered dictionary was proposed è ora parte di Python 3.1, ma in generale, Java ha un insieme più ricco di collezioni e classi base.
In difesa di Python, tuttavia, la necessità di classi base e interfacce più rigorosamente definite è molto meno necessaria con l'approccio a dattilografia dinamica (in cui le interfacce sono spesso accettate implicitamente).
Inoltre, non dimenticare le raccolte di Java relative alla concorrenza nel pacchetto java.util.concurrent. –
Direi che avere una sola implementazione dei tipi di raccolta di base è un effetto collaterale di supportarli come tipi predefiniti con lo zucchero della sintassi in giro ... Sinceramente, preferisco avere un solo tipo di dizionario e poter usare { } per il costruttore che avere tre o quattro tipi e utilizzare una sintassi più dettagliata (uguale per gli elenchi). – fortran
Esistono anche linguaggi la cui sintassi è così flessibile, che i tipi di libreria appaiono come se fossero tipi incorporati. Ad esempio Scala. –
- 1. Metodi free-side nella libreria standard Java
- 2. La libreria standard Python è veramente standard?
- 3. PEP 257 assestamento docstring nella libreria standard?
- 4. boost :: alternativa opzionale nella libreria standard C++
- 5. Diagnosi EXC_BAD_INSTRUCTION nella libreria standard Swift
- 6. Come collegare punti in cui mancano valori?
- 7. Libreria standard Python a dati codificati POST multipart/data-dati
- 8. Perché alcuni identificatori nella libreria C++ standard sono brevi?
- 9. Codice malevolo dalla libreria standard Python
- 10. IronPython implementa la libreria standard python?
- 11. C'è una ragione per cui non c'è std :: identity nella libreria standard?
- 12. Embed python3 senza libreria standard
- 13. Dove trovo il codice della libreria standard Python?
- 14. Libreria standard matura per C
- 15. "Opzioni pagina progetto" mancano dall'IDE, cosa fare?
- 16. Quali classi di eccezioni sono nella libreria standard C++
- 17. Perché non c'è nessun << nella libreria standard Haskell?
- 18. Perché non c'è una funzione scanl nella libreria standard Haskell?
- 19. Qual è l'equivalente di boost :: make_transform_iterator nella libreria standard?
- 20. È corretto lanciare eccezioni definite nella libreria standard C++?
- 21. Apple ha ora abilitato FTS nella libreria sqlite standard/integrata?
- 22. Progettare un'architettura in una tecnologia in cui mancano le competenze
- 23. Che cosa garantisce la libreria standard sull'assegnazione del movimento autonomo?
- 24. libreria standard `tipo file`
- 25. Crittografia privata/pubblica in Python con libreria standard
- 26. Esiste una funzione virtuale pura nella libreria standard C++?
- 27. Etichette libreria standard
- 28. Esiste una funzione `flip` nella libreria standard OCaml?
- 29. Python shutil copyfile - Mancano le ultime righe
- 30. Libreria standard .NET rispetto allo standard .NET
... OMG CORBA? ;-) –
mi manca la battuta – Tshepang
CORBA è probabilmente la cosa più inutile che fa parte della libreria standard di Java - nessuno la usa più, ma è troppo tardi per rimuoverla a causa degli standard di compatibilità a ritroso di Java. Sarebbe stato meglio per essere una libreria esterna. Sono i pacchetti org.omg. * In http://java.sun.com/javase/6/docs/api/overview-summary.html –