Middle+
Koji ste pristup koristili prilikom građenja arhitekture vašeg projekta?
sobes.tech АИ
Одговор од АИ
Koristio sam pristup zasnovan na komponentama, prateći principe atomski dizajn. Podelio sam projekat na male, ponovo upotrebljive komponente, grupišući ih po nivoima apstrakcije: atomi, molekuli, organizmi, šabloni i stranice.
- Atomi: Osnovni elementi (dugmad, ulazni elementi, ikone).
- Molekuli: Kombinacije atoma (ulazno polje sa dugmetom).
- Organizmi: Grupe molekula i/ili atoma (zaglavlje, podnožje).
- Šabloni: Kompozicije organizama i molekula koje definišu strukturu stranice (raspored stranice).
- Stranice: Konkretni primeri šablona sa pravim podacima.
Ovo je omogućilo da se postigne:
- Visok nivo ponovne upotrebljivosti koda
- Lako održavanje i skaliranje
- Lako testiranje komponenti
- Bolja saradnja između dizajnera i programera
Koristio sam React (ili Vue.js, u zavisnosti od frameworka koji se koristi u projektu), upravljajući stanjem putem Redux (ili Vuex).
Struktura direktorijuma je organizovana po komponentama, a ne po tipu fajla, što poboljšava dostupnost i koheziju koda.
// Primer strukture direktorijuma
src/
components/
atoms/
Button/
Button.js
Button.module.css
molekuli/
InputWithButton/
InputWithButton.js
InputWithButton.module.css
organizmi/
Header/
Header.js
Header.module.css
containers/ // Za komponente povezane sa logikom i podacima
UserList/
UserList.js
UserList.module.css
stranice/
HomePage/
HomePage.js
HomePage.module.css
redux/ // Ili Vuex
actions/
reducers/
store.js
utils/ // Pomoćne funkcije
api/ // Rad sa API-jem