Symfony2 sklep podział bundli

0

Witam, chciałbym w ramach poznania Symfony2 stworzyć projekt sklepu internetowego.
Jednak już na starcie nasuwa mi się kilka pytań sprzeczności, o które chciałbym zapytać użytkowników doświadczonych w temacie.

Na początek - co miałby zawierać sklep:

  • Kategorie
  • Koszyk
  • Możliwość zakupu dla zalogowanych oraz niezalogowanych użytkowników
  • Logowanie/rejestracja
  • Dajmy na to Newsletter
  • Wyszukiwarka produktów

Teraz jeżeli chodzi o strukturę mam pytania dotyczące:

1. Rozkład bundle

Googluje za tematem i widzę, że ile ludzi tyle opinii, a więc prosiłbym, aby ktoś doświadczony się wypowiedział w tym temacie.

Jedni proponują taki rozkład:

  • UserBundle (obsługa logowania, rejestracji użytkowników)
  • CategoryBundle (poszczególne kategorie dla produktów)
  • ProductBundle (produkty i ich obsługa)
  • BasketBundle (obsługa koszyka)
  • NewsletterBundle (newsletter)
  • OrderBundle (obsługa złożonych zamówień)

Inni zaś są zdania

Cały pakiet sklep zamknąłbym w pakiecie ShopBundle

Które z rozwiązań będzie najlepsze ?
Jak najlepiej ułożyć strukturę bundli, aby w późniejszym terminie (a i w trakcie programowania) nie siąść do tematu i nie stwierdzić ,,nic się tu kupy nie trzyma".

2. Zaprogramowanie koszyka

Jakie jest najczęściej stosowane rozwiązanie koszyka ?

  • Trzymanie ID dodanego produktu w ciasteczkach (wtedy użytkownik niezalogowany po wróceniu do sklepu ma pełny koszyk - całkiem fajne)
  • Trzymanie ID produktu w sesjach
  • A może zrobić tabelę dla potencjalnych nabywców i w koszyku przetrzymywać tylko unikalny ID (ciacho) dla danego użytkownika, a informację o koszyku zawrzeć właśnie w tabeli ? - Zastanawiam się tylko, że to zrobi straszny ,,bajzel" w bazie danych.
  • A może ktoś zna najbardziej optymalne rozwiązanie ?

3. Dynamiczna wymiana danych

Jeżeli chciałbym zrobić jakąś wymianę danych dynamicznie w jakiej postaci najbardziej optymalnie odsyłać zapytania:

  1. XML
  2. JSON
  3. ?

Chciałbym tutaj poinformować, że cały projekt chciałbym zrobić jak najbardziej optymalnie i głównie właśnie na to się nastawiam.

Z góry dziękuje za odpowiedzi.

0

Polecam zapoznanie się z gotowym rozwiązaniem, które znajdziesz po adresem http://sylius.org/. Jest to właśnie projekt sklepu internetowego napisanego w Symfony 2. Znajdziesz tam wiele dobrych praktyk programistycznych :) Kod sklepu znjadziesz na gitubie pod adresem: https://github.com/Sylius/Sylius.

[Adrian]

0

Punkt 1: http://symfony.com/doc/current/best_practices/index.html
Punkt 2: Jeżeli zadajesz takie pytanie, to oznacza, że warto zastanowić się nad gotowym rozwiązaniem :)
Punkt 3: Na moje oko JSON jest najbardziej popularny.

0
Krzywy Mleczarz napisał(a):

Witam, chciałbym w ramach poznania Symfony2 stworzyć projekt sklepu internetowego.

gaUa69 napisał(a):

Punkt 2: Jeżeli zadajesz takie pytanie, to oznacza, że warto zastanowić się nad gotowym rozwiązaniem :)

Jeżeli odpowiadasz w taki sposób tzn, że nie warto czytać Twojej odpowiedzi ? :)

Za link z najlepszymi praktykami dzięki, ale jest on bardzo mało rozwinięty.

@kchteam za link do projektu ze sklepem dzięki przeglądnę sobie jak rozwiązali taki projekt i zdołam sobie odpowiedzieć na pytania ;).

0
Krzywy Mleczarz napisał(a):

Za link z najlepszymi praktykami dzięki, ale jest on bardzo mało rozwinięty.

Nie jest mało rozwinięty. Dokładnie opisuje twój problem. Pytanie co chcesz zrobić.

Jeżeli chcesz zrobić pojedynczy sklep internetowy z podanymi funkcjonalnościami powinieneś zamknąć wszystko w jednym bundlu np: AppBundle.

Jeśli chcesz zrobić generyczny moduł który będziesz mógł sobie używać w innych projektach(np Newsletter), ba inni będą mogli go używać, to powinieneś zamknąć to w osobnym bundlu który powinien być odseparowany od konkretnej aplikacji.

Oczywiście druga opcja jest trudniejsza.

Jeżeli odpowiadasz w taki sposób tzn, że nie warto czytać Twojej odpowiedzi ? :)

Nie mnie to oceniać. Nie chcesz to nie musisz czytać ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1