DbM Framework - Autorska aplikacja frameworka opartego na wzorcu MVC |
DbM Framework - Autorska aplikacja frameworka opartego na wzorcu MVC |
20.12.2023, 21:40:29
Post
#1
|
|
Grupa: Zarejestrowani Postów: 544 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? -------------------- I welcome you on the Internet >>> Design by Malina
|
|
|
27.01.2024, 20:29:21
Post
#2
|
|
Grupa: Zarejestrowani Postów: 544 Pomógł: 6 Dołączył: 21.07.2008 Ostrzeżenie: (0%) |
Mam chwilę, więc usiadłem do projektu. Dependency injection z tego co widzę tak szybko nie zrobię, właściwie to trzeba przerobić całość w katalogu /library/dbmframework/
https://github.com/artimman/dbmframework a następnie kontrolery itd. a co gorsza nie mam pomysłu jak zrobić, aby było Git. 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ł. Z informacji ma być bez katalogu vendor!? Zrobiłem tak, że w pliku index.php dodałem funkcje autoloadingWithWithoutComposer($pathAutoload); i rozpoznaje, czy został uruchomiony Compser, jeśli tak to autoloading leci z Composera, jeśli nie to dopisałem własny autoloadnig, któet wczytuje wszytsko co potrzeba bez Composera. Takie rozwiązanie nie jest chyba wymyślaniem koła od nowa? Jeżeli w tym rozwiązaniu coś nie gra, no to pytanie jak wrzycić vendora do paczki instalacyjnej, mając na względzie, ze pewnie ten vendor będzie generowany innaczej w zależości o wersji PHP. Projekt ten ma charakter takiego "poligonu ćwiczebnego", nauczenia się tego co jest "pod maską", ale będzie super Git jeśli uda się wyciągnąć z niego coś więcej niż kod zaszufladkowany tym bardziej, że po prostu jest mi taki kod potrzebny, problem, aby napisać go bezbłędnie Tak daleko nie patrzyłem, ale ciekawy model biznesowy. Cytat Ja osobiście rozumiem dlaczego ktoś tworzy i stosuje własne FW. Pocieszające słowa, bo już myślałem, że porywam się na coś co każdemu wydaje się być bez sensu i głupie, że aż głupio gadać. Jeden poza oczywiście nosporem, który potrafi motywować (nie zniechęcać). Usiadłem do tego DI, ale już przy pierwszym uruchomieniu PHP-CS-Fixer pojawił się kłopot z szablonami, doszedłem do wniosku, ze projekt prosi się, aby dla templates utworzyć osobny katalog, więc tak też zrobiłem. Wydaje się, że teraz jest Git, chociaż zamiast MVC i katalogów w application/ Ciontroller, Model, View mam teraz Controller, Model i ../templates/ . Tu pojawia się kolejne pytanie, np. w IndexController miałem linie $this->view("blog/index.html.php", $data); gdzie template był w index.html.php - tak to jakoś wymyśliłem na początku, ale nie widziałem takich nazw plików i tak teraz sobie przypomniałem, czy nie lepiej aby zamiast index.html.php był plik index.phtml i tak należałoby przerobić wszystkie pliki w katalogu templates? Wracając do DI i więcej abstrakcji w projekcie. Plik np. IndexController jak mam tutaj zrobić wstrzykiwanie przy konstruktorze i metodach: public function __construct(DatabaseClass $database, TranslationClass $translation) public function index(TranslationClass $translation, etc...) Plik RoutClass: linia 41: $controllerNamespace = 'App\\Controller\\' . $this->controller; linia 42: $this->controller = new $controllerNamespace; oraz model, plik FrameworkClass: linia 76: return new $modelNamespace; Jakiś pomysł jak poskładać to co jest "pod maską" w katalogu /library/dbmframework/ ? Ponieważ z tego co widzę obecnie wyszedł dwusuw, a potrzebny jest czterosuw ekonomiczny 2.0 200KM Ten post edytował Malinaa 27.01.2024, 21:11:28 -------------------- I welcome you on the Internet >>> Design by Malina
|
|
|
Wersja Lo-Fi | Aktualny czas: 20.06.2024 - 00:46 |