Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [inny][ZF2][SF2]Multiapplication framework. Jaki?
combic
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 8.06.2006

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


Witam.
Szukam najlepszego rozwiązania do realizacji projektu. Generalnie chodzi o realizację nowej wersji istniejącej aplikacji.

Aktualna wersja jest śmietnikiem strukturalno-proceduralnym, który dostałem w spadku po ex-programistach i mam za zadanie zbudować nową wersję, obiektową.
Aplikacja to e-commerce - sklepy online, 30 bramek płatności, integracja z amazon, ebay, CMS itp.

Nowa powinna z założenia być tak elastyczna jak bieżące rozwiązanie, które po krótce wygląda tak:
- centralny "framework" - wszelkie możliwe do wykorzystania moduły i funkcjonalności systemu,
- około 500 aplikacji klientów (sklepów), które posiadają własne configi, bazy danych, layouty, FTP, lokalne dokumenty, pliki, zdjęcia etc.
- każda z aplikacji includuje wszystko co jest niezbędne i określone w configu z centralnego frameworka,
- każda z aplikacji może nadpisać lokalnie dowolną z funkcji/klas/modułów poprzez stworzenie lokalnej kopii plików i modyfikowanie ich do woli lub dodawanie nowych funkcjonalności.

Tak więc zaletą istniejącego systemu jest duża elastyczność, możliwość dostosowania wszystkiego do specjalnych wymagań klienta. Niestety setki wad i problemy z rozbudową, tysiące bugów, itp skłoniły firmę do inwestycji w nową wersję OOP.

Moje pytanie do ciebie, czy w takim projekcie jest sens bazować na jednym z istniejących frameworków (ZF, SF albo inny) a jeśli tak, to który z nich twoim zdaniem jest na tyle elastyczny, że da się go wykorzystać w podobnej strukturze?
Na tyle na ile znam i korzystałem z frameworków PHP, to zawsze była to pojedyncza aplikacja - wszystkie pliki projektu lokalnie.
Tutaj trzeba zrobić pliki wszystkich modułów i funkcjonalności dostępne w centralnym frameworku i kilkaset aplikacji z opcją nadpisania wybranych klas lub całych modułów lokalnie.
Naprostsze wydaje mi się zrealizowanie własnego frameworka, ale może się mylę i szybciej będzie skorzytać z gotowych rozwiązań poprzez jakieś proste fixy/konfiguracje. Może spotkałeś się online z propozycją struktury dla podobnych projektów lub wprost - z przykładową realizacją/podobnym rozwiązaniem?

Dzięki za wszelką pomoc.
Pozdrawiam!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Bez problemu osiągniesz to w Kohanie bez żadnych dodatkowych kombinacji dzięki modułom i kaskadowemu wczytywaniu plików.

- centralny "framework" - wszelkie możliwe do wykorzystania moduły i funkcjonalności systemu,
Framework siedzi w katalogu system. Tworzysz dowolne moduły (np. galeria, newsy) które są wspólne dla wszystkich aplikacji, a w każdej z nich możesz nadpisać dowolną klasę/widok/konfigurację.
- około 500 aplikacji klientów (sklepów), które posiadają własne configi, bazy danych, layouty, FTP, lokalne dokumenty, pliki, zdjęcia etc.
Każda aplikacja miałaby osobny folder z plikami, które "nadpisywałyby"/uzupełniały te domyślne.
- każda z aplikacji includuje wszystko co jest niezbędne i określone w configu z centralnego frameworka,
Do każdej aplikacji możesz dołączyć dowolne moduły.
- każda z aplikacji może nadpisać lokalnie dowolną z funkcji/klas/modułów poprzez stworzenie lokalnej kopii plików i modyfikowanie ich do woli lub dodawanie nowych funkcjonalności.
W Kohanie każda klasa ma (nie jest to wymagane) 2 wersje: bazową z całą zawartością metod (class Kohana_Klasa) oraz rozszerzającą pustą (class Klasa extends Kohana_Klasa). Klasę bazową możesz nadpisać w dowolnym module czy w katalogu aplikacji bez jakiejkolwiek ingerencji w klasę bazową.

Najciekawsze jest kaskadowe wczytywanie plików. Każdy plik (klasa, widok, konfiguracja itd.) jest szukana w kolejności: katalog aplikacji, katalogi modułów, katalog systemowy. Dzięki temu osiągniesz wszystkie postawione przez Ciebie wymagania. Struktura katalogów wyglądałaby więc mniej-więcej tak:
- system (pliki Kohany)
- modules/galeria
- modules/newsy
- application/sklep1
- application/sklep2
Go to the top of the page
+Quote Post

Posty w temacie


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: 16.10.2025 - 04:04