Kaj je obrambno programiranje?

Obrambno programiranje je ustvarjanje kode za računalniško programsko opremo, ki je zasnovana tako, da se izogne ​​težavam, preden se pojavijo, in naredi izdelek bolj stabilen. Osnovna ideja tega pristopa je ustvariti program, ki se lahko pravilno izvaja tudi skozi nepredvidene procese ali ko uporabniki nepričakovano vnesejo. Obrambno programiranje se pogosto zanaša na nekoliko paradoksalno kombinacijo odpravljanja nepotrebne kode, hkrati pa zagotavlja, da se ustvarijo zadostne količine za obravnavo vseh možnih uporabniških dejanj. Za ta proces je pomembno tudi obsežno testiranje, prav tako ustvarjanje programske opreme, ki jo je mogoče enostavno revidirati in preveriti.

V mnogih pogledih je koncept obrambnega programiranja podoben konceptu obrambne vožnje, saj se težave obravnavajo, preden se pojavijo. Ena pogosta metoda za poskus tega je ustvarjanje kode, ki naj bi obravnavala vse možne scenarije. Programerji običajno poskušajo določiti načine, na katere bodo uporabniki verjetno vnesli vnos ali poskušali uporabiti programsko opremo, ki je morda zunaj pričakovanih parametrov. Uporaba obrambnega programiranja temelji na temeljih same kode, ki je zasnovana tako, da je sposobna obravnavati čuden vnos, ne da bi se zrušil ali naletel na dogodek napake.

Navidezno v nasprotju s tem elementom obrambnega programiranja pa mora biti dobro napisana koda brez nepotrebnih vnosov. Več vrstic kode je del programa, več je možnosti za uvedbo napak. Prakse obrambnega programiranja običajno spodbujajo razvijalce, da odpravijo nepotrebno kodo in poenostavijo programe, kadar koli je to mogoče. Zato je treba najti ravnovesje med programiranjem, ki upošteva nepričakovane scenarije, in kodo, ki vsebuje preveč nepotrebne vsebine, ne da bi prinesla koristi.

Testiranje je eden najpomembnejših vidikov obrambnega programiranja. Kljub velikemu trudu, vloženemu v zagotavljanje popolne kode, razvijalci skoraj vedno zgrešijo napako ali ustvarijo kodo z nepričakovanimi rezultati. Temeljito testiranje s strani profesionalnih preizkuševalcev omogoča razvijalcu na stotine ur uporabe izdelka za iskanje napak, preden je programska oprema izdana.

Sama koda, ki je ustvarjena v obrambnem programiranju, je prav tako pomemben vidik tega procesa. Ne samo, da mora biti čim bolj racionaliziran, ampak mora biti tudi predstavljen na način, ki je jasen in jedrnat. Razvijalec pogosto uporablja revizije za pregled ustvarjene kode. To omogoča drugim programerjem, da vidijo delo, ki je bilo opravljeno, in berljiva koda je pomembna, da je to realen del razvoja.