Autor Wątek: Aplikacja typu Quizwanie  (Przeczytany 1071 razy)

Offline HunT

  • Użytkownik

# Styczeń 02, 2017, 14:35:35
Cześć, chcę napisać aplikację typu Quizwanie tylko w wersji webowej. Obecnie znam z technologii webowych HTML, CSS, JS, PHP + MySQL w stopniu podstawowym, oprócz tego Java, C#. Brak doświadczenia z frameworkami, prócz Bootstrapa. Główny problem to system gdzie dwóch graczy będzie parowanych(jakiś system pokoi?), a następnie będą odpowiadali na wylosowany zestaw pytań, po czym na koniec dostaną podsumowanie. Szukam godnych polecenia technologii, rozwiązań, którymi powinienem się zainteresować, by napisać to w miarę sprawnie.

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline strateg

  • Użytkownik

# Styczeń 02, 2017, 15:21:58
Ja bym na twoim miejscu zrobił następująco. Jako będziesz próbował użyć 10 frameworkow - nigdzie nie znajdziesz z braku doświadczenia. Wybierz jeden do technologii, która znasz - moim zdaniem, najlepiej do PHP, np. CodeIgniter lub Silex. Ja bym wolał w Pythonie to zrobić, ale jego nie znasz, więc to odpada dla tego projektu. Zrób to bez kombinowania, proste MVC, zapis stanu rozgrywki w bazie danych i będzie dobrze. Przy następnym projekcie dowiedz się na przykład czym jest REST i dodaj sobie jakiegoś frameworka do frontendu, np. Angular2.

Offline HunT

  • Użytkownik

# Styczeń 02, 2017, 17:15:02
Dziękuję za radę :) Jako mało doświadczony w webówce jeszcze pytanie, czy napisanie takiej apki bez użycia frameworku to dobry pomysł? Nie zależy mi obecnie na nauce żadnego, po prostu chcę wykonać ten projekt. Głównie chodzi mi, czy jestem w stanie wykonać dobieranie dwóch użytkowników w parę, która rywalizuje. Jakiś pomysł jak jestem to w stanie osiągnąć w możliwie prosty sposób?

Offline Budzik94

  • Użytkownik

# Styczeń 02, 2017, 17:34:39
Do takich rzeczy PHP myślę ze jest trudniejszy tym bardziej jeśli zaczynasz od 0 ja bym ci polecał web socket + node JS.

PHP - uruchamia program podczas zapytań a następnie proces programu umiera myśle ze troche to zajmie żebyś się przestawił na inny tryb myślenia niż w C#. Można go poprzerabiać i skonfigurować inaczej ale tak czy inaczej musisz zapoznać się z systemem sesji.

Node Js - działa podobnie do javy czy c# masz aplikacje która cały czas działa (po stronie serwera) i operuje na eventach. Dodatkowo uczysz się tylko JavaScript do pisania po stronie serwera jak i przeglądarki więc masz mniej do nauczenia się. Poprzerabiaj jakieś przykłady z web socket i na pewno znajdziesz rozwiązanie na pokoje ;)

Offline strateg

  • Użytkownik

# Styczeń 02, 2017, 17:41:59
Autor napisał, że zna PHP, dlatego zaproponowałem pozostanie przy tej technologii. Z kwestii JavaScriptu - osobiście go odradzam na początek, ma bardzo nieprzyjazny workflow, już nie mówiąc o kwestiach typu debugowanie. Tutaj możesz próbować TypeScript, jest dużo lepiej, ale bez szału.

Odnośnie sesji, kolega wyżej ma rację - jest to kłopotliwe, ale raczej nie powinno sprawić większych problemów.

Framework ma pomóc ci jeden ustalić strukturę aplikacji, aby była łatwa do zrozumienia i utrzymania. Kwestia algorytmu twojej gry zależy tylko od ciebie. Nie pozostaje nic innego, jak wykonac tabele zawierające dane o grach, turach, graczach, etc. W Pythonie, czy Nodzie lub .NET, część informacji trzymałbys po prostu w pamięci zamiast w bazie i to by trochę ułatwiło. Ale nie warto na poczatek, używaj tego, co już znasz.

Offline strateg

  • Użytkownik

# Styczeń 02, 2017, 17:44:15
Jeszcze tylko dodam: nie szukaj frameworka idealnego. Raz przy mniejszym projekcie szukałem frameworka przez dwa tygodnie zamiast wziąć pierwszy lepszy i zacząć pisać. W internetach znajdziesz bardzo dużo sprzecznych i niekonsystentnych opinii. Zlekceważ je i wybierz to, co najbardziej ci się podoba.

Offline HunT

  • Użytkownik

# Styczeń 02, 2017, 22:34:20
Ok więc jeszcze jedno pytanie. Jestem w stanie to napisać czysto w php z bazą danych(Xampp Apache, MySQL)? To znaczy chcę uzyskać rezultat w postaci:
1. Gracz wyszukuje innego gracza do gry.
2. Dobiera mu wolnego gracza.
3. Wybierają kategorie i losowane są pytania(z bazy).
4. Wyświetlenie rezultatu, koniec gry.
Potrzebuję pomysłu jak to zrealizować. Po kliknięciu zmiana w bazie statusu gracza na 'Szuka gry'? Tabela w bazie z grami gdzie zapisuję kto z kim gra? Można jakoś nasłuchiwać na serwerze by wiedział, że ktoś szuka gry itp. Dotąd robiłem tylko statyczne strony :)

Offline strateg

  • Użytkownik

# Styczeń 02, 2017, 23:16:48
Wszystko jesteś w stanie napisać w tym połączeniu, w końcu nawet assembler realizuje koncept maszyny Turinga ;) Inna kwestia, czy będzie łatwiej, czy trudniej. Z całą pewnością w bazie danych będziesz musiał przechowywać informacje na temat stanu rozgrywki, odpowiedzi graczy, etc. Najlepiej rozrysuj sobie wszystko dokładnie na kartce, jak powinna całość wyglądać, bo twoja rozpiska to na razie jedynie zarys czegoś znacznie większego. Powodzenia!