Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 114 Pomógł: 0 Dołączył: 3.08.2017 Ostrzeżenie: (0%)
|
Chciałbym prosić o ocenę kodu programowego (PHP + MySQL) mojej bardzo prostej aplikacji internetowej (sieć reklamowa). Całość napisana w dwóch wersjach (Symfony i własny szkielet aplikacji w PHP).
Aplikacja w Symfony + biblioteka do obsługi Api: https://github.com/webeeq/symfony.eeq https://github.com/webeeq/sieciq Własny szkielet tej samej aplikacji w PHP: https://github.com/webeeq/framework.eeq Obydwa projekty poddawałem już ocenie jakieś dwa lata temu, ale nie widzę nigdzie tamtego wątku, więc tworzę nowy. Pewnie został skasowany. Obecne wersje zawierają liczne poprawki. Prosiłbym zwrócić szczególną uwagę na zagadnienia: 1. Tworzenie klas encji tabel bazy danych w Symfony. Czy dobrze to robię? Chodzi mi głównie o brak deklaracji opcji "default". 2. Jakie wzorce projektowe poza Dependency Injection powinienem użyć w moich projektach. Jakie wzorce warto jeszcze znać? 3. Czy zapytania SQL (w cudzysłowie '...') mogą być w wielu liniach. Nie powoduje to błędu, ale czy to ładnie tak programować? 4. Czy z takim programowaniem, jak moje, jest sens w ogóle starć się o pracę? Bądź lepiej będzie, jeśli dam sobie z tym spokój? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 114 Pomógł: 0 Dołączył: 3.08.2017 Ostrzeżenie: (0%)
|
Cytat Mnie się jeszcze w oczy rzuciła sama struktura. Wszystko wrzucone do folderu / wliczając cssy i src. Ani to bezpieczne, ani uporządkowane. W src jest Config/cośtam. Dlaczego to zapisałeś w ten sposób zamiast stworzyć oddzielny folder poza strukturą src? W sumie faktycznie mógłbym umieścić kod css i js w oddzielnym katalogu np. public. Tylko że ostatnia linijka kodu w pliku .htaccess zabezpiecza przed dziurami. https://github.com/webeeq/framework.eeq/blo...aster/.htaccess Cytat Osobiście nie podoba mi się definiowane w każdej akcji layout itd (które oczywiście odnosi się do src). Wzorowałem się na framework'u Symfony. Tam jest, dla każdej akcji, renderowany szablon w oparciu o plik twig. Jak to mogę uprościć lub zrobić jeszcze lepiej? https://github.com/webeeq/symfony.eeq/blob/...mController.php https://github.com/webeeq/symfony.eeq/blob/...FormService.php Cytat Klasa Param to cala prawie do wyrzucenia. Jaki jest jej sens w ogole? Zabezpiecza przed atakami. Uniemożliwia wklejenie do zapytania SQL fragmentu niechcianego kodu. Bez metod klasy Param zmienne byłyby niezabezpieczone. Cytat Czemu konfig bazy danych znajduje sie w repo? A co jak inna osoba ma inne dane do bazy niz ty? W Symfony jest dobrze. Tu nie chciało mi się usuwać. Miał to być przykładowy skrypt. Ustawiłem default'owo user i hasło root. Poprawię przy najbliższej okazji. Cytat $code = ($_GET['code']) ? (int) $_GET['code'] : 404; po co ten pierwszy nawias? $code = $_GET['code'] ? (int) $_GET['code'] : 404; A jakbys przesiadl sie na php7 to juz w ogole bajka: $code = (int) ($_GET['code'] (IMG:style_emoticons/default/questionmark.gif) 404); Tego nawiasu używam, bo coś takiego widziałem w dokumentacji. Ten skrypt powstawał, gdy nie było jeszcze php7. Nie chciało mi się wszystkiego poprawiać. (IMG:style_emoticons/default/wink.gif) |
|
|
|
eerie [www] Prosta sieć reklamowa - Symfony i Framework w PHP 7.04.2020, 10:44:14
nospor $code = ($_GET['code']) ? (int) ... 7.04.2020, 11:01:06
viking Mnie się jeszcze w oczy rzuciła sama struktura. Ws... 7.04.2020, 11:02:38
nospor Klasa Param to cala prawie do wyrzucenia. Jaki jes... 7.04.2020, 11:13:32 
eerie Cytat(nospor @ 7.04.2020, 12:13:32 ) ... 7.04.2020, 15:22:17
viking Nawet z dokumentacji echo (true?'true':fal... 7.04.2020, 11:45:59
nospor Mimo wszystko podany przez ciebie przyklad z dokum... 7.04.2020, 11:48:52
viking CR są per firma. U mnie by nie przeszło bez nawias... 7.04.2020, 11:50:04
nospor Cytatcs fixer dodający spacje.Przynajmniej w jedny... 7.04.2020, 11:52:05
nospor Przestan tak bezgranicznie patrzec na dokumentacje... 7.04.2020, 15:50:08
nospor CytatZabezpiecza przed atakami. Uniemożliwia wklej... 7.04.2020, 16:25:50
viking Jedna strona jeden kontroler. W różnych fw różnie ... 7.04.2020, 16:50:14
eerie CytatTak. I model nie powinieniec dziedziczyc po d... 8.04.2020, 10:21:48
viking Na przykładzie tego https://github.com/webeeq/fram... 8.04.2020, 11:02:09
nospor CytatNasuwa mi się pytanie... Gdzie i jak powinien... 8.04.2020, 11:09:40
eerie Dzięki serdeczne za trafne uwagi. Wyciągnę z nich ... 8.04.2020, 13:24:10 ![]() ![]() |
|
Aktualny czas: 14.01.2026 - 14:38 |