![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 1 Dołączył: 23.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Potrafię biegle programować w wielu językach i nauka kolejnych funkcji nie sprawia mi problemów. Ostatnio mam jednak dość sporą zagwozdkę: czy opłaca się stosować frameworki PHP do tworzenia aplikacji SPA (single-page application)? Cała struktura MVC jest ukryta we frameworku JS (korzystam z AngularJS). Jedyne, co potrzebuję od serwera to proste reakcje na bazie danych: pobierz / dodaj / usuń / zaktualizuj. To są praktycznie jedyne funkcjonalności, jakie serwer ma obsługiwać (oprócz oczywiście obsługi sesji / rejestracji, etc.). Rozważałem korzystanie z frameworków, jednak w przypadku najlepszych (Yii, Laravel, etc.) położony jest nacisk na MVC - którego zwyczajnie nie potrzebuję, bo jest realizowany gdzie indziej. Mówiąc szczerze, najchętniej zrobiłbym proste skrypty w PHP (IMG:style_emoticons/default/wink.gif) Co o tym myślicie? Pozdrawiam. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 341 Pomógł: 25 Dołączył: 28.09.2008 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
nie wiem co tam dokładnie potrzebujesz, ale we frameworku łatwo mógłbyś sobie REST zrobić i potem tylko requesty ze SPA wysylac
Ten post edytował usb2.0 14.08.2014, 15:15:02 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 1 Dołączył: 23.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Aplikacja, którą robię jest generalnie bardzo prosta. Ogólna ilość zadań do obsłużenia będzie wynosiła około 25. Licząc, że każde zadanie to jeden plik, mamy około 30 plików po 25-100 linijek kodu. I w tym momencie zastanawiam się, czy jest sens korzystać z wielkich frameworków, skoro jedyne, co chcę robić to wykonywać operacje na bazie danych. Z modelu MVC pozostaje na sewerze jedynie M (model). Natomiast VC (view, controller) są implementowane u klienta.
I dlatego mam poważne wątpliwości do popularnych fw, czy ich stosowanie przypadkiem nie pogorszy czytelności rozwiązania. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 341 Pomógł: 25 Dołączył: 28.09.2008 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
no kontrolera bym nie pomijal, jako ze mozesz sobie w nim wymielic dane z bazy jak tylko chcesz i routing do tego
no i generalnei wcale nie musisz zaprzegac Symfony czy Zenda tylko np Silex'a http://silex.sensiolabs.org/ Ten post edytował usb2.0 14.08.2014, 15:26:41 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 340 Pomógł: 46 Dołączył: 31.07.2009 Skąd: A Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Wygląda na to, że na dobrą sprawę potrzebujesz od strony serwerowej czegoś w rodzaju webserwisu dla aplikacji.
1. Jak najbardziej możesz skorzystać z dowolnego FW PHP, z tymi "rozbudowanymi" na czele. 2. Albo robisz na prawdę trywialny projekt, albo nieprawidłowo oceniasz zadania, jakie będzie musiał realizować serwer. Przecież poza prostym dostępem do danych, przyjdzie Ci zmagać się z uwierzytelnianiem i autoryzacją użytkowników na różnych poziomach, sprawdzaniem poprawności danych, przygotowywaniem różnego rodzaju/wariantów odpowiedzi/danych zwracanych użytkownikowi, wykonywaniem tego wszystkiego czego po stronie użytkownika się nie da (od wysyłki maili, przez odpytywanie zew. usług, po komunikację z innymi użytkownikami Twojego systemu). 3. MVC to tylko wzorzec architektoniczny, i to że VC jest realizowane przez JS, a M przez serwer, nie oznacza, że ten ostatni sam w sobie nie może być znowu podzielony na MVC (czy dowolną inną architekturę). |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 1 Dołączył: 23.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Cóż, faktycznie, projekt jest trywialny. W ciągu mojego doświadczenia programistycznego jest najmniejszym z jakim miałem do czynienia, ale najbardziej przemyślanym biznesowo. On po prostu z założenia musi być prosty (IMG:style_emoticons/default/wink.gif) Maili nie zamierzam wysyłać, autoryzacja ma przebiegać jako logowanie via Facebook (ewentualnie dodatkowe social media), do tego jakieś metody płatności. 90% procent skryptów miałoby następującą postać:
- sprawdzenie danych przychodzących (poprawne typy, usunięcie niebezpiecznych znaków, etc.), - kontrola integralności danych (czy np. chcę usunąć informację należącą do użytkownika), - wykonanie akcji, - przerobienie odpowiedzi (proste zlepienie tabelek), - wysłanie informacji JSON. Sam wzorzec MVC wydaje mi się bardzo udany i faktycznie sprawdza się np. w AlgularJS. Wszystko mi ładnie dzieli, etc. W każdym razie nie jestem wrogo do niego nastawiony (IMG:style_emoticons/default/wink.gif) OOP też nie jest mi obce, wychowany jestem na C#. Dziękuję również za podane linki, widziałem je, z częścią fw się zapoznałem. Spróbuję jeszcze raz przemyśleć sprawę, jak podzielić owe skrypty na rozsądne części i czy jest to opłacalne w moim przypadku. A jeśli mielibyście polecać fw pod moje potrzeby - czyli dający dużą swobodę z dodatkowymi narzędziami. Osobiście rozważałbym: Phalcona, Yii lub Laravela. Kohana ma dla mnie za słabą dokumentację, a CI to już staruszek. Potrzebuję dużej wydajności i skalowalności, więc np. CakePHP odpada (z jakiegoś powodu strasznie wolno działa - wyłączałem tryb debug ofc). A co z micro-fw, np. Slim? Pozdrawiam |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Absolutnie każdy FW się tutaj nada. Dostaniesz pewnie kilka bezwartościowych postów w stylu "XXX będzie tutaj idealny", albo "tylko YYY". Jeżeli znasz już jakiś - skorzystaj z niego, jeżeli chcesz poznać nowy - możesz zapytać w http://forum.php.pl/index.php?showtopic=184990&st=640 (nie warto robić kolejnego bezsensownego wątku dot. wyboru FW).
IMO zdecydowanie powinieneś skorzystać z jakiś (częściowo) gotowych rozwiązań - szkoda tracić czas na pierdoły typu "podtrzymanie sesji" albo "routing". Absolutnie każdy FW się tutaj nada. Dostaniesz pewnie kilka bezwartościowych postów w stylu "XXX będzie tutaj idealny", albo "tylko YYY". Jeżeli znasz już jakiś - skorzystaj z niego, jeżeli chcesz poznać nowy - możesz zapytać w http://forum.php.pl/index.php?showtopic=184990&st=640 (nie warto robić kolejnego bezsensownego wątku dot. wyboru FW). IMO zdecydowanie powinieneś skorzystać z jakiś (częściowo) gotowych rozwiązań - szkoda tracić czas na pierdoły typu "podtrzymanie sesji" albo "routing". |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 1 Dołączył: 23.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Cóż, nie ukrywam, że właśnie te wojny mnie trochę zniechęciły do fw. Jeszcze raz poszukam czegoś ciekawego. Dziękuję za odpowiedzi (IMG:style_emoticons/default/wink.gif)
Krążyłem między dostępnymi frameworkami wiele razy, ale ostateczny wybór padł na Silex. Wydaje się najodpowiedniejszy dla mojego stylu myślenia, duże wsparcie, a jednocześnie umożliwia mi przeniesienie się do Symfony2, gdy będę potrzebował czegoś "większego". Jeszcze raz chciałem wszystkim podziękować za pomoc. Temat do zamknięcia. Pozdrawiam (IMG:style_emoticons/default/wink.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 20:27 |