Ar turėčiau naudoti tvirtinimus?

Ar turėčiau naudoti tvirtinimus?
Ar turėčiau naudoti tvirtinimus?
Anonim

Tvirtinimai turėtų būti naudojami norint patikrinti tai, kas niekada neturėtų įvykti, o išimtis turėtų būti naudojama norint patikrinti, kas gali atsitikti. Pavyzdžiui, funkcija gali dalytis iš 0, todėl reikėtų naudoti išimtį, tačiau norint patikrinti, ar kietasis diskas staiga dingsta, galima naudoti teiginį.

Ar tvirtinimas geras ar blogas?

Ne, nei goto, nei tvirtina yra blogis. Tačiau abu gali būti naudojami netinkamai. Teiginys skirtas sveiko proto patikrinimams. Dalykai, kurie turėtų sunaikinti programą, jei jie neteisingi.

Kodėl tvirtinimai yra blogi?

Tvirtinimai gali būti naudojami norint patikrinti vidinius diegimo invariantus, pvz., vidinę būseną prieš arba po tam tikro metodo vykdymo ir pan. Jei tvirtinimas nepavyksta, tai tikrai reiškia, kad programos logika sulaužyta ir jūs galite neatsigauti nuo to.

Ar tvirtinimai yra gera praktika?

Kalbos vadovas, kuriame pateikiami tvirtinimai, turi keletą gerų gairių, kurias iš esmės ką tik aprašiau. Taip, tai gera praktika. Pavasario atveju tai ypač svarbu, nes patikrinimai patvirtina nuosavybės parametrus ir tt, kurie paprastai gaunami iš XML laidų failų.

Kokiais atvejais teiginiai naudingi?

Darant prielaidą, kad kodas yra tinkamai išbandytas, tvirtinimai atlieka keletą naudingų dalykų: Aptinka subtilias klaidas, kurios kitu atveju galėtų likti neaptiktos . Aptikti klaidas anksčiau, kai jos įvyksta, nei jos būtų aptiktos kitu atveju. Padaryti pareiškimąapie kodo, kuris garantuotai bus teisingas, poveikį.

Rekomenduojamas: