Under the pretext of studying the algorithm of Dijkstra "shortest path" I created a project that can be usefull for studies in java programming and contains different techniques. This kind of project may be a start point for studying some features and some kind of usefull libraries. here some of them
- Maven is a powerful project management tool that is based on POM (project object model). It is used for projects build, dependency and documentation. It simplifies the build process like ANT.
- Log4J is a Java library developed by the
Apache Software Foundationthat allows you to fine-tune with an excellent logging system, helps you monitor the behavior of an application during development, testing and finally go-live of your software. It is the de facto standard for logging of Java applications. - Lombok is a Java library used to reduce boilerplate code for model/data objects, e.g., it can generate getters and setters for those object automatically by using Lombok annotations.
- GSon for serialization of graph data files
- Patterns Here I used some patterns like Singleton, Broadcast
- JUnit for testing pieces of code
- Java Swing for building a pure (old style) client graphical interface