Kuinka tehdä monimutkaisista ongelmista helpompaa hajottamalla ja säveltämällä

Discover Functional JavaScript nimettiin BookAuthorityn parhaaksi uudeksi Functional Programming -kirjoiksi !

Luonnollinen tapa käsitellä monimutkaisuutta on hajottaa se pienempiin paloihin ja sitten laittaa kaikki takaisin yhteen.

Tämä on kaksivaiheinen prosessi:

  • hajottaa ongelma pienemmiksi osiksi
  • säveltää pienet osat ongelman ratkaisemiseksi

Hajoamme pienemmissä osissa, koska ne on helpompi ymmärtää ja toteuttaa. Pienemmät osat voidaan kehittää rinnakkain.

Hajoamisprosessi on vastuiden jakamista ja nimien antamista. Tämän avulla on helppo puhua ja järkeillä. Kun olemme tunnistaneet vastuun, voimme käyttää sitä uudelleen.

Sommittelu tarkoittaa pienten osien yhdistämistä ja niiden välisen suhteen luomista. Päätämme tavan, jolla nämä kappaleet kommunikoivat, järjestyksen, jossa ne suoritetaan, ja kuinka data kulkee niiden välillä.

Järjestelmää on vaikea ymmärtää, vaikka se olisi jaettu pienempiin osiin, jos näiden osien välillä on paljon suhteita. Järjestelmän ymmärtämisen helpottamiseksi meidän on minimoitava mahdollisten yhteyksien määrä sen osien välillä.

Kohteen hajoaminen

Esineet ovat enemmän kuin tila ja käyttäytyminen yhdessä. Esineet ovat asioita, joilla on vastuuta.

Hajoaa

Kohdassa Kuinka luoda kolmikerroksinen sovellus React-sovelluksella otan tehtäväluettelosovelluksen ja jaan vastuut seuraavien objektien kesken:

  • TodoDataService : vastuussa viestinnästä palvelimen Todo API: n kanssa
  • UserDataService : vastaa viestinnästä palvelimen User API: n kanssa.
  • TodoStore: verkkotunnuskauppa tehtävien hallintaan. Se on ainoa totuuden lähde tehtäviin liittyen.
  • UserStore : verkkotunnuskauppa käyttäjien hallintaa varten.
  • TodoListContainer : pääsäilykomponentti, joka näyttää tehtäväluettelon.

Kuten näette, hajotettaessa osoitan vastuita ja annan nimiä.

Säveltää

Seuraavaksi sävelen ne yhdessä toiminnossa. Tämä on paikka, jossa kaikki objektit luodaan ja riippuvuudet injektoidaan. Sitä kutsutaan koostumusjuureksi.

Discover Functional JavaScript nimettiin yhdeksiparhaat uudet BookAuthorityn toiminnalliset ohjelmointikirjat !

Katso lisätietoja toiminnallisten ohjelmointitekniikoiden soveltamisesta Reactissa katsomalla Functional React .

Opi toiminnallinen React projektipohjaisella tavalla React- ja Redux-toiminnallisella arkkitehtuurilla .

Seuraa Twitterissä