Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Framework PHP a aplikacja SPA
strateg
post
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.
Go to the top of the page
+Quote Post
usb2.0
post
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
Go to the top of the page
+Quote Post
strateg
post
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.
Go to the top of the page
+Quote Post
usb2.0
post
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
Go to the top of the page
+Quote Post
aniolekx
post
Post #5





Grupa: Zarejestrowani
Postów: 340
Pomógł: 46
Dołączył: 31.07.2009
Skąd: A

Ostrzeżenie: (0%)
-----


http://davss.com/tech/php-rest-api-frameworks/
http://www.yiiframework.com/wiki/175/how-t...ate-a-rest-api/
Go to the top of the page
+Quote Post
Crozin
post
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ę).
Go to the top of the page
+Quote Post
strateg
post
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
Go to the top of the page
+Quote Post
Crozin
post
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".
Go to the top of the page
+Quote Post
strateg
post
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)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 20:27