Programmi lähtekood. Kuidas kirjutada arvutiprogramme Mis on programmeerimiskeeles kood

Eesmärk

Lähtekoodi kasutatakse kas objektikoodi tootmiseks või selle käivitab tõlk. Objekti koodis ei tehta kunagi muudatusi, vaid lähtekoodi ja teisendatakse seejärel tagasi objektikoodiks.

Teine oluline lähtekoodi eesmärk on programmi kirjeldus. Programmi teksti põhjal saate rekonstrueerida selle käitumise loogika. Kommentaare kasutatakse lähtekoodi arusaadavamaks muutmiseks. Samuti on olemas tööriistad, mis võimaldavad automaatselt hankida lähtekoodi dokumentatsiooni – nn. dokumentatsiooni generaatorid.

Lisaks on lähtekoodil palju muid kasutusviise. Seda saab kasutada õppevahendina; Algajatele programmeerijatele võib olla kasulik uurida olemasolevat lähtekoodi, et õppida programmeerimistehnikaid ja metoodikat. Seda kasutatakse oma (ideaaljuhul) kokkuvõtliku ja ühemõttelisuse tõttu ka kogemustega programmeerijate vahelise suhtlusvahendina. Koodi jagamist arendajate vahel nimetatakse sageli programmeerijakogemuse parandamise teguriks.

Programmeerijad liigutavad sageli lähtekoodi ühest projektist teise, mida nimetatakse koodi taaskasutamiseks ( Tarkvara korduvkasutatavus).

Lähtekood on tarkvara teistele platvormidele teisaldamise protsessi kriitiline komponent. Ilma ühegi tarkvara lähtekoodita on teisaldamine kas liiga keeruline või täiesti võimatu.

Organisatsioon

Tarkvara mõne osa (mooduli, komponendi) lähtekood võib koosneda ühest või mitmest failist. Programmikood ei ole tingimata kirjutatud ainult ühes programmeerimiskeeles. Näiteks sisaldavad C-keeles kirjutatud programmid optimeerimise eesmärgil sageli komplekteerimiskeeles koodi lisasid. Samuti on võimalik, et mõned programmi komponendid või osad on kirjutatud erinevates keeltes ja seejärel koostatud üheks käivitatavaks mooduliks, kasutades tehnoloogiat, mida nimetatakse raamatukogu linkimiseks ( raamatukogu linkimine).

Keerulise tarkvara loomiseks on vaja kümneid või isegi sadu lähtekoodifaile. Sellistel juhtudel kasutatakse ehitamise lihtsustamiseks tavaliselt projektifaile, mis sisaldavad lähtekoodifailide vaheliste sõltuvuste kirjeldust ja kirjeldavad ehitusprotsessi. Need failid võivad sisaldada ka muid kompilaatori- ja disainikeskkonna parameetreid. Erinevate kujunduskeskkondade jaoks saab kasutada erinevaid projektifaile ning mõnes keskkonnas võivad need failid olla universaalsete tekstiredaktorite abil programmeerija poolt otseseks redigeerimiseks sobivas tekstivormingus, teistes keskkondades on toetatud erivormingud ning nende loomine ja muutmine. failid viiakse läbi spetsiaalsete tööriistade programmide abil. Projektifailid sisalduvad tavaliselt mõistes "lähtekood". Valdav enamus tänapäevaseid keelekeskkondi eeldab projektifailide kasutamist, olenemata projektis sisalduva muu lähtekoodi keerukusest. Sageli viitab lähtekood ka ressursifailidele, mis sisaldavad erinevaid andmeid, näiteks programmi koostamiseks vajalikke graafilisi pilte.

Lähtekoodiga töö hõlbustamiseks kasutatakse programmeerijate meeskonna koostööks koodiga versioonikontrollisüsteeme.

Kvaliteet

Erinevalt inimestest pole arvuti jaoks "hästi kirjutatud" või "halvasti kirjutatud" koodi. Kuid see, kuidas kood on kirjutatud, võib tarkvara hooldusprotsessi oluliselt mõjutada. Lähtekoodi kvaliteeti saab hinnata järgmiste parameetrite järgi:

  • koodi loetavus (sh koodi kommentaaride olemasolu või puudumine;
  • tugi, testimise, silumise ja vigade parandamise, muutmise ja teisaldamise lihtsus;
  • madal keerukus;
  • madal ressursikasutus - mälu, protsessor, kettaruum;
  • kompilaatori poolt väljastatud kommentaaride puudumine;
  • "prügi" puudumine - kasutamata muutujad, kättesaamatud koodiplokid, mittevajalikud aegunud kommentaarid jne.

Mittekäivitatav lähtekood

Vaata ka

  • Näide: Tere maailm programm

Lingid

Wikimedia sihtasutus. 2010. aasta.

Vaadake, mis on "programmi kood" teistes sõnaraamatutes:

    tarkvarapakett- 3.19 tarkvarapakett: arhiivifail, mis sisaldab programmikoodi kahend- või lähtekujul, samuti metaandmeid programmi, selle versiooni, sõltuvuste ja muu teabe kohta. Allikas: GOST R 54593 2011: Infotehnoloogiad. Tasuta......

    - (Inglise keeles: Netscape Plugin Application Programming Interface, NPAPI on platvormideülene pistikprogrammide arendusarhitektuur, mida toetavad paljud brauserid. Liides töötati välja Netscape Navigatori brauserite perekonna jaoks, alustades Netscapest... ... Wikipedia

    Arvutiteaduses on tarkvaraagent programm, mis astub vahendussuhtesse kasutaja või mõne muu programmiga. Sõna "agent" pärineb ladinakeelsest sõnast agere (to do) ja tähendab kokkulepet toimingute tegemiseks ... ... Wikipediast

    Raam on ebamäärase tähendusega mõiste. Tavaliselt kasutatakse programmeerimises, et tähistada "lihtsat kontseptuaalset struktuuri, mida kasutatakse keeruka probleemilahendusprobleemi lahendamiseks". Selle mõiste tähendus sõltub oluliselt selle kontekstist... ... Wikipedia

    See artikkel räägib käsusüsteemist üldiselt; Juhised leiate jaotisest Tehingukood. Masinakood (platvormile orienteeritud kood), masinakeel, konkreetse arvuti käskude süsteem (operatsioonikoodide komplekt), mida tõlgendatakse ... ... Wikipedia

    Ametlik terminoloogia

    Viirus (arvuti, tarkvara)- käivitatav programmikood või tõlgendatud käskude komplekt, millel on volitamata levitamise ja enesepaljundamise omadused. Arvutiviiruse loodud duplikaadid ei kattu alati originaaliga, kuid säilitavad... ... Normatiivse ja tehnilise dokumentatsiooni terminite sõnastik-teatmik

    - (ingliskeelne hallatav kood) on Microsofti poolt kasutusele võetud termin, mis tähistab virtuaalmasina "kontrolli all" käivitatava programmi koodi. NET Common Language Runtime. Sel juhul nimetatakse tavalist masinkoodi mittehallatavaks koodiks... ... Vikipeediaks

    Plaaster ehk plaaster (inglise patch /pætʃ/ patch) on automaatne, eraldi tarnitav tarkvaratööriist, mida kasutatakse tarkvara probleemide lahendamiseks või selle funktsionaalsuse muutmiseks, samuti paiga installimise protsessiks (... ... Wikipedia

    Püramiidi tüüpi veebirakenduste raamistik Arendaja ... Wikipedia

Raamatud

  • Objektorienteeritud disain: kontseptsioonid ja programmikood, Gast Holger. See raamat on loodud selleks, et aidata lugejal saada sügav arusaam objektide kontseptsioonist, vabastades nende tõelise potentsiaali, et kirjutada reaalses maailmas tõhusalt töötav kood. See arvestab...

Mõni lõbu pärast, mõni olemasolu tõestamiseks või hüpoteesi ümberlükkamiseks, mõni aju treenimiseks (reisides Kleini pudeli pinnal või neljamõõtmelises ruumis), kuid sajad inimesed on loonud "esoteerilisi" programmeerimiskeeli. Olen läbinud umbes 150 neist keelt ja ma ei ole enam kunagi endine.

“Argh!”, “Oof!”, “2-ill”, “Nhohnhehr”, “Noit o” mnain gelb”, “DZZZZ”, “Ypsilax”, “YABALL”, fuckfuck - need on loitsud, luule on ainult nimed ... all catom – koodinäited kõige pilkupüüdvamates programmeerimiskeeltes.

Küüliku auk on sügav.

INTERCAL (Turingi täielik)



Don Woods ja Jim Lyon

Üks vanimaid esoteerilisi programmeerimiskeeli. Loojate sõnul tähendab selle nimi "kompilaatori keelt ilma hääldatava akronüümita". Selle keele lõid 1972. aastal üliõpilased Don Woods ja James M. Lyon olemasolevate programmeerimiskeelte ja vaimse võimlemise paroodiana.

Tere, Maailm

Igale programmikäsule saab anda tõenäosuse, millega see programmi käivitamisel täidetakse. Lisaks on käsud, mis blokeerivad teatud tüüpi järgmiste käskude täitmise või muutujate muutmise.

Tere, Maailm!

// Stephen McGreali “Tere maailm”.
// Pange tähele, et selles lähtekoodis väljendatud seisukohad ei pruugi tingimata langeda kokku

Gr34t l33tN3$$?
M3h…
iT 41n"t s0 7RICY.

L33t sP33k on U8er keWl 4nD eA5y wehn u 7hink 1t tHr0uGh.
1f u w4nn4be UB3R-l33t u d3f1n1t3lY w4nt in 0n a b4d4sS h4xX0r1ng s1tE!!! ;p
w4r3Z c0ll3cT10n2 r 7eh l3Et3r!

Qu4k3 cL4nS r 7eh bE5t tH1ng 1n teh 3nTIr3 w0rlD!!!
g4m3s wh3r3 u g3t kuni 5h00t ppl r 70tAl1_y w1cK1d!!!
I"M teh fr4GM4ster AN I"L t0t41_1Ly WWIp phr34k1ng fL00r ***j3d1 5tYlE*** KOOS y0uR h1dEga!!! L0L0L0L!
t3lEphR4gG1nG l4m3rs wit my m8tes r34lLy k1kK$ A$$

L33t hAxX0r$ CrE4t3 u8er- k3wL 5tUff LIKE n34t pR0gR4mm1nG ihaldusGe$…
s0m3tIm3$ teh l4nGu4gES l00k just l1k3 rE41_ 0neS 7o makE ppl Th1nk th3y"r3 ju$t n0rMal lEE7 5pEEk but th3y"re 5ecRetLy c0dE!!!
n080DY unDer5tAnD$ l33t RÄÄGI 4p4rT fr0m j3d1!!!
50mE laps 0n A me$$4gEb04rD m1ghT 8E a r0xX0r1nG hAxX0r wH0 w4nT2 t0 bR34k 5tuFf, 0r mAyb3 ju5t sh0w 7eh way5 l33t ppl0ld !!! hE i5 teh u8ER!!!
1t m1ght 8E 5omE v1rus 0r a Pl4ySt4tI0n ch34t c0dE.
1t 3v3n MiTe jUs7 s4y “H3LL0 W0RLD!!!” u ju5t can"T gu3s5.
tH3r3"s n3v3r mistahes p0iNt l00KiNg sC3pT1c4l c0s th4t, be1_1Ev3 iT 0r n0t, 1s mis th1s 1s!!!

5uxX0r5!!!L0L0L0L0L!!!

ArnoldC

Terminaatori programmeerimiskeel.

Tere, Maailm!

Ärge muretsege liiga palju selle pärast, millist keelt peaksite õppima. Paljudel algajatel programmeerijatel on tarkvarakoodide kirjutamist õppima asudes keeruline keelt valida. Teie valitud tegelik keel ei ole teabe koostamise struktuuride ja loogika õppimisel oluline. Need oskused on palju olulisemad ja neid saab õppida mis tahes programmeerimiskeelega.

  • Keele valimisel keskenduge sellele, mis eesmärgil soovite programmikoode luua ja alles seejärel valige alguskeel. Näiteks kui soovite veebisaite arendada, peaksite alustama HTML-i õppimisest ja seejärel täiendama seda CSS-i, JavaScripti ja PHP-ga. Kui soovid luua arvutitele programme, siis hakka õppima C++ või mõnda muud põhilist programmeerimiskeelt.
  • Kui sinust saab professionaalne programmeerija, saad kiiresti aru, et sa ei kasuta kunagi oma töös algselt õpitud keelt. Selle asemel jätkate uute keelte õppimist dokumenteerimise ja katsetamise kaudu kogu aeg.

Otsige oma valitud keelele vastavaid tasuta veebiressursse. Internet on tasuta õpetuste, kursuste ja videote aardelaegas, mis on pühendatud teie valitud keelele. Saate ühe päevaga õppida peaaegu iga sissejuhatava keele põhitõed.

  • Siin on vaid mõned populaarsed saidid: Bento, CodeAcademy, Code.org, html.net, Khan Academy, Udacity, W3Schools ja paljud teised.
  • wikiHow'l on ka lai valik alustusõpetusi erinevate keelte jaoks.
  • YouTube'ist leiate õppevideoid peaaegu iga keele jaoks.
  • Stack Exchange on üks populaarsemaid foorumeid, kus professionaalsed programmeerijad vastavad kõikidele kasutajate küsimustele.
  • Laadige alla hea tekstiredaktor. Paljud programmeerimiskeeled võimaldavad programmide kirjutamiseks kasutada väliseid tekstiredaktoreid. Leidke tekstiredaktor, mis kuvab taande ja koodimärgistuse.

    • Populaarsete programmide hulka kuuluvad Notepad++ (Windows), TextWrangler (OS X) ja JEdit (mis tahes süsteem).
  • Laadige alla kõik vajalikud kompilaatorid. Mõned programmeerimiskeeled nõuavad teie kirjutatud lähtekoodi kuvamiseks kompilaatorit. Kompilaatorid tõlgivad lähtekoodi samaväärsesse madala taseme keeleprogrammi, mida seejärel arvuti töötleb. Paljud kompilaatorid on avatud lähtekoodiga ja tasuta tarkvara. Keeled, mis nõuavad kompilaatorite kasutamist, on järgmised:

    • BASIC
    • Fortran
    • Pascal
  • Alustage oma esimest projekti. Valige hea sissejuhatav projekt, mis võimaldab teil oma uusi oskusi proovida. Internetis on sellel teemal palju pakkumisi ja õpetusi; Näiteks võite alustada lihtsate veebisaitide loomisest HTML-iga, lihtsate andmebaaside ja funktsioonide loomisega PHP-ga või lihtsate programmide loomisega mis tahes keeles, mis nõuab kompilaatorite kasutamist.

    See on sissejuhatav osa, mis on pühendatud programmeerimise teoreetilistele alustele. Lugeja saab sellega end kurssi viia ja seejärel liikuda edasi programmeerimise praktikas õppimise juurde (lingid selle materjali alguses ja lõpus), pöörduda kohe praktiliste harjutuste poole või jätkata tarkvaraarenduse teooriaga tutvumist, valides küsimusi, mis teda huvitavad ülaltoodud loendist. Mis puutub sellesse artiklisse, siis siin on selle peamised jaotised:

    Nõuanne: Täiendavat materjali lugedes ärge püüdke meeles pidada kõiki kogu loos esinevaid termineid ja määratlusi. Kõik loksub aja jooksul paika, seda enam, et internetilehekülgede hüpertekst on hea, sest sealt leiab sealt lingid üksikasjalikule materjali esitlusele. Saate alati soovitud lehele naasta ja teha seda täpselt siis, kui tunnete teadmiste puudust. Kui mõnda jaotist on teile raske mõista, jätke see vahele. Kui te tulevikus selle juurde ei naase, tähendab see, et see osutus teie jaoks programmeerimise põhitõdede õppimise käigus tarbetuks.

    Mis on algoritm, programmeerimine ja pseudokood

    Alustuseks määratleme, mis on algoritm. Algoritm on tegevuste järjekord, mis tuleb konkreetse probleemi lahendamiseks teha. Algoritmi mõistet ei seostata ainult rakenduses käivitatavate programmidega, seega võib vastuseks küsimusele “kes peab täitma” olema ükskõik kes või mis iganes: inimene, robot, arvutitehnoloogia jne. Algoritm- see on juhis või juhend või lõpuks lihtsalt tegevusprogramm. Sel juhul on tegemist algoritmi kirjeldusega abil, mille konstruktsioone arvuti saab töödelda. Või on see lihtsalt arvutiprogrammi teksti kirjutamise protsess. Selles tõlgenduses on programmeerimine sünonüüm kodeerimisprotsess. Miks ma tõlgendustest rääkisin? Tõsiasi on see, et tarkvaraarendajad suhtuvad oma tegemistesse väga kirglikult ja võivad olla äärmiselt õnnetud, kui nende töö taandub vaid konkreetses programmeerimiskeeles kodeerimise protsessile. Ise ei ole ainult kodeerimine, vaid ka eelprojekteerimise etapp, aga ka järgnevad etapid ja hooldus. Programmeerimise all mõeldakse sageli arvutiprogrammi kui terviku loomise protsessi, sealhulgas algoritmi väljatöötamist ning kodeerimine on juba väljatöötatud algoritmi tõlkimine arusaadavasse keelde. kodeeriv objekt(tähendab arvutit või muud seadet, mis töötab kellegi poolt määratud programmi järgi).

    Niisiis, mis tahes probleemi algoritm, mida on kirjeldatud mis tahes algoritmiline keel(protseduuriline programmeerimiskeel), esimese lähendusena ilmub käskude jada või operaatorid. Operaator võib olla lihtne või liit. Lihtne operaator- see on aatom programmeerimiskeele üksus. Lihtoperaatorite hulka kuuluvad (muutuja nime ja tüübi määramine), (muutujale väärtuse määramine), sisend- ja väljundoperatsioonid jne.

    Muutuja (programmeerimises) on RAM-i nimega ala, mis on ette nähtud arvutiprogrammiga töödeldud andmete osa ajutiseks salvestamiseks. Muutujat iseloomustab selle hõivatud mälu suurus ja tüüp, mis määrab, kuidas arvuti seda mälu tõlgendab. Muutuja tüüp võib olla lihtne või keeruline (kompleksne). Lihtsad tüübid hõlmavad numbri-, märgi- ja loogilisi tüüpe. Komplekstüüp on lihtsate ja/või muude liittüüpide kogum.

    Liitlauseid kasutatakse teiste lausete järjestamiseks ja programmi täitmise voo juhtimiseks. Liitoperaatorid hõlmavad (operaatorite jada kordamine) jne. ega ole ise operaatorid. Need võivad olla muutuvate väärtuste argumendid või tsüklite ja tingimuslausete täitmise kriteeriumid. Osa matemaatilistest ja loogilistest avaldistest võib olla .

    Vahesummad: Lihtsaim arvutiprogramm on operaatorite jada (programmikäsud), millest osad muudavad muutujaid, teised aga juhivad programmi täitmist (tsüklid, tingimuslaused), mis põhinevad loogiliste ja aritmeetiliste avaldistega määratud tingimustel.

    Kui mõni neist tekitab küsimusi, siis soovitan järgida mõnda ülaltoodud linki ja tutvuda minu kirjeldatud protseduurilise programmeerimiskeele konstruktsioonidega.

    Varem esitati algoritmid, enne kui neid aastal juurutati, kujul . Tänapäeval, mulle tundub, kasutatakse klassikalisi vooskeemi üsna harva (koolides või erinevatel programmeerimise aluste kursustel). Samuti kasutatakse vooskeeme äriprotsesside kirjeldamiseks koos diagrammidega, kuid see kehtib juba makrodisaini etappide kohta. Oma praktikas kasutan väga harva mingeid vahepealseid algoritmide kirjeldamise vorme, kuid kui selline vajadus tekib, siis kasutan seda pseudokood. Pseudokood- See pseudo programmeerimiskeel, mille süntaksi jaoks pole standardeid. Pseudokoodis puuduvad üksikasjad, mis on algoritmi olemuse mõistmiseks ebaolulised, ilma milleta on võimatu programme päris programmeerimiskeeltes kirjutada. Ainus pseudokoodi eesmärk on vormistada algoritmi kirjeldus. Probleemid, mille lahendusi kirjeldatakse pseudokoodis, on väga kergesti ülekantavad igasse programmeerimiskeelde, kuna pseudokood on programmeerimiskeel selle ainsa erinevusega, et selle jaoks pole kompilaatorit ja selle ainus tõlk on inimese aju. Mis on koostaja ja tõlk, räägin teile selle materjali lõpus.

    Algoritmide näited pseudokoodis ja vooskeemide kujul

    Siin on näide ühe arvu teisega jagamise probleemi algoritmi kirjeldusest, mis tehakse pseudokoodis:

    A: TÄISARV TÜÜP SISEND(A) B: TÄISARV TÜÜP SISEND(B), KUI B=0 SIIS VÄLJUND(“VIGA: JAGAMINE 0-GA!”) VÄLJANDUS LÕPP, KUI C: PÄRIS TÜÜP C = A / B VÄLJUND(C)

    Integreeritud arenduskeskkond (IDE) – tarkvaratööriistade komplekt, mis pakub kasutajale tööriistu programmikoodi kirjutamiseks, selles süntaksivigade otsimiseks ja esiletõstmiseks ning rakenduse silumisrežiimis käivitamiseks. Integreeritud arenduskeskkond sisaldab kompilaatorit, linkijat, silurit, profileerijat ja muid komponente. Kõige populaarsem keskkond programmeerimiskeelte C#, VB.NET ja C++ tarkvaratoodete arendamiseks on ning hariduslikel eesmärkidel soovitan kasutada järgmist.

    Siluja – IDE tööriist, mis võimaldab käivitada programmi samm-sammult ja jälgida muutujate väärtusi igal etapil, mis on määratletud katkestuspunktide või katkestuspunktidega.

    Profileerija – IDE tööriist, mida kasutatakse programmikoodi optimeerimiseks selle täitmiskiiruse ja RAM-i mahu osas. Profileerija abil saate koguda statistikat selle kohta, millist osa koodist kõige sagedamini käivitatakse ning kui palju aega ja ressursse arvuti selle täitmiseks kulutab. Selle statistika põhjal saate tuvastada oma programmi kitsaskohad ja suunata oma jõupingutused nende optimeerimiseks.

    Programmeerimiskeel – formaalne keel, mida esindab käskude komplekt (operaatorid), mille abil kirjutatakse teatud süntaksit järgides arvutiprogramme. Teisisõnu, programmeerimiskeel on peamine tööriist konkreetse ülesande jaoks arvutis algoritmi rakendamiseks.

    Masinakood - käskude süsteem, mida arvutiprotsessor mõistab "ilma tõlketa".

    Kõrge ja madala taseme programmeerimiskeeled - programmeerimiskeelte klassifikatsioon vastavalt sellele, kui lihtne on neid kasutada inimeste poolt rakendusprobleemide lahendamiseks (kõrgetasemelised keeled) või vastavalt nende läheduse astmele masinkoodile (madalatasemelised keeled).

    Koostaja – rakendus, mis tegeleb kompileerimisprotsessiga – kõrgetasemelises programmeerimiskeeles kirjutatud programmi tõlkimisega (programmikoodi tõlkimisega) madala taseme keelde või masinkoodi. Madala taseme keelde kompileerimine tähendab enamasti programmi tõlkimist assemblerkeelde, et täpsustada üksikuid kitsaskohti enne selle lõplikku masinkoodi tõlkimist. Näha on näide programmist assembleris.

    Objekti moodul – fail, mis sisaldab kompilaatori töö tulemust ehk masinkoodi ennast koos linkidega teistele objektimoodulitele, kui programm on keeruline ja koosneb paljudest komponentidest.

    Linker – rakendus, mis siseneb pärast kompilaatorit käivitatava mooduli loomise protsessi. Kui kompileerimise tulemuseks on mitu objektimoodulit, siis linker leiab need kõik ja ehitab neist käivitatava mooduli.

    Käivitatav moodul – faili, mis sisaldab programmi täpselt sellisel kujul, mida konkreetse operatsioonisüsteemi alglaadur suudab töödelda. Enamasti on need failid laiendiga exe või dll.

    Laadija - operatsioonisüsteemi osa, mis loob programmi jaoks eraldi, laadib RAM-i (protsessi jaoks eraldatud RAM-i alasse) käivitatava faili andmed, initsialiseerib protsessori registrid ja käivitab protsessi. Sellest hetkest alates hakkab programm täitma.

    Tõlk – programm, mis käivitab programmikoodi samm-sammult, tõlgides masinkoodiks ainult selle osa, mis tuleb teatud ajahetkel täita. Tõlk töötleb programmi rida-realt. Kompilaatori ja tõlgi erinevus seisneb selles, et kompilaator tõlgib kogu programmi korraga masinkoodiks, luues ühe või mitu objektmoodulit ja tõlk, olles tõlkinud ainult vajaliku programmifragmendi, käivitab selle fragmendi koheselt. Seega on mõned tõlgid üheks koondatud kompilaator, linker ja laadija. Tõlgi näide on töötlemisüksus Interneti-brauseris.

    Lubage mul lõpetada teooria ja liikuda edasi praktika juurde. Alustan sellest.

    Iga programm või võrguteenus, näiteks Word, Microsoft Windows, WhatsApp või brauser, mida sadu miljoneid inimesi iga päev ühel või teisel viisil käivitavad, koosneb spetsiaalsetest juhistest. Või spetsiaalne programmikood, millest masin aru saab ja ütleb, mida teha või vastupidi, mitte teha. Või kuidas kasutaja tegevustele õigesti reageerida. Mis programmikood on, arutatakse selles artiklis.

    Kirjeldus

    Programmi programmikood on tekst, mis on kirjutatud spetsiaalses keeles, millest masin aru saab. Seda saab tõlgi abil otse tekstist täita või kompilaatori abil spetsiaalsesse vormi tõlkida.

    Programmi lähtekood võib koosneda mitmest failist. Lisaks peavad need kõik olema samas vormingus. Neis sisalduv programmitekst peab olema kirjutatud samas keeles. Tõsi, võib olla ka erandeid. Näiteks veebiarenduses võib lehefail sisaldada mitut erinevat programmeerimiskeelt ja -standardit. Sõltuvalt projekti keerukusest võivad esineda sellised keeled ja tehnoloogiad nagu PHP, HTML ja teised.

    Kokkupanduna võivad keerukad tarkvarasüsteemid vajada suurt hulka faile, mis võivad ulatuda sadadesse. Selliste suurte projektide kallal koostöö tegemiseks kasutavad programmeerijad sageli versioonikontrollisüsteeme. Need võimaldavad teil üheaegselt töötada mitme lähtekoodi koopiaga, mida saab teatud arendusetapis ühendada üheks ühiseks.

    Koodi kvaliteet

    Arvuti ei saa aru, kuidas selle kood on kirjutatud, kas halb või hea. Kui see on töökorras ja vigu ei sisalda, käivitab masin selle igal juhul. Halb kood võib tarkvara hooldustoiminguid keerulisemaks muuta. See kehtib eriti suurte projektide kohta. Tavaliselt iseloomustavad kvaliteetset koodi mitu parameetrit:

    • Koodi loetavus. Ühest pilgust sellele peaks piisama, et üldiselt mõista, mida koodijupp rakendab.
    • Selgete ja sisutihedate kommentaaride olemasolu. See parameeter mõjutab oluliselt programmikoodi loetavust, silumise lihtsust, tugitestimist ja tõrkeotsingut.
    • Madal raskusaste.
    • Koodi optimeerimine. See peaks olema korraldatud nii, et programm kasutaks võimalikult vähe süsteemiressursse, näiteks mälu, protsessori aega ja kõvakettaruumi.
    • Ei mingit prügi. See tähendab kasutamata muutujaid või koodiplokke, millesse programmi juhtimine kunagi ei sisene.

    Pahatahtlik kood

    Lisaks kasulikele programmidele on mõned, mis võivad süsteemi või isegi seadmeid kahjustada. Reeglina kirjutavad sellise koodi inimesed, kes on huvitatud käimasolevast protsessist saadavast kasust. Näiteks programmid, mis võivad kasutajate arvutitest isikuandmeid varastada. Need võivad olla maksekaardi numbrid, passiandmed või muu konfidentsiaalne teave. Teised võivad lihtsalt segada süsteemi tööd, põhjustades sellega tõrkeid ja takistades täielikku funktsionaalsust.

    Kauaaegne programmeerija Jeff Vogel jagas näpunäiteid, kuidas õpetada ambitsioonikatele arendajatele hea koodi reegleid.

    Eelkõige soovitab ta alati oma programmi koodi kommenteerida. Mis on kommentaar? See on selge ja lühike kirjeldus antud koodireas või funktsioonis toimuvast. Fakt on see, et teatud programmi arendamine võib venida kuu aega või isegi mõneks ajaks peatuda. Paari kuu pärast projekti kallal tööle naastes on isegi kogenud programmeerijal raske oma programmi mõista. Kuid üksikasjalikud kommentaarid suudavad taastada sündmuste ahela ja koodi käitumise.

    Lisaks soovitab ta kasutada programmis nii sageli kui võimalik globaalseid muutujaid. Seda seletatakse asjaoluga, et programmi koodi muutmisel peate muutuja väärtust kohandama ainult ühes kohas. Sel juhul saavad kõik väärtust kasutavad funktsioonid või protseduurid sellest kohe teada ja teevad uute andmetega toiminguid.

    Muutujate nimed ja vigade tuvastamine

    Muutujate õige nimetus aitab oluliselt vähendada ka programmi lähtekoodi uurimisele kuluvat aega, isegi kui kood on enda kirjutatud. See tähendab, et heaks koodiks loetakse teksti, kus muutujatel ja funktsioonidel on nimed, mis teevad selgeks, mida nad täpselt teevad või salvestavad. Sel juhul peaksite proovima mitte kasutada pikki muutujate nimesid.

    Väga oluline on pöörata suurt tähelepanu vigade õigeaegsele kõrvaldamisele. Mis on programmikood, mis töötab ideaalselt? See on kood, millel pole vigu. See tähendab, et tsükli hargnemine või muutuja muutus või isegi ootamatud kasutajatoimingud viivad alati oodatud tulemuseni. See saavutatakse valmistoote mitmekordse testimisega.

    Programmikoodi vigade tuvastamine või õigemini nende ennustamine on võimalik programmi kavandamise etapis. Tingimuste ja võimalike erandite erinevate kontrollide olemasolu koodis aitab programmi teatud kursil juhtida.

    Optimeerimisel on tohutu tähtsus töötava programmi kirjutamisel, mis kasutab säästlikult arvutiressursse ja väldib samal ajal vigu programmikoodi täitmisel. Mis on optimeeritud programm? See on toode, mis suudab täita kõiki deklareeritud funktsioone, käitudes samal ajal "vaikselt" ja säästlikult.

    Peaaegu alati on võimalik optimeerida programmi stabiilseks tööks vaid läbi mitu testimist erinevatel platvormidel ja erinevates tingimustes. Kui programm hakkab ettearvamatult käituma, peate välja selgitama, mis selle põhjustas, ja võimalusel protsessi kõrvaldama või pealtkuulama.

    Järeldus

    Mis on programmi kood? Lihtsamalt öeldes on see arvuti juhiste ja kontseptsioonide kogum. See sisaldab teksti, mille kompilaator või tõlk saab muuta masinloetavaks keeleks. See tähendab, et programmikood on sisuliselt vahendaja inimese ja arvuti vahel, mis lihtsustab nende suhet.