![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 14.10.2019 Skąd: Białystok Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
Zaczynam naukę OOP i w napisałem skrypt który umożliwia rejestracje/logowanie/zwrot/wypożyczenie książek. Mam świadomość istnienia SOLID oraz PSR - czytałem o PSR 1 / 2 i staram się przestrzegać. Nie znam MVC ani testów np. PHPUnit - to będą kolejne kroki w nauce. Czy taki skrypt można określić obiektowym, czy jest to jakaś hybryda? Zanim pójdę dalej jw chciałbym nauczyć się dobrych nawyków i w prawidłowy sposób posługiwać się OOP. Skrypt nie wszedł na forum, umieściłem na githubie Link do GitHub Moje dodatkowe pytania: 1. Tworzenie obiektu Database w konstruktorze innych klas, czy jest to prawidłowe? 2. Metoda checkCredentials klasy log - czy nie narusza zasady pojedynczej odpowiedzialności? Czy nie powinna np. wyszukiwać użytkownika,a następnie inna metoda powinna weryfikować dane? Dzięki za wszystkie uwagi i poświęcony czas (IMG:style_emoticons/default/smile.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 14.10.2019 Skąd: Białystok Ostrzeżenie: (0%) ![]() ![]() |
Ustosunkuje się tylko niektórych elementów, bo dostałem dużo wskazówek, a zanim je przerobie minie dłuższa chwila.
1) Tak, nie wrzuciłem na githuba dokonanych w plikach zmian stąd w dalszym ciągu było widoczne extends - jak pisałem już tak było wskazane w tutorialu który przerobiłem dotyczący dependency injection, że można było je stosować tylko w przypadku dziedziczenia.Odniosłem po tym tutorialu wrażenie, że dziedziczenie jest bardzo ważne i szeroko stosowane, ale jak widać nie (IMG:style_emoticons/default/smile.gif) Jak coś dopiero teraz wrzuciłem zmienione pliki. 2) Jeśli chodzi o
tak samo z tutorialu wynikało jasno, że jeśli funkcja nam coś zwraca, powinniśmy ją nazywać od get - niby przyjęta praktyka. Rozumiem,że jednak nie za wszelką cenę, na pewno cenne info. 3) Cs-Fixer nadpisał mi wszystkie elementy w katalogu, sprawdzałem po dacie modyfikacji, specjalnie przestawiałem klamry w dziwne miejsca i poprawiał je po uruchomieniu.Być może kwestia, że wyświetla mi komunikat ze korzystam z vendora fabpot, a nie friendsofphp - mam obydwa w composerze, nie umiem jednak wymusic stosowania właśnie friendsofphp. 4) Chyba zaczynam rozumieć, o co chodzi z login formem i podziałem - chwilowo dla mnie to abstrakcja do napisania, ale poszukam powalczę. 5) Jeden z pierwszych postów mówił o usunięciu HTML, więc zrobiłem to wszędzie - brak mi zarówno wiedzy jak i praktyki, stąd usunąłem wszędzie, ale znowu widzę, że i tutaj mogę stosować zasadę nie za wszelką cenę (IMG:style_emoticons/default/smile.gif) 6) co do komentarzy,trochę już mi się wyjaśniło, wydawało mi się to dziwne na przytoczonym przykładzie, też to odbierałem jako dublowanie kodu, myślałem,że tak poprostu ma być Więc po kolei: Jeśli chodzi o GITa ogarnę to, już wiem na co zwracać uwagę. Potem ogarnę diffa, żeby zadbać o czystość kodu - zależy mi na nim. Potem zaznajomię się z MVC i spróbuje przepuścić wszystko przez index i przebuduje Database, być może to mi rozjaśni wasze wskazówki. Dzięki za odzew! |
|
|
![]()
Post
#3
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Jak extends bylo tak nadal jest Cytat 2) Jeśli chodzi o Tak, ale to dotyczy rzeczownikow a nie pytan. isLogged to pytanie samow sobie (IMG:style_emoticons/default/wink.gif)
tak samo z tutorialu wynikało jasno, że jeśli funkcja nam coś zwraca, powinniśmy ją nazywać od get - niby przyjęta praktyka. Rozumiem,że jednak nie za wszelką cenę, na pewno cenne info. Cytat 5) Jeden z pierwszych postów mówił o usunięciu HTML, więc zrobiłem to wszędzie - brak mi zarówno wiedzy jak i praktyki, stąd usunąłem wszędzie, ale znowu widzę, że i tutaj mogę stosować zasadę nie za wszelką cenę (IMG:style_emoticons/default/smile.gif) CHodzilo o uzycie plikow szablonow a nie wstawianie tego w echo jak masz teraz. Skoro nie uzywasz plikow szablonow poki co, to nie ma sensu calego duzego html pchac bez sensu w echo |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 23:49 |