www.wikidata.uk-ua.nina.az
Obro bka vi nyatkiv takozh opraco vuvannya obroblya nnya vinyatko vih situa cij 1 angl exception handling mehanizm mov programuvannya priznachenij dlya obrobki pomilok chasu vikonannya j inshih mozhlivih problem vinyatkiv yaki mozhut viniknuti pid chas vikonannya programi Zagalom pid chas viniknennya vinyatkovoyi situaciyi keruvannya peredayetsya deyakomu zazdalegid priznachenomu obrobnikovi opracovuvachu U deyakih movah obrobnik mozhe vidnoviti vikonannya programi z miscya viniknennya vinyatku Takim chinom obrobka pomilok peredayetsya na vishij riven i zabezpechuyetsya mozhlivist tak zvanogo nelokalnogo vihodu tobto peredachi keruvannya na deyaku viddalenu mozhlivo zazdalegid nevidomu tochku programi cherez dovilne chislo viklikiv funkcij Zmist 1 Perevagi ta nedoliki 2 Pidtrimka v riznih movah 3 Vinyatki sho pereviryayutsya 3 1 Perevagi ta nedoliki 4 Primitki 5 Div takozhPerevagi ta nedoliki RedaguvatiVinyatki nadayut osnovni perevagi pid chas rozrobki okremih komponentiv koli rozrobnik komponenta ne znaye yak potribno obrobiti vinyatok i zalishaye napisannya obrobnika vinyatku koristuvachevi jogo komponenta Vikoristannya vinyatkiv u cilyah kontrolyu pomilok pidvishuye prochitnist kodu oskilki dozvolyaye vidokremiti obrobku pomilok vid samogo algoritmu i polegshuye programuvannya i vikoristannya komponentiv inshih rozrobnikiv Osnovnij nedolik vinyatkiv u yihnij nevisokij shvidkosti U miscyah programi kritichnih za shvidkistyu ne varto porushuvati j obroblyati vinyatki U skladnih programah vinikayut veliki nagromadzhennya operatoriv try finally i try catch try except ale bez zastosuvannya mehanizmu obrobki vinyatkiv analogichna za funkcionalnistyu programa viglyadala b she bilshe zaharashenoyu Pidtrimka v riznih movah RedaguvatiBilshist suchasnih mov programuvannya takih yak ActionScript Ada C Common Lisp D Object Pascal Eiffel Java JavaScript Objective C Objective Caml Ruby PHP z versiyi 5 Python SML Glagol vsi movi platformi NET tosho mayut vbudovanu pidtrimku obrobki vinyatkiv U cih movah pid chas viniknennya vinyatkovoyi situaciyi tochnishe vinyatku pidtrimuvanogo movoyu vidbuvayetsya rozkruchuvannya steka viklikiv do pershogo obrobnika vinyatkiv vidpovidnogo tipu i keruvannya peredayetsya obrobnikovi Za vinyatkom neznachnih vidminnostej u sintaksisi isnuye lishe para variantiv obrobki vinyatkiv U najposhirenishomu z nih vinyatkova situaciya generuyetsya specialnim operatorom throw abo raise z ob yektom vinyatkom Vodnochas konstruyuvannya takogo ob yekta samo soboyu vikidu vinyatku ne sprichinyaye Oblast diyi obrobnikiv pochinayetsya specialnim klyuchovim slovom try abo prosto movnim markerom pochatku bloku napriklad begin i zakinchuyetsya pered opisom obrobnikiv catch except resque Obrobnikiv mozhe buti kilka odin za odnim i kozhen mozhe vkazuvati tip vinyatku yakij vin obroblyaye Deyaki movi takozh dopuskayut specialnij blok else yakij vikonuyetsya yaksho zhodnogo vinyatku ne zgeneruvano u vidpovidnij oblasti diyi Chastishe zustrichayetsya mozhlivist bezumovnogo vikonannya kodu finally ensure navit u razi yaksho vinyatok bulo vikinuto ale ne obrobleno Pomitnim vinyatkom ye S de takoyi konstrukciyi nemaye Zamist neyi vikoristovuyetsya avtomatichnij viklik destruktoriv ob yektiv Vodnochas isnuyut nestandartni rozshirennya S sho pidtrimuyut i funkcionalnist finally napriklad v MFC Zagalom obrobka vinyatkiv mozhe viglyadati takim chinom u deyakij abstraktnij movi try line console readLine if line length 0 throw new EmptyLineException Ryadok prochitanij z konsoli pustij console printLine Privit s line catch EmptyLineException exception console printLine Privit catch Exception exception console printLine Pomilka exception message else console printLine Programa vikonana bez vinyatkovih situacij finally console printLine Programa zavershena U deyakih movah mozhe buti lishe odin obrobnik yakij rozbirayetsya z riznimi tipami vinyatkiv samostijno U deyakih movah napriklad Si abo Perl nemaye vbudovanoyi obrobki vinyatkiv Vinyatki sho pereviryayutsya RedaguvatiSpochatku napriklad u C vinyatki ne buli obov yazkovimi dlya obrobki Yaksho yakijs vinyatok ne obroblyayetsya tobto yaksho dlya nogo nemaye obrobnika v steku vikliku abo obrobnik vikinuv vinyatok nanovo to vikonannya programi urivayetsya U novishih movah napriklad u Java razom z klasichnimi z yavilisya vinyatki sho pereviryayutsya Obrobka takih vinyatkiv pereviryayetsya kompilyatorom Metod u yakomu mozhe viniknuti vinyatok zokrema j u metodah sho viklikayutsya zobov yazanij abo obrobiti jogo abo ogolositi sho mozhe vikinuti kudi takij vinyatok Perevagi ta nedoliki Redaguvati Vinyatki sho pereviryayutsya znizhuyut kilkist situacij koli vinyatok yakij mig buti obroblenim viklikav kritichnu pomilku v programi oskilki za nayavnistyu obrobnikiv stezhit kompilyator Ce mozhe buti osoblivo korisno yaksho metod yakij ne mig vikidati vinyatok tipu X stav ce robiti kompilyator avtomatichno vidstezhit usi vipadki jogo vikoristannya i perevirit nayavnist vidpovidnogo obrobnika Prote u vinyatkiv sho pereviryayutsya ye j nedoliki Po pershe voni chasto primushuyut obroblyati te z chim programist u principi vporatisya ne mozhe napriklad pomilku vvedennya vivedennya u vebserveri Ce privodit do poyavi durnih obrobnikiv yaki ne roblyat nichogo abo vivodyat stek vikliku vinyatkiv i u rezultati tilki zasmichuyut kod Po druge ce robit nemozhlivim dodavannya novogo vinyatku sho pereviryayetsya u metodi opisanomu v biblioteci oskilki ce porushuye zvorotnu sumisnist Ce virno j dlya nebibliotechnih metodiv ale v comu razi problema mensh istotna U rezultati bagato bibliotek ogoloshuyut usi metodi yak taki sho vikidayut deyakij superklas vinyatkiv napriklad Exception U rezultati kompilyator primushuye pisati obrobniki vinyatkiv navit tam de voni zdavalosya b ne potribni Primitki Redaguvati O Kocherga Ye Mejnarovich Anglijsko ukrayinsko anglijskij slovnik naukovoyi movi fizika ta sporidneni nauki Chastina I anglijsko ukrayinska 2010r Div takozh RedaguvatiNeviznachena povedinka Bezpeka vinyatkovih situacij Cya stattya ne mistit posilan na dzherela Vi mozhete dopomogti polipshiti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Material bez dzherel mozhe buti piddano sumnivu ta vilucheno cherven 2011 nbsp Ce nezavershena stattya pro programuvannya Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi Otrimano z https uk wikipedia org w index php title Obrobka vinyatkiv amp oldid 40466464