Zrobiłem aplikacje SPA a la wykop, użyłem Laravela i Vue. Dajcie jakiś feedback co źle, co poprawić itp. Oczywiście nie miałem w zamiarze robić drugiego lurkera, to tylko taki projekt edukacyjny. Czy z takimi umiejętnościami miałbym szansę dostać gdzieś prace jako junior?
@yersey: kurde, sporo rzeczy jest nie tak jak być powinno, ale jak popracujesz nad tym to będzie ok. Lista uwag w losowej kolejności, niektóre pierdoły niektóre solidne:
- metody relacji z dużej litery - nope - używaj ::class zamiast podawania namespace w ten sposób - metoda created_at w modelu Wpis - wtf? Użyj Carbon - model się nazywa Wpis albo Wykop a obok masz User albo Comment - wiem że to nazwa domenowa ale
- niepotrzebne findOrFail w kontrolerze, używaj route-model binding - nie możesz robić jednej metody w stylu show a tuż obok wpisy, cmon - README spoko jeżeli to projekt na studia, ale w realnej aplikacji schemat bazy generujesz sobie kliknięciem, a opis nie powinien być potrzebny
Generalnie jeżeli nie przerabiałeś to zdecydowanie weź darmowy kurs larwy na laracasts.com przerób cały a potem sobie
@aso824: moze i racja, ja w larvie nie pisalem juz ponad 3lata wiec smialo moge twierdzic ze go nie znam, natomiast sonar to bardzo pożyteczna armata. Nic tak nie motywuje zespołu do utrzymywania czystego i utrzymywalnego kodu jak dobrze ustawione reguły, rosnący dlug , smelsy czy poziom duplikacji kodu i malejacy coverage.
cr przepusci wiele rzeczy, sonar wiele wyłapie, ale kombo cr + sonar to wg. mnie musthave w kazdym
@yersey: 1) tak, chodzi o phpdoca. podpowiada potem w ide jakie argumenty i ich typy są przyjmowane, czy metoda i jakiego typu zwraca, jakie może rzucać exceptiony itp.
2) poczytaj na necie o tym, jest pełno źródeł wiedzy, a samo silne typowanie jest wazne i pomaga unikać wielu błędów.
3) logika biznesowa - czyli wszystko co sie dzieje za kulisami by dać obrobione dane na front, abstrakcyjny przyklad - e dziennik
Czy z takimi umiejętnościami miałbym szansę dostać gdzieś prace jako junior?
Link do repo
#programowanie #it #php #laravel #js #vue #programista15k
źródło: comment_1601655916nRjUPNsrPYSlZQBmHU2lH9.jpg
Pobierzkatalog app, wszyatkie klasy po nagielaku nazwane, jedna nazywa sie wpis - brak spojnosci.
metoda created-at w tej klasie - cisnie sie slowo - co to ***** ma być?
ogarnij to za pomocą obiektu datetime w max 5
- metody relacji z dużej litery - nope
- używaj
::classzamiast podawania namespace w ten sposób- metoda
created_atw modelu Wpis - wtf? Użyj Carbon- model się nazywa
WpisalboWykopa obok maszUseralboComment- wiem że to nazwa domenowa aleW kontroleach ma być max odebranie danych, przekazanie ich dalej, zwrocenie wyniku.
logikę biznesową powinieneś zamknąć w fasade lub jakiś serwis.
- niepotrzebne
findOrFailw kontrolerze, używaj route-model binding- nie możesz robić jednej metody w stylu
showa tuż obokwpisy, cmon- README spoko jeżeli to projekt na studia, ale w realnej aplikacji schemat bazy generujesz sobie kliknięciem, a opis nie powinien być potrzebny
Generalnie jeżeli nie przerabiałeś to zdecydowanie weź darmowy kurs larwy na laracasts.com przerób cały a potem sobie
@Hipodups: sonar to armata dla początkującego ( ͡° ͜ʖ ͡°) phpstan/larastan (tutaj to drugie) to znacznie przyjemniejszy wstęp
cr przepusci wiele rzeczy, sonar wiele wyłapie, ale kombo cr + sonar to wg. mnie musthave w kazdym
Komentarz usunięty przez moderatora
Chodzi o te komentarze przy metodach w kontrolerach? Jak to zrobić? Po co
1) tak, chodzi o phpdoca. podpowiada potem w ide jakie argumenty i ich typy są przyjmowane, czy metoda i jakiego typu zwraca, jakie może rzucać exceptiony itp.
2) poczytaj na necie o tym, jest pełno źródeł wiedzy, a samo silne typowanie jest wazne i pomaga unikać wielu błędów.
3) logika biznesowa - czyli wszystko co sie dzieje za kulisami by dać obrobione dane na front, abstrakcyjny przyklad - e dziennik
https://github.com/yersey/laravel-vuejs-spa/blob/service/app/Http/Controllers/CommentController.php
https://github.com/yersey/laravel-vuejs-spa/blob/service/app/Services/CommentService.php