Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 578 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%)
|
Witajcie,
miałem chwilę i usiadłem do autorskiego frameworka opartego na wzorcu MVC. Chciałbym go dopracować, utworzyć wersje stabilną. Kod frameworka jest dostępny pod adresem: https://github.com/artimman/dbmframework Zakończyłem pierwszy test aplikacji na serwerze zdalnym - powodzeniem. Wydaje się, że już jest całkiem Ok i ciekawe, czy ktoś się ze mną zgodzi? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 578 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%)
|
Spróbuj tak przepisać kod żeby zaimplementować jakiś gotowy system dependency injection viking piszę, że nie chcę żadnego gotowca, a na siłę podajesz gotowca za gotowcem. Potrzebuję mechanizm, który działa bez Composera, Composer ma być opcjonalny, można użyć, ale nie ma takiej konieczności, aby uruchomić aplikacje typu CMS, albo coś prostszego ma wystarczyć wypełnienie formularza instalacyjnego z danymi typu login, hasło, serwer, baza danych -> klikamy Go i gotowe, aplikacja śmiga (bez żadnego composer install). W przypadku części kodu napisanej pod Landingpage obyłoby się też bez wypełniania formularza instalacji. Co mi tu brakuje, aby poprawnie poukładać tych kilka plików w folderze library/dbmframework: 1. Wspomniane DI, które nie za bardzo wiem jak napisać dobrze w czystym kodzie (bez gotowca) tak, aby dało się używać w całej aplikacji. 2. Problem z kontrolerami i modelami, przydałoby się więcej abstrakcji i wstrzykiwanie, ale to jest powiązane z DI. Wspomniałeś o katalogu vendor, że nie może w nim być nawet autoloadingu, nie ma go być w ogóle - kod poprawiony vendor usunięty, aplikacja działa bez vendora i Composera i już jest tak jak chciałem, a jak zechcesz użyć Composera to też wystarczy, że wykonasz composer install i będzie chodzić z Composerem. Usunięty katalog vendor i var dodane do gitignore (program utworzy sobie var'a a composer vendor). config.php - nie jest błędem, więc na ten czas podarujmy sobie .env, oki. PSR 15 i Interfejsy - Królu naucz pisać porządne interfejsy, bo z interfejsami to mam zielono. Czy takie tam Psr\Http\Server\RequestHandlerInterface można zastosować bez Composera? Jak to, kiedy musi być bezbłędnie (IMG:style_emoticons/default/smile.gif) SlimFramework jest Ok, bliski temu co przyszło mi na myśl, ale Composer jest tu niezbędny podobnie jak w każdym innym FW co nie spełnia mini wymogu - Mechanizm (DbM Framework) ma działać na czystym kodzie bez pakietów, bibliotek, Composera itd. Poza tym SlimFramework pisany i poprawiny jest od kilkunastu lat, ma swoją społeczność itd. przy kodzie DbM FW posiedziałem w zeszłym roku przez jakiś miesiąc tworząc v1 i teraz drugie podejście i powstało v2 - no bez sensu byłoby zabierać się dzisiaj za kolejny framework i liczyć na oklaski, ale potrzebny jest wspomniany mechanizm na minimalistycznym, bezbłędnym kodzie. Cytat Malinaa musisz sobie postawić zasadnicze pytanie poco to tworzysz? Pan Bóg stworzył istotę dla hecy, z tyłu plecy, z przodu plecy. A jednak po niej przyszedł ten, który był zrodzony, a nie stworzony (IMG:style_emoticons/default/smile.gif) Chcesz pomóc? Napisz jak mam zakodować DI i inne drobiazgi, o których pisałem wyżej. Ten post edytował Malinaa 18.01.2024, 22:10:37 |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 408 Pomógł: 74 Dołączył: 15.07.2014 Ostrzeżenie: (0%)
|
(...) ma wystarczyć wypełnienie formularza instalacyjnego z danymi typu login, hasło, serwer, baza danych -> klikamy Go i gotowe, aplikacja śmiga (...) No to wrzuć vendora do paczki instalacyjnej od razu. Tak robi wiele "gotowych" systemów. A composera i tak wdróż, bo niepotrzebnie wymyślasz koło na nowo. Chyba, że chcesz się jedynie nauczyć tego co "pod maską", bo w przeciwnym razie ten autorski framework będzie tylko do szuflady. Już znam firmy co wrzucają klientów na własny fw (swoją drogą, ciekawy model biznesowy), bo tworzenie go zajęło tyle, że jeszcze się nie spłacił. |
|
|
|
Malinaa DbM Framework - Autorska aplikacja frameworka opartego na wzorcu MVC 20.12.2023, 21:40:29
nospor ok, to na plus:
+ znajomosc jako tako klas
+ uzywa... 21.12.2023, 09:42:45
Malinaa Dzięki bardzo za sprawdzenie kodu.
Narzędzia były... 21.12.2023, 11:36:53
nospor phpstan sprawdza innego rodzaju rzeczy wiec poleca... 21.12.2023, 11:52:58
Malinaa KodNa tym to wlasnie polega a ty tego nie rozumies... 21.12.2023, 12:51:47
nospor A ,teraz kumam do czego piles piszac te "rado... 21.12.2023, 12:59:22
netir Jak zobaczyłem w model raw query bez bindowania to... 26.12.2023, 16:02:56
Malinaa Cytat(nospor @ 21.12.2023, 09:42:45 )... 28.12.2023, 16:04:08
nospor ad1) Nie widzi klasy App\Config\Constant... 29.12.2023, 22:02:12
Malinaa 1. Jak sprawić, aby widział klasę App\Config... 8.01.2024, 09:20:34
nospor ad1 Klasy maja byc widoczne w autoloading i wtedy ... 8.01.2024, 10:11:34
Malinaa 1. Klasa przeniesiona i widoczna - całość bez błęd... 8.01.2024, 13:28:12
nospor Cytatale to powinno być po prostu super dobrze.
Z ... 8.01.2024, 14:27:04
Malinaa CytatZ jednej strony nalegasz na super dobrze, a z... 9.01.2024, 13:01:28
nospor NIe wiem o co ci chodzi z zmiennymi globalnymi w S... 9.01.2024, 14:16:56
Malinaa Z protected static $connect to takie zakombin... 9.01.2024, 20:07:04
nospor CytatZ protected static $connect to takie zak... 10.01.2024, 09:55:45
viking https://github.com/artimman/dbmframework/bl...conf... 10.01.2024, 12:22:37
Malinaa Cytat(nospor @ 10.01.2024, 09:55:45 )... 11.01.2024, 11:55:06 
viking Cytat(Malinaa @ 11.01.2024, 11:55:06 ... 11.01.2024, 12:39:55
nospor CytatPodejście pragmatyczne w programowaniu, brzmi... 11.01.2024, 12:03:10
Malinaa Cytat(nospor @ 11.01.2024, 12:03:10 )... 11.01.2024, 12:36:08
Malinaa Cytat(viking @ 11.01.2024, 12:39:55 )... 11.01.2024, 13:19:54
viking Przeczytać przeczytałem ale napisałem dlaczego to ... 11.01.2024, 13:33:16
Malinaa Rozumiem, mimo to chciałbym opracować mechanizm (w... 11.01.2024, 14:01:52
viking To na początek ja bym spróbował ogarnąć temat z kt... 11.01.2024, 14:32:23
Malinaa Wydawało mi się, że takie powszechne rozwiązanie j... 11.01.2024, 22:42:39
com Malinaa musisz sobie postawić zasadnicze pytanie p... 18.01.2024, 14:49:35
Tomplus Ja osobiście rozumiem dlaczego ktoś tworzy i stosu... 24.01.2024, 09:31:42
Malinaa Mam chwilę, więc usiadłem do projektu. Dependency ... 27.01.2024, 20:29:21
viking Kontroler to generalnie nie jest miejsce na wciska... 29.01.2024, 11:42:03
Malinaa Cytat(viking @ 29.01.2024, 11:42:03 )... 2.02.2024, 22:57:21
viking Musisz się w końcu zdecydować. Robisz to żeby się ... 3.02.2024, 15:34:29
Malinaa Cytat(viking @ 3.02.2024, 15:34:29 ) ... 3.02.2024, 21:54:10
viking Wstrzykiwanie zależności a menedżer (albo service ... 4.02.2024, 06:53:24
Malinaa Kilka konkretnych informacji się pojawiło. Dzięki.... 4.02.2024, 10:05:54
nospor skoro tak bardzo nie chcesz uzywac DI co ci zaprop... 4.02.2024, 20:07:12
Malinaa Cytat(nospor @ 4.02.2024, 20:07:12 ) ... 5.02.2024, 22:59:20
nospor Niby sluchasz co sie do ciebie mowi ale jednoczesn... 6.02.2024, 09:31:42
Malinaa Jeżeli słucham to jak mogę nie słuchać. Rozumiem, ... 6.02.2024, 10:37:49
nospor No masz dalej dodawac w dol te $database
... 6.02.2024, 11:14:14
Malinaa Dotąd już miałem
$router = new Router($d... 6.02.2024, 11:48:20
nospor zajebisty opis problemu: bo sie sypalo.. Jak masz ... 6.02.2024, 12:14:57
Malinaa Dobrze, że pokazałeś palcem, bo nie mogłem tego zn... 6.02.2024, 15:18:56
nospor Cytatale przy zaktualizowanym kodzie w index.php j... 6.02.2024, 15:26:07
Malinaa No, aż mi głupio, ale jeszcze nie mogę uwierzyć, ż... 6.02.2024, 16:22:25
nospor nie
aż dochodzę do modelu BlogModel
public functi... 6.02.2024, 16:29:49
Malinaa Po zmianie w __construct()
Message: Cannot use ... 6.02.2024, 16:57:05
nospor sorki, mialem na mysli kontrollery a nie model.
c... 6.02.2024, 17:22:18
Malinaa Aha, czyli dodać tylko linijkę:
parent::__construc... 6.02.2024, 18:50:18
nospor CytatOk, po zmianie został jeszcze routing, takie ... 7.02.2024, 10:47:34
com RE: DbM Framework - Autorska aplikacja frameworka opartego na wzorcu MVC 7.02.2024, 15:09:08
Malinaa Cytat(nospor @ 7.02.2024, 10:47:34 ) ... 8.02.2024, 11:44:53
nospor CytatInterfejsy. No to od czego zaczniemy? smile.g... 8.02.2024, 12:24:30
com Cytat(Malinaa @ 8.02.2024, 11:44:53 )... 9.02.2024, 09:22:50
Malinaa Cytat(com @ 9.02.2024, 09:22:50 ) Nie... 9.02.2024, 11:38:31
com Cytat(Malinaa @ 9.02.2024, 11:38:31 )... 9.02.2024, 12:19:11
Malinaa Cytat(nospor @ 8.02.2024, 12:24:30 ) ... 12.02.2024, 00:27:30 
Salvation Cytat(Malinaa @ 12.02.2024, 00:27:30 ... 12.02.2024, 09:24:26
Malinaa Cytat(Salvation @ 12.02.2024, 09:24:2... 12.02.2024, 20:27:50 
Salvation Cytat(Malinaa @ 12.02.2024, 20:27:50 ... 13.02.2024, 11:34:58 
Salvation Cytat(Malinaa @ 13.02.2024, 20:46:10 ... 14.02.2024, 15:21:12
Malinaa Cytat(Salvation @ 13.02.2024, 11:34:5... 13.02.2024, 20:46:10
viking Zaczynając od php 8.0 wszystkie parametry required... 14.02.2024, 09:24:11
Malinaa Cytat(viking @ 14.02.2024, 09:24:11 )... 17.02.2024, 00:06:00
nospor CytatJak to zrobić, aby było ok dla szablonów, w k... 17.02.2024, 11:21:45
Malinaa Tak przerabialiśmy i wiem jak mógłbym to zrobić dl... 17.02.2024, 20:09:45
nospor Jak ty sobei lubisz komplikowac prace
I co z tego ... 18.02.2024, 09:13:36
Malinaa Tak jakoś mam, że i tu gdzie można by przyjąć, że ... 18.02.2024, 20:21:15
nospor CytatJeśli w funkcji dam DatabaseInterface $d... 18.02.2024, 21:30:08
Malinaa Używam, choć przyszedł mi na myśl inny system szab... 19.02.2024, 20:34:23
nospor ad2) bez znaczenia
Na pozostale dwa juz nie wiem... 20.02.2024, 09:57:23
Malinaa 2. Ok i super.
1. Ach, dasz radę. Ten template je... 20.02.2024, 22:34:50
nospor CytatNie jest tak jak piszesz, albo coś nie kumam.... 21.02.2024, 09:18:19
Malinaa Tak chcę, aby było bezbłędnie. Czy będzie perfekcy... 24.02.2024, 23:15:43
nospor CytatSprawdzam jak działa templates/base.phtml i y... 25.02.2024, 20:33:19
Malinaa Gadanie, kumasz. Chociaż szczęście każdy rozumie n... 26.02.2024, 00:48:26
nospor Cytatwyskakuje błąd
Juz ci kiedys pisalem co masz ... 26.02.2024, 09:32:34
Malinaa Pamięć dobra, ale krótka o czym kiedyś pisałeś co ... 28.02.2024, 18:51:51
nospor CytatSorki, że dopytuje o takie szczegóły jak PHP_... 29.02.2024, 12:03:02
Malinaa Użycie PHP_EOL w TemplateEngine
Kodfile_put_conte... 29.02.2024, 21:47:31
nospor Cytat$this->translation = json_encode(... 1.03.2024, 09:40:08
Malinaa Chyba spanikowałem, na szybkości dodałem json_enco... 1.03.2024, 10:53:30
nospor CytatNapisałeś "dane trzymaj w obiekcie... 1.03.2024, 10:57:07
Malinaa Przy sprzątaniu i optymalizacji natrafiłem na kod ... 16.03.2024, 22:40:47
nospor metoda trans nadal za kazdym razem gdy jest wywoly... 19.03.2024, 10:37:19
Malinaa Metoda trans() w którym pliku/klasie?
W class Tra... 20.03.2024, 20:59:12
nospor Tak, wlasnie o cos takiego mi chodzilo
public fun... 21.03.2024, 09:06:40
Malinaa Konstruktor, o który chodziło to już był.
Obiekt ... 21.03.2024, 11:21:16
nospor CytatKonstruktor, o który chodziło to już był.
Mi ... 21.03.2024, 11:55:00
Malinaa Ok, rozumiem o czym mówisz, kilka tygodni temu zos... 21.03.2024, 13:39:53
nospor CytatJeśli tak to nie rozumiem, dlaczego aż od ind... 21.03.2024, 17:03:33
Malinaa CytatGeneralnei chodzi o to by nie tworzyc tego sa... 27.03.2024, 15:09:11 ![]() ![]() |
|
Aktualny czas: 27.11.2025 - 06:56 |