vander-furtuna / java-javalar

This project was developed as the first evaluation of the programming techniques discipline 2023.2. It consists of a simulator of a solar system, in which the main star is Java and the planets are other programming languages. The main objective of this project is to apply the concepts of object orientation learned in the classroom.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

JavaLar

JavaLar System 🪐

Welcome to the JavaLar System!

GitHub top language GitHub last commit

✅ About the project

This project was developed as the first evaluation of the programming techniques discipline 2023.2. It consists of a simulator of a solar system, in which the main star is Java and the planets are other programming languages. The main objective of this project is to apply the concepts of object orientation learned in the classroom.

🛠️ Tools

Tools used in the development of this project/discipline.


Java icon Eclipse IDE icon

💻 Getting Started

In the terminal, run the following commands

  • Clone the project and access the folder
$ git clone https://github.com/vander115/java-javalar.git && cd java-javalar
  • ⚠️ Make sure the latest version of Java is installed on your machine
  • After entering the folder, run the Java command:
$ java -jar javalar.jar
  • If everything goes perfectly, you will see something similar to this screen: image

❓ What Is Javalar?

The Javalar system is a game that simulates a solar system, only instead of the sun, we have the Java language as the star and planets-languages instead of the conventional planets of the solar system. The stars are organized in a grid, in which bugs and developers appear at every moment and can change the planets' attributes. If a planet collides with a bug, it loses speed, if it collides with a developer, it gains speed. If the planet's speed reaches 0, it explodes and disappears from the system.

ℹ How to use Javalar?

Instants

Java is the star of the Javalar System, but what energizes and moves the planet-languages are the moments. In this second version, the instants are read from CSV files which can be accessed here.

Action Buttons

The Javalar system has 5 main buttons and they control all the system's main functions. They are, respectively:

  • Read next instant;
  • Upload new file;
  • Save report;
  • Read data from other participants;
  • Save report file;
    image

Upload New File Button

Clicking this button opens a file selection dialog, allowing you to browse through the system folders and find the file you want to read:
image

With the file selected and validated, the button changes color to green, indicating that the file has been successfully read!
image

Read Next Instant

With the file ready, the button to process the instants is released, and each time it is clicked, a line in the file is converted into values that will be used to move the planets in real time.
ezgif com-video-to-gif
Note that an indicator of instants read and total instants appears inside the button;

Save Report

The Javalar system has a database shared with the whole class. The system's current data is recorded in this database via this button:
image

Read Data from Other Participants

By clicking on the button to read data from other participants, the system will access the data from the database and generate a report of the analyzed data. Due to the length of the analysis process, a loading icon is displayed until the process is terminated.
loading

Save Report File

When you click on the save report button, a window will appear for you to select an output directory for the report file: image

Additional Features

The Javalar system has additional functionalities to enrich the user experience. By clicking on an element in the cells, you can see its information and description. In addition, as planets collide with bugs and die, they appear in the lower bar of the window, allowing the user to still access their information.
dialog

Ready! Now just enjoy and test JavaLar’s features!

Made with 💛 by Vanderlei Furtuna 🤝 See my linkedin

About

This project was developed as the first evaluation of the programming techniques discipline 2023.2. It consists of a simulator of a solar system, in which the main star is Java and the planets are other programming languages. The main objective of this project is to apply the concepts of object orientation learned in the classroom.


Languages

Language:Java 100.0%