Circulararizer: työkalu, jolla kulmakomponentit tehdään modulaarisemmiksi ja helpompi testata
Circulararizer on työkalu, joka auttaa tekemään Angular-komponenteistasi modulaarisempia ja helpommin testattavia muuntamalla ne ympyräriippuvuuksiksi.
Angularissa komponentit on usein kytketty tiiviisti toisiinsa, mikä tarkoittaa, että ne ovat riippuvaisia muista komponenteista tai palveluista, joita ei ole helppo tehdä. testattavissa. Tämä voi vaikeuttaa yksikkötestien kirjoittamista näille komponenteille, koska sinun täytyy pilkata riippuvuudet testattavan komponentin eristämiseksi.
Circularizer auttaa ratkaisemaan tämän ongelman muuntamalla ympyräriippuvuudet yksinkertaisemmiksi, modulaarisemmiksi riippuvuuksiksi. Se tekee tämän luomalla uuden moduulin jokaiselle komponentille ja lisäämällä sitten tarvittavat riippuvuudet kyseiseen moduuliin. Tämän avulla voit testata jokaista komponenttia erikseen ilman, että sinun tarvitsee huolehtia muiden komponenttien riippuvuuksista.
Tässä on esimerkki siitä, kuinka Circularizer voi auttaa:
Oletetaan, että sinulla on komponentti nimeltä "MyComponent", joka riippuu toisesta komponentista nimeltä "MyOtherComponent". Ilman Circularizeria koodisi voi näyttää tältä:
```
tuo { komponentti } kohteesta '@angular/core';
tuo { MyOtherComponent } kohteesta './my-other.component';
@Component({
valitsin: ' app-my',
malli: '
})
vientiluokka MyComponent {
konstruktori(yksityinen myOtherComponent: MyOtherComponent) {}
}
```
Tämä koodi on tiukasti kytketty, koska "MyComponent" riippuu "MyOtherComponentista". Jos haluat testata `MyComponentia`, sinun on pilkattava `MyOtherComponentin` riippuvuudet, jotka voivat olla vaikeita ja virhealttiita.
Circulararizerilla voit muuntaa tämän koodin seuraavaksi:
```
import { Component } from '@angular/core';
tuo { MyOtherComponentModule } from './my-other.module';
@Component({
valitsin: 'app-my',
malli: '
})
export class MyComponent {
constructor(private myOtherComponentModule: MyOtherComponentModule) {}
}
```
Nyt `MyComponent` riippuu moduulista nimeltä `MyOtherComponentModule`, joka vie `MyO-komponentin `-komponentti. Tämä helpottaa "MyComponentin" testaamista erikseen, koska voit yksinkertaisesti pilkata 'MyOtherComponentModule':n riippuvuudet.
Kaiken kaikkiaan Circularizer on hyödyllinen työkalu Angular-komponenttien tekemiseen modulaarisemmaksi ja helpompi testata. Se voi auttaa sinua katkaisemaan riippuvuussyklejä ja tekemään koodistasi helpommin ylläpidettävän ja skaalautuvan.



