Zoeken…


Factory VS Service eens en voor altijd

Per definitie:

Services zijn eigenlijk constructorfuncties. Ze gebruiken 'dit' trefwoord.

Fabrieken zijn eenvoudige functies en retourneren daarom een object.

Onder de motorkap:

Fabrieken roepen intern de providerfunctie aan.

Services roept intern de fabrieksfunctie op.

Debat:

Fabrieken kunnen code uitvoeren voordat we ons object letterlijk retourneren.

Maar tegelijkertijd kunnen Services ook worden geschreven om een object letterlijk te retourneren en code uit te voeren voordat deze wordt geretourneerd. Hoewel dat contraproductief is, omdat services zijn ontworpen om als constructeur te fungeren.

Constructorfuncties in JavaScript kunnen zelfs retourneren wat ze willen.

Dus welke is beter?

De constructorsyntaxis van services komt meer in de buurt van de klassensyntaxis van ES6. Dus migratie zal gemakkelijk zijn.

Samenvatting

Kortom, provider, fabriek en service zijn alle providers.

Een fabriek is een speciaal geval van een provider wanneer het enige dat u nodig hebt in uw provider een $ get () -functie is. Hiermee kunt u het schrijven met minder code.

Een service is een speciaal geval van een fabriek wanneer u een exemplaar van een nieuw object wilt retourneren, met hetzelfde voordeel van het schrijven van minder code.

voer hier de afbeeldingsbeschrijving in



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow