# Welche 3rd-Party-Bibliotheken/SDKs sollte man kennen?



## RolandKirpal (1. Nov 2012)

Hallo Community,

ich bin heute erst auf dieses Forum gestoßen, und freue mich nette Leute hier kennenzulernen. Darum verzeiht mir bitte, wenn ich noch Fehler mache. 

Hintergrund:
Ich selbst bin seit wenigen Monaten unternehmerisch als Software-Entwickler tätig. Bisher habe ich mich auf eigene Projekte (Apps) konzentriert, überlege aber inzwischen, als Freelancer tätig zu werden. Ich kenne mich ziemlich gut mit Java und Software-Design aus, habe aber noch keine Erfahrung im professionellen Java-Umfeld. Daher versuche ich mich schon im Vorfeld auf unbekannte Programmbibliotheken einzustellen.

Frage:
Ganz allgemein, gibt es irgendwelche Third-Party-Programmbibliotheken oder SDKs, die man unbedingt kennen muss (oder *sollte*), bzw. welche, die sehr häufig in den verschiedensten Java-Projekten verwendet werden?

Gab es vielleicht nach eurer persönlichen Erfahrung irgendwelche Überraschungen; Bibliotheken, die ihr zuvor nicht kanntet, und von denen ihr selbst überrascht wart, wie verbreitet sie sind?

Grüße,
Roland


----------



## nillehammer (1. Nov 2012)

> Frage:
> Ganz allgemein, gibt es irgendwelche Third-Party-Programmbibliotheken oder SDKs, die man unbedingt kennen muss (oder *sollte*), bzw. welche, die sehr häufig in den verschiedensten Java-Projekten verwendet werden?



JUnit und/oder TestNG: Testlibs
Die Apache Commons Sachen


----------



## Firephoenix (1. Nov 2012)

Zu JUnit sieht man noch recht häufig Mockito, dann kommen DI-Frameworks wie Guice oder größere Brocken wie Spring / Hibernate.
Ebenfalls fast überall eingebaut sind Logging-Frameworks wie slf4j / log4j.

Die Auswahl sollte sich aber auch nach der Anwendung richten die man Entwickelt.

Gruß


----------



## Ullenboom (2. Nov 2012)

Google Guava ist ein MUSS.
Sonst alles was technolgieabhängig ist, also etwa Komponentenbibliotheken (PrimeFaces, SwingX) oder Datenformate-Libs und so.


----------



## KSG9|sebastian (3. Nov 2012)

Worauf willst du dich spezialisieren?

JEE, Frontend, Backend, GWT, JSF,ETL....?

Auf jeden Fall aber alles rund um Logging, Basics in Datenbanken, Buildtools, CI?..


----------

