Jak zaplanować i zaprojektować pierwszą większą aplikację.

0

Przymierzam się do zrobienia aplikacji do portfolio. Do tej pory klepałem ogólnie "hello worldy" i i małe aplikacje różnych framworków. Istnieją jakieś książki, tutoriale opisujące jak się do tego zabrać i jakich reguł się trzymać żeby wszystko trzymało poziom? Aplikacja będzie z użyciem Javy, Springa i Hibernate ale to chyba mniej istotne

0

Tak po prostu... najpierw musisz mieć pomysł co ma ona robić, a potem zacząć ją w końcu robić bez zbędnego pitolenia.

0

Ale już wiem co chce zrobić i co ma robić, ale chcę to zrobić "po bożemu".

7

Musisz zacząć od czegoś małego, prostego, ale działającego, co realizuje najważniejszą funkcję tego, co sobie zaplanowałeś. A potem stopniowo to rozwijać i refaktoryzować, aż stanie się odpowiednio duże i w pełni funkcjonalne.

1

Ja bym rzucił czar

9

Przymierzam się do zrobienia aplikacji do portfolio. Do tej pory klepałem ogólnie "hello worldy" i i małe aplikacje różnych framworków. Istnieją jakieś książki, tutoriale opisujące jak się do tego zabrać i jakich reguł się trzymać żeby wszystko trzymało poziom?

Zapewne są. Problem tylko taki, że tego rodzaju książki zakładają, że już coś umiesz, masz jakieś praktyczne doświadczenie z programowaniem aplikacji (a tego co pisałeś to raczej HelloWorldy pisałeś). Czytanie i powtarzanie ślepo pewnych rzeczy bez zrozumienia dlaczego autor uważa, że tak się powinno robić niewiele ci da.

Poza tym nie ma żadnej złotej recepty. Książki mogą ci ogólnie podpowiedzieć o np. SOLID, DRY, KISS, YAGNI, mogą cię nauczyć wzorców typu MVC, mogą cię nauczyć dziesiątek innych wzorców czy architektury oprogramowania (ważne pojęcie, bo tego tak naprawdę szukasz) - ale sucha teoria bez poparcia praktyką niewiele ci da.

Jak dla mnie lepiej jest się "ubrudzić" i spróbować najpierw zrobić samemu taką aplikację. Jak ci się nie uda, to nie przejmować się tylko przepisać ją nawet od zera na nowo. Choćby kilka razy. Tak więcej się nauczysz, niż czytając książkę całkowicie bez przygotowania. Sam może wpadniesz na pewne rzeczy.

W międzyczasie oczywiście możesz chłonąć wiedzę teoretyczną, czytać książki, artykuły, ale lepiej to zrobić na zasadzie "poczytam sobie o czymś przez pół godzinki a potem usiądę przez drugie pół godzinki i pomyślę jak można to zastosować do mojej aplikacji". Np. "przeczytałem o zasadzie DRY(don't repeat yourself), i teraz pomyślę, czy czy są gdzieś miejsca w moim kodzie, gdzie piszę kilka razy to samo. Jeśli są, to jak mogę to zmienić?". I potem próbujesz zastosować to, czego się nauczyłeś do konkretnego problemu/aspektu twojego programu. Jeśli ci się nie uda, to możesz dalej wiercić to DRY, doczytać więcej, poszukać przykładów kodu jak to może być zrobione itp. Albo samemu myśleć czy próbować rozrysować na kartce jak to zaaplikować do twojego programu.

Natomiast jeślibyś kupił jakąś książkę i przeczytał od deski do deski (pewnie z połowy nie rozumiejąc), a potem próbował zastosować w całości tę wiedzę do tego co robisz, zrobiłbyś to i tak nieudolnie (bez książki też zrobisz nieudolnie za pierwszym razem - ale właśnie na tym polega progres, nie da się od razu programować dobrze, pomijając etap prób i błędów).

1 użytkowników online, w tym zalogowanych: 0, gości: 1