(Sa ei saa kasutada liidest, mis soovib tagastada inti, kui vajad double ntx) Veel erinditest: Erindite aheldamine e chaining : Liiga üldine viga täpsemaks Liiga täpne viga üldisemaks Mitme vea liitmine Kus püüda erindit? Kui püüda probleemi tekkekohale lähemal, siis on rohkem võimalusi probleemi lahendamiseks Kui püüda võimalikult kõrgel tasemel, siis ei pea allpool liiga palju koodi erinditele kulutama (tsentraliseeritud veahaldus) Säilita veaeelne olukord (nn failure atomicity) Kui erind tekib, püüa see luua nii, et objekti olek ei saaks muudetud - nii on võimalik objekti peale vea põhjuse kõrvaldamist edasi kasutada Finally : Finally blokk võimaldab lõputegevusi, mis tehakse igal juhul, sõltumata sellest, kas kood läbis try või kukkus catchi Üldiselt ei kasutata eriti Voog vs kollektsioon:
................................................................ 19 WHILE tsükkel.................................................................................................................... 19 Tingimuslause IF..................................................................................................................... 19 Funktsioonide defineerimine................................................................................................... 20 Veahaldus............................................................................................................................... 20 Klassid..................................................................................................................................... 20 Veebispetsiifilised elemendid....................................................................................................... 21 GET ja POST parameetrid.................................................
Git/GitHub (https://github.com) Mercurial TeamWare o Tsentraliseeritud vahendid SVN CVS Perforce Microsoft TFS o Bitbucket (https://bitbucket.org) – rohkem kui ainult versioonihaldus Projekti kodu: Lähtekood Wiki Reliisid Veahaldus o Harud (branch) – luuakse repositooriumi peaharust eraldi haru Projektid arendatakse harus ja mergetakse peaharu Harus arendatakse eksperimentaalset osa Ainuke pikad projektid harus, lühemad peaharus o Milleks peaks haudega ettevaatlikult ringi käima? Build/Deploy o Iga commiti järgi peab tekkima veendumus, et töötab ka kood, mis on koodihoidlast kättesaadav.
edastamiseks virtuaalses privaatvorgus (VPN). korral Selleks manustatakse - Kui võrgu koormus hakkab teatud piiri oma privaatne vorguprotokoll Interneti kaudu ületama edastatavatesse TCP/IP pakettidesse. Võrguhalduse ülesanded · Veahaldus · Konfiguratsiooni haldus · Kasutajate haldus · Jõudluse haldus · Turvalisuse haldus Eelduse võrguhalduseks · Võrgus liikuvat infot saab kasutada selle haldamiseks · Kasutatakse haldustäiendustega võrguseadmeid: - Haldusagendid, haldustarkvara · Võrguhaldusstandard SNMP (simple network management protocol) - SNMPv1, SNMPv2, SNMPv3 (RFC) Hallatavad objektid · Igale hallatavale objektile omistatakse
• TeamWare Tsentraliseeritud vahendid • SVN • CVS • Perforce • Microsoft TFS GIT: SVN: 101 GitHub (https://github.com) BitBucket (https://bitbucket.org) Rohkem kui ainultversioonihaldus • Projekti kodu: • Lähtekood • Wiki • Reliisid • Veahaldus • Harud (branch) luuakse repositooriumi peaharust eraldi haru • Projektid arendatakse harus ja mergetakse peaharru • Harus arendatakse eksperimentaalset osa • Ainult pikad projektid harus, lühemad peaharus • Milleks peaks harudega ettevaatlikult ringi käima? 175. Build/Deploy. Toodangusse minek. Iga commiti järgi peab tekkima veendumus, et töötab ka kood, mis on koodihoidlast kättesaadav
Kord ei leita sobivat andmefaili, teinekord ei saa teksti arvuks muundada ning mõnikord võib hoopis ette tulla jagamine nulliga. Vanemate programmeerimiskeelte juures oli tavaks iga käsu juures kontrollida, kas see õnnestus, ning siis püüda koheselt reageerida. Kui kohene parandamine on võimalik, on selline lähenemine hea. Kui aga peab parandamiseks palju asju ära muutma, siis kulub palju tööd. Selle lihtsustamiseks erindid ja veahaldus välja mõeldigi. Ploki lõpus oleva catchi sulgudesse kirjutatakse selline erinditüüp, millele ollakse valmis reageerima. Nagu eespool oli - FormatException tekkis sisendandmete vormingu vea tõttu ning sellele probleemile ka reageeriti. Võib tekkida aga olukord, kus sisendiks on küll kõik numbrid, aga kokku tuleb int-vormingu jaoks liiga suur arv. Sellisel juhul heidetakse hoopis OwerflowException. Eraldi catchidega püüdes saab nendele vigadele sobivalt reageerida.
Kord ei leita sobivat andmefaili, teinekord ei saa teksti arvuks muundada ning mõnikord võib hoopis ette tulla jagamine nulliga. Vanemate programmeerimiskeelte juures oli tavaks iga käsu juures kontrollida, kas see õnnestus, ning siis püüda koheselt reageerida. Kui kohene parandamine on võimalik, on selline lähenemine hea. Kui aga peab parandamiseks palju asju ära muutma, siis kulub palju tööd. Selle lihtsustamiseks erindid ja veahaldus välja mõeldigi. Ploki lõpus oleva catchi sulgudesse kirjutatakse selline erinditüüp, millele ollakse valmis reageerima. Nagu eespool oli - FormatException tekkis sisendandmete vormingu vea tõttu ning sellele probleemile ka reageeriti. Võib tekkida aga olukord, kus sisendiks on küll kõik numbrid, aga kokku tuleb int-vormingu jaoks liiga suur arv. Sellisel juhul heidetakse hoopis OwerflowException. Eraldi catchidega püüdes saab nendele vigadele sobivalt reageerida.
Kord ei leita sobivat andmefaili, teinekord ei saa teksti arvuks muundada ning mõnikord võib hoopis ette tulla jagamine nulliga. Vanemate programmeerimiskeelte juures oli tavaks iga käsu juures kontrollida, kas see õnnestus, ning siis püüda koheselt reageerida. Kui kohene parandamine on võimalik, on selline lähenemine hea. Kui aga peab parandamiseks palju asju ära muutma, siis kulub palju tööd. Selle lihtsustamiseks erindid ja veahaldus välja mõeldigi. Ploki lõpus oleva catchi sulgudesse kirjutatakse selline erinditüüp, millele ollakse valmis reageerima. Nagu eespool oli - FormatException tekkis sisendandmete vormingu vea tõttu ning sellele probleemile ka reageeriti. Võib tekkida aga olukord, kus sisendiks on küll kõik numbrid, aga kokku tuleb int-vormingu jaoks liiga suur arv. Sellisel juhul heidetakse hoopis OwerflowException. Eraldi catchidega püüdes saab nendele vigadele sobivalt reageerida.