Jump to content

Group assignment for JAVA, Database or CSV file?

EIijah

So in a group we have to create a small management program which will be able to store info on employees like salary, departments and stuff and because currently I'm very bad at Java, I would like to know if it's going to be easier to use a SQL Database or a CSV file (I'm also taking a database class) but given that currently I only know basic Java, which would be easier?

CPU: i5-4690K @ 4.0GHz GPU: Gigabyte Gtx 970 WindForce MOBO: Gigabyte Z97 Gaming-3 CASE: Corsair Carbide 200R PSU: Corsair RM750

 

RAM: Corsair Vengeance 4GBx4  MOUSE: CM Mizar KEYBOARD: Logitec G110

 

Link to comment
Share on other sites

Link to post
Share on other sites

I prefer SQL

CPU: i7 - 5930k  GPU: Gigabyte GeForce GTX 980 Ti  MOBO: MSI XPower AC X99 RAM: Kingston HyperX Fury 32GB  Boot Drive: M.2 SM951 512GB Storage: 850 Pro 1TB SSD PSU: EVGA 1000W Case: TT Core X9 CPU Cooler: Cryorig R1 Ultimate Case Fans: 2x Cooler Master 200mm Fan, 5x Cougar Vortex 120mm, 4x Be quiet! Pure Wings 140mm Peripherals: Corsair K70 and G5 Mouse

Link to comment
Share on other sites

Link to post
Share on other sites

If you feel up to going with the SQL DB option then it will likely offer better returns as you would then be able to demonstrate model design.

There's frameworks such as JPA and Hibernate.

Try to also separate your application into layers such as with the MVC or MVVM design patterns. Hide your implementation detail away as much as possible behind interfaces. For instance, I want to save or load some data but I shouldn't have to care about where or how this happens (means you can swap the implementation out later). Try to write some tests using JUnit against the behaviour at these interfaces (don't couple tests to the implementation detail) :)

The single biggest problem in communication is the illusion that it has taken place.

Link to comment
Share on other sites

Link to post
Share on other sites

Since you're doing a group project, it might depend on what the others are familiar with. If only you are working on the storage aspect of the application then you can do what you want and abstract the details away for everyone else. If someone else will work on the storage with you, then you should make sure they are also comfortable with databases before you choose.

 

Both options are simple once you're familiar with them. Learning to work with a database will likely take you extra time (maybe a little or maybe a lot) and that may or may not be an issue for your deadline.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×