Apache Commons

De la Viquipèdia, l'enciclopèdia lliure
Logotip d'Apache Commons

L'Apache Commons és un projecte de l'Apache Software Foundation, anteriorment sota el Projecte Jakarta. L'objectiu de Commons és proporcionar programari Java reutilitzable i de codi obert. Els Comuns es compon de tres parts: pròpia, sandbox i inactiva.[1]

Estructuració[modifica]

El Commons Proper es dedica a crear i mantenir components Java reutilitzables. El Commons Proper és un lloc per a la col·laboració i l'intercanvi, on els desenvolupadors de tota la comunitat Apache poden treballar junts en projectes que seran compartits per projectes Apache i usuaris d'Apache. Els desenvolupadors de Commons faran un esforç per assegurar-se que els seus components tinguin dependències mínimes d'altres biblioteques de programari, de manera que aquests components es puguin desplegar fàcilment. A més, els components de Commons mantindran les seves interfícies el més estables possible, de manera que els usuaris d'Apache, així com altres projectes d'Apache, puguin implementar aquests components sense haver de preocupar-se dels canvis en el futur.[2][3]

Categoria Components
Web
  • FileUpload  : per carregar fitxers a aplicacions web
  • Net – Col·lecció d'utilitats i implementacions de protocols per a comunicacions de xarxa
  • EL – Intèrpret per al JSP 2.0 llenguatge d'expressió
  • Correu electrònic  : biblioteca per enviar correus electrònics des de Java
  • Imatge  : biblioteca per llegir, analitzar i escriure diversos formats d'imatge (abans anomenat Sanselan)
  • Jexl  : del llenguatge d'expressió extensió a la biblioteca d'etiquetes estàndard de JavaServer Pages
XML
  • Betwixt – Serveis per mapejar JavaBeans a XML i viceversa
  • Digester  : mapeig XML a Java
  • Jelly  : motor de processament i scripts basat en XML
  • JXPath  : eines per manipular Java Beans mitjançant la sintaxi XPath
Utilitats
  • BCEL – Biblioteca per generar, manipular i analitzar bytecode Java
  • BeanUtils  : classes d'embolcall per a la reflexió i la introspecció de Java per manipular Java Beans
  • Bean Scripting Framework (BSF)  : interfície per a llenguatges de script, inclòs JSR-223
  • CSV  : Component per llegir i escriure fitxers CSV
  • Pool  : component genèric d'agrupació d'objectes
  • Validador  : marc per definir validadors i les seves regles mitjançant fitxers XML
  • Daemon  : mecanisme alternatiu per cridar codi Java semblant a un dimoni Unix
  • Descobriment  : eines per localitzar recursos assignant els seus noms de recursos a serveis o referències
  • Exec  : API per gestionar processos externs i gestionar l'entorn d'execució a Java
  • Launcher  : llançador de plataforma neutre per iniciar aplicacions des de Java
  • Java Compiler Interface (JCI)  : biblioteca per compilar codi en bytecode Java
  • Modelador  : eines per crear fàcilment MBeans per a les extensions de gestió de Java
  • Object Graph Navigation Language (OGNL)  : API per navegar per l'arbre d'objectes Java
  • State Chart XML (SCXML) - Implementació d'un motor d'estats segons l'especificació SCXML que executa estats i transicions d'estats definits
  • Chain – Implementerung des Chain of Responsibility Design Patterns
Conversions
  • Còdec  : implementació d'algoritmes de codificació/descodificació genèrics com Fonètica, Base64, URL
  • Comprimir  : API per treballar amb fitxers tar, zip i bzip2
Extensions de l'API de Java
  • Intèrpret de línia d'ordres (CLI) - Analitzador d' arguments de línia d'ordres
  • Configuració  : accés als fitxers de configuració i preferències en diversos formats
  • Col·leccions – Extensió del Java Collections Framework , a partir de la versió 4 amb genèrics
  • Agrupació de connexions de base de dades (DBCP)  : Serveis per a grups de connexions de bases de dades
  • DbUtils - Extensions per a JDBC
  • Functor  : implementació d'objectes de funció, objectes que representen funcions
  • IO  : mostra les utilitats d'entrada/sortida
  • Java Caching System (JCS)  : marc per a memòria cau distribuïda
  • Lang – extensió de les funcionalitats de les classes de java.lang
  • Registre  : embolcall al voltant d'un conjunt de marcs de registre
  • Matemàtiques – Components per a funcions matemàtiques i estadístiques
  • Primitives  : compilacions de tipus primitius a Java sense autoboxing
  • Proxy  : biblioteca per crear servidors intermediaris dinàmics
  • VFS  : Component per gestionar fitxers, FTP, SMB, Zip, etc. com a sistema de fitxers virtual i lògic

Biblioteques generals[modifica]

Una de les biblioteques més importants és "Commons Collections", que amplia el marc de Java Collections amb moltes classes útils per gestionar conjunts de dades. La biblioteca "Commons Lang" amplia les funcions bàsiques del paquet java.lang, que conté les classes bàsiques de Java, amb moltes classes útils i els seus mètodes. Amb l'ajuda de "Commons Logging" es crea una API uniforme per a les diferents biblioteques de classes de registre , com ara log4j o java.util.logging. Altres extensions generals a les biblioteques estàndard de Java inclouen:

  • Commons BeanUtils
  • CLI de Commons
  • Configuració de Commons
  • Matemàtiques comuns

Referències[modifica]

  1. «An Introduction to Apache Commons Lang 3» (en anglès). [Consulta: 25 març 3034].
  2. Kenlon, Seth. «Parse command options in Java with commons-cli | Opensource.com» (en anglès). [Consulta: 25 març 2024].
  3. «Index of /commons» (en anglès). [Consulta: 25 març 2024].