Kuinka paljon IT-alalla todistetaan koodia bugittomaksi? Mietin vaan, kun näin matemaatikon opiskelevan paljon teoreettista tietojenkäsittelyä, niin hän todisti monia asioita. Mutta pystyykö ohjelmoinnissa todistamaan kuinka helposti, että vaikkapa koodissa ei ole muistivuotoja, se ei kaadu millään syötteellä jne.?
Paljonko koodia todistetaan oikeaksi?
todistuskiinnostus
8706
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 8
Vanhimmat
Todistetaan. Silleen, että jos asiakas laittaa rahat tillille niin koodi on oikeaa, ja jos ei niin, väärää.
aika turha todistaa... voi toimia persiilleen vaikka kuinka koodi olisi todistettu.. melkeimpä hukkaan heitettyä aikaa... tosin mahdollista
Yleensä ei koodia todisteta oikeaksi, ei ainakaan normi tietojärjestelmäprojektissa, vaan koodi testataan ja näin voidaan havannoida esim. muistivuodot. Jos on joku tieteellinen ja teoreettinen viritys ja on aikaa ja apurahaa niin sitten ehkä tallaista koodin oikeaksi todistamista voi harrastaa, mutta yleisestiottaen aivan liian aikaa vievää hommaa ja testaaminenkin jätetään turhan usein väliin.
Koodin todistaminen oikeaksi on mahdollista, mutta helvetin työlästä. Tehdään lähinnä superkriittisille mutta lyhyille rutiineille.
Periaatteessa tietojenkäsittelystä valmistunut kyllä kykenee tähän.
Itseläänikin on noussut viime aikoina kysymys esiin, paljonko koodaajan työstä on esim. säännöllisten lausekkeiden laatimista, kun syötteiden data validoidaan? Nykyään kun kaikki softa pyörii jossain pilvessä ja verkossa.
Niitä mitää validoida. Suoraan vaa ääsguuällään isketään formin datat kyytiin ja laitetaan etiäppäin.
Nyt kun otit asian puheeksi, niin ota selvää miten säännölliset lausekkeet pitää esittää suomi24:n roskapostien filtteröinnissä. Tähän en saanut vastausta muutama vuosi sitten. En ole nyt katsonut, onko sellainen enää mahdollista nykyisessä S24:n sähköpostiversiossa.
Kaipaisin konkreettisia esimerkkejä, jotka oikeasti toimivat ja on oikealla tavalla esitetty sähköpostin optioissa.
Itse en opinnoissani tosi kauan sitten muista kuulleeni edes koko termiä. En opiskellut montaakaan kurssia tietojenkäsittelytieteestä. Oppiaineen nimikin oli eri joskus 40 vuotta sitten.
Ongelma on lähinnä siinä, että todistamisessa pitää käsitteet määritellä huolellisesti samoin kuin oletukset ja väite. Ei ole esimerkiksi mitenkään selvää se, mikä on bugi. Esimerkiksi piin kymmenjärjestelmäesitys ei mahdu tietokoneen muistiin vaan joutuu käyttämään likiarvoa. Valtaosaa ongelmia voi vaan approksimoida. Onko se sitten bugi, jos pyydetään ratkaisemaan viidennen asteen yhtälö ja huomataan, että eipä olekaan juurten avulla lausuttavissa suljetussa muodossa?