College works


February 8, 2019

I’m now in the middle of the 2nd year of my graduation and so far I’ve worked in a few school projects that I really enjoyed doing. I’ve touched Assembly, which it might look weird, but I liked it, it taught me how to handle memory and how “things” really happen at a machine level. I’ve done two projects in Python which made me want to learn more about it and I’ve created a few scripts and even an API on other projects. And lastly Java, that taught me many things about using classes, modifiers, inheritances and interfaces (also keeping the code a bit cleaner).

Assembly

The Assembly project consisted on creating a search algorithm that would take a matrix with random shapes and we should into it, find our assigned shape and print the line and column in which it started.

Our assigned shape was the cross:

 

 

And the final result in Mars:

 

Python – GAU (Gestão de Avaliação na UAL)

This was the first project I created in Python. The project consisted on having a tool to create classes, save exams data and grades in order to calculate the discipline median and such things… We couldn’t use classes, neither databases so the data was in Arrays and we would save it to load it again in binary.

It was challenging to create relations between arrays as it was the only way to save data, but I enjoyed it as my first project.

Python – SIMPAR (Simulação de Passageiros em Partida Aérea)

This was the second Python project and we could use classes and the end result was a much much tidier and legible code than the previous. We had to simulate an airport balcony that had to dispatch passengers and their bags. We had some random factor like some balconies where faster than the others and some passengers had more bags than the others. In the end we had some result in which we could see the fastest balcony and time it took to dispatch everyone.

 

Java – SGAL (Aplicação para alojamento local)

This was the introduction I got to Java and creating GUI’s for desktop apps (gotta be honest, didn’t liked JavaFX!). The project had 4 users, the administrator which controlled the company and added proprietaries and their habitations, also added employees and assigned cars and tasks to them, the proprietary that could lock out some datas so the habitation wasn’t for rent and get a report of the estimate of earnings, the employees which had a tasks list to do, and the client which could rent habitations.

I enjoyed mostly but for me it there was a big issue. The project had to be done with a database built upon CSV’s which IMO didn’t offer any advantage over adding a real database like MySQL… I’ve wasted a lot of effort into that and it could have went to tweaking more the interface and diving deep into JavaFX.