• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Java - ocena kodu i programu

VPS Starter Arubacloud
+3 głosów
413 wizyt
pytanie zadane 13 sierpnia 2017 w Java przez Wi_ktos Bywalec (2,950 p.)
Witam !

Razem z kolegą napisaliśmy program w Javie. Jest to nasz pierwszy program i bardzo chcielibyśmy aby ktoś kto ma większe doświadczenie od nas ocenił nasz program pod względem kodu i organizacji działania programu. Staraliśmy się aby wyszło jak najlepiej jednak wiele rzeczy można było zrobić pewnie jeszcze lepiej i to właśnie chciałbym od Was dostać jako mały feedbaczek :).

Program generuję stronę internetową taką jaką stworzy użytkownik w GUI. Możliwości programu nie są jakieś wybitne ale też nie najbanalniejsze :). Pisaliśmy go we dwójkę, obydwoje dzierżąc w rączkach książki związane z podstawami programowania w Javie, więc już na starcie nie spodziewaliśmy się jakiś fajerwerków związanymi z możliwościami aplikacji ;D. Strony internetowe są raczej proste do napisania znając podstawy HTML i CSS więc program pozwala ominąć... powiedzmy pierwsze pół godziny pracy z tymi językami.

Kod znajduje się pod tym linkiem :
https://github.com/KonWoj/PageCreator

Zachęcamy również innych do dalszego rozwijania naszego pomysłu. Mamy nadzieje, że może ktoś będzie chciał w ramach samorozwoju rozszerzyć możliwości naszego kreatorka, a może coś zmienić. Jeśli taka osoba się znajdzie to link do całego projektu posiada a obydwoje z kolegą służymy zawsze radą (pisać na priv) i wyjaśnieniem co co robi i po co jest :P.

Na koniec chciałbym zachęcić wszystkich do znalezienia kolegi i pracy razem nad programem gdyż pomimo wielu rzeczy związanych z Javą jakich się nauczyliśmy, błędów w trakcie, które popełniliśmy i których pewnie w przyszłości się wystrzeżemy, nauczyliśmy się działać razem i razem tworzyć program... pracą zdalną :), a to chyba jest czasami nawet ważniejsze niż sama umiejętność dobrego kodzenia :D.

Pozdrowienia dla wszystkich pasjonatów !!!
komentarz 13 sierpnia 2017 przez Wi_ktos Bywalec (2,950 p.)
Gdyby ktoś chciał gotowy plik .exe to dostępny jest pod linkiem :
https://www.dropbox.com/s/btf5mfp9rvj583m/HTMLPageCreator.zip?dl=0

1 odpowiedź

+1 głos
odpowiedź 13 sierpnia 2017 przez mbabane Szeryf (79,280 p.)
wybrane 14 sierpnia 2017 przez Wi_ktos
 
Najlepsza

Testy jednostkowe. Brawo! Mało kto w pierwszym projekcie to robi (tak mi się przynajmniej zdaje).

Testów jednostkowych nie powinno się umieszczać razem z kodem wynikowym tj. nie dołącza się go w ostatecznej kompilacji. Testy jednostkowe są dla programistów, aby móc w przyszłości bez przeszkód i elastycznie dodawać kolejne funkcjonalności (a jeśli są na prawdę dobrze napisane (np. w podejściu TDD) to stają się dokumentacją dla programistów).

Najlepiej jest zrobić tak, ze tworzy się dwie główne paczki/katalogi. Jeden to main, gdzie są klasy i pakiety składające się na funkcjonalność programu wynikowego. Drugi to test, który jest kalką maina i zawiera klasy testowe oraz pomocnicze rzeczy do testów. Oba katalogi/paczki (main i test) umieszcza się w katalogu src. W katalogu resources umieszcza się np. obrazki z których się korzysta w programie.

Coś takiego:

http://www.vogella.com/tutorials/Gradle/img/xgradle_init_java_library.png.pagespeed.ic.phBJcmrDN9.png

Taka klasa np.:
CSSAttribute https://github.com/KonWoj/PageCreator/blob/master/Resources/CSSHandlerClasses/CSSAttribute.java
w niej jest metoda: parseFromString

Jest dość długa i zawiera komentarze, wiec pewnie można podzielić ją na kilka metod prywatnych. Każda z nich będzie realizować to co opisane jest komentarzem, a ten można zastąpić odpowiednia nazwa metody. Zajrzyjcie do książki Czysty Kod -> http://helion.pl/ksiazki/czysty-kod-podrecznik-dobrego-programisty-robert-c-martin,czykov.htm

1
komentarz 13 sierpnia 2017 przez Wi_ktos Bywalec (2,950 p.)
Wow, dziękuje za tą odpowiedź posiada słuszne rady i na pewno wpłynie na nasze przyszłe programy :).
Dziękujemy także za lekturę na pewno nie ominiemy jej w naszym rozwoju ! :D
komentarz 13 sierpnia 2017 przez mbabane Szeryf (79,280 p.)
edycja 14 sierpnia 2017 przez mbabane
Jeśli w miarę swobodnie korzystacie ze Swinga, to pobawcie się JavaFX, jest to dużo nowszy standard do tworzenia GUI.
komentarz 14 sierpnia 2017 przez Wi_ktos Bywalec (2,950 p.)
Kolejna dobra rada dzięki bardzo :) !
komentarz 14 sierpnia 2017 przez mbabane Szeryf (79,280 p.)
Uruchomiłem aplikacje. Aplikacja całkiem ciekawa. Nie musiałem np. godzinę zastanawiać się co jest co. Zapomnieliście tylko chyba o jednej rzeczy (albo jej nie widzę). Chodzi o to że jak wejdę w ten ostatni krok (czyli wpisywanie zawartości do generowanej strony) to chyba nie da się powtórzyć całości od nowa, bądź powrócić do poprzedniego kroku bez restartu aplikacji.

A jeszcze taki mały szczególik. Jak nie zapisze zawartości i kliknę krzyżyk zamykający aplikacje to wyświetla się: "Page not saved. Do you want to continue?" -> Klikam "No" i kontynuuję pracę w programie ;), a jak klikam "Yes" to zamyka aplikacje.
1
komentarz 14 sierpnia 2017 przez Wi_ktos Bywalec (2,950 p.)
Tak moglibyśmy dodać w sumie powrót do menu głównego czy inną możliwość dobra rada :).

Natomiast co do okienka kontynuacji. Chodzi nam o to czy chcesz kontynuować zakańczanie pracy więc przyciski działają całkiem solidnie :).

Podobne pytania

+1 głos
2 odpowiedzi 198 wizyt
pytanie zadane 8 lutego 2020 w JavaScript przez Dev26 Nowicjusz (130 p.)
0 głosów
2 odpowiedzi 348 wizyt
pytanie zadane 18 lutego 2017 w JavaScript przez Szymon213 Nowicjusz (160 p.)
0 głosów
5 odpowiedzi 653 wizyt
pytanie zadane 11 września 2017 w Java przez Patryk Moros Początkujący (470 p.)

92,452 zapytań

141,262 odpowiedzi

319,085 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...