Witajcie. Chcę napisać appke, która pomoże mi dostać się na juniora. Czy coś w stylu mini sklepu czy np. przeglądanie, dodawanie, usuwanie towarów z magazynu/sklepu da radę?
Jakich narzędzi do tego użyć? Chciałem użyć do tego springa i się go jednocześnie poduczyć. Czy aplikacja sama w sobie powinna wyglądać tak, że to po prostu zapytania do bazy danych?
Każde porady mile widziane :)
Co już umiesz?
datdata napisał(a):
Co już umiesz?
Java SE, SQL, kilka wzorców. Niestety póki co głównie to co miałem na studiach
A html,css jakiś javascript?
Również zainteresowany pytaniem ;)
Polecam obejrzeć.
Ja bym na Twoim miejscu spróbował następującego podejścia:
-
Zainstaluj dowolny silnik bazy danych, dla którego uda Ci się znaleźć w internecie przykładową bazę danych Northwind - może to być MS SQL Serwer, Postgresql, MySql. Przeanalizuj strukturę.
-
Korzystając z Hibernate zrób mapowanie relacyjno-obiektowe. Jak już Ci się uda skorzystaj z wbudowanego w IDE narzędzia do reverse engineringu i porównaj wyniki. Zobacz czym Twoje mapowanie się różni i dlaczego.
-
Napisz warstwę DAO dla podstawowych operacji na bazie, nie musi być dla wszystkich tabel bo to dość żmudne zajęcie, napisz testy integracyjne a następnie porównaj możliwości tego co stworzyłeś z biblioteką Spring Data JPA. Pomyśl jaką przewagę mają Twoje klasy DAO a co daje Ci Spring Data JPA.
-
Napisz warstwę logiki biznesowej korzystającej ze Spring Data, pamiętaj o sensowności biznesowej operacji, np. zakup określonej ilości towaru powinien zmniejszyć stan magazynowy. Pamiętaj o transakcjach! Napisz testy jednostkowe dla tej warstwy i integracyjne.
-
Napisz kontrolery HTTP korzystające tylko z warstwy serwisów, nie musisz się bawić w robienie widoków, zwracanie/akceptowanie JSON w zupełności wystarczy. Poczytaj o REST, napisz testy jednostkowe i end-to-end. Jak skończysz porównaj to co stworzyłeś z biblioteką Spring Data REST. Jakie plusy ma Twoje rozwiązanie, jakie możliwości daje Ci Spring Data REST?
-
Poczytaj z Spring Security i spróbuj zaimplementować autoryzację/uwierzytelnianie w Twojej aplikacji, na początek może być http basic.
-
Cały czas umieszczaj kod w repozytorium git, może być github. Jak nie jesteś czegoś pewny pisz zapytanie na forum z prośbą o code review. Im częściej będziesz dostawał feedback tym lepszy będzie Twój kod.
-
Postaw sobie browar bo umiesz podstawy Hibernate, JPA, Spring MVC, REST, JUnit, Mockito, Spring Security, Git, umiesz rozdzielić odpowiedzialności pomiędzy warstwy i klasy. Na juniora się nadajesz.
Pozdrawiam:)