Skip to main content
Query

3.4: Uumbaji wa Programu

  • Page ID
    164773
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)\(\newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    Tulijadili aina tofauti za programu na sasa tunaweza kuuliza: Je! Programu imeundwaje? Ikiwa programu ni seti ya maelekezo ambayo inaelezea vifaa vya kufanya nini, maelekezo haya yameandikwa vipi? Ikiwa kompyuta inasoma kila kitu kama moja na sifuri, tunapaswa kujifunza jinsi ya kuandika programu kwa njia hiyo? Kwa shukrani, aina nyingine ya programu imeandikwa, hasa kwa watengenezaji wa programu kuandika programu ya mfumo na programu - inayoitwa lugha za programu. Watu ambao wanaweza programu wanaitwa programu za kompyuta au watengenezaji wa programu.

    Sawa na lugha ya binadamu, lugha ya programu ina maneno muhimu, maoni, alama, na sheria za kisarufi ili kujenga kauli kama maelekezo halali yanayoeleweka na kompyuta ili kutekeleza kazi fulani. Kutumia lugha hii, programu anaandika programu (inayoitwa msimbo wa chanzo). Programu nyingine kisha inachukua msimbo wa chanzo ili kubadilisha taarifa za programu kwa fomu inayoweza kusoma mashine, hizo, na zero zinazohitajika kutekeleza CPU. Mchakato huu wa uongofu mara nyingi hujulikana kama kukusanya, na programu inaitwa compiler. Mara nyingi, programu hufanyika ndani ya mazingira ya programu; unapotununua nakala ya Visual Studio kutoka Microsoft; Inatoa watengenezaji na mhariri kuandika msimbo wa chanzo, compiler, na kusaidia kwa lugha nyingi za programu za Microsoft. Mifano ya lugha maalumu za programu leo ni pamoja na Java, PHP, na C ya ladha mbalimbali (Visual C, C++, C #.)

    Behaviorism_1.gif
    Kielelezo\(\PageIndex{1}\): Badilisha programu ya kompyuta ili kutekelezwa. Picha na Ly-Huong T. Pham ni leseni chini ya CC-BY-NC

    Maelfu ya lugha za programu zimeundwa tangu lugha ya kwanza ya programu mwaka 1883 na mwanamke aitwaye Ada Lovelace. Moja ya lugha za awali za Kiingereza zinazoitwa COBOL zimekuwa zinatumika tangu miaka ya 1950 hadi sasa katika huduma ambazo bado tunatumia leo, kama vile mishahara, mifumo ya uhifadhi. Lugha ya programu ya C ilianzishwa katika miaka ya 1970 na ikabaki chaguo maarufu zaidi. Baadhi ya lugha mpya kama vile C #, Swift zinapata kasi pia. Programmers kuchagua lugha bora kuendana na tatizo kutatuliwa kwa jukwaa fulani OS. Kwa mfano, lugha kama vile HTML na JavaScript hutumiwa kuendeleza kurasa za wavuti.

    Ni vigumu kuamua lugha ipi inayojulikana zaidi kwani inatofautiana. Hata hivyo, kwa mujibu wa TIOBE Index, moja ya makampuni ambayo cheo umaarufu wa lugha za programu kila mwezi, tano za juu mwezi Agosti 2020 ni C, Java, Python, C++, na C # (2020). Kwa habari zaidi juu ya mbinu hii, tafadhali tembelea ukurasa wa ufafanuzi wa TIOBE . Kwa wale wanaotaka kujifunza zaidi kuhusu programu, Python ni lugha nzuri ya kwanza kujifunza kwa sababu sio tu lugha ya kisasa ya maendeleo ya wavuti, ni rahisi kujifunza na inashughulikia dhana nyingi za msingi za programu zinazotumika kwa lugha zingine.

    Mtu mmoja anaweza kuandika programu fulani. Hata hivyo, programu nyingi za programu zimeandikwa na watengenezaji wengi. Kwa mfano, inachukua mamia ya wahandisi wa programu kuandika Microsoft Windows au Excel. Ili kuhakikisha timu zinaweza kutoa programu kwa wakati na ubora na kiasi kidogo cha makosa, pia inajulikana kama mende, mbinu rasmi za usimamizi wa mradi zinatumiwa, mada ambayo tutajadili katika sura ya 10.

    Chanzo cha wazi dhidi ya Programu iliyofungwa

    Wakati kompyuta binafsi ilitolewa kwanza, wapenzi wa kompyuta mara moja walijiunga pamoja ili kujenga programu na kutatua matatizo. Washabiki hawa wa kompyuta walifurahi kushiriki mipango yoyote waliyoijenga na ufumbuzi wa matatizo waliyoyakuta; ushirikiano huu uliwawezesha kuvumbua haraka zaidi na kurekebisha matatizo.

    Kama programu ilianza kuwa biashara, hata hivyo, wazo hili la kugawana kila kitu lilianguka kwa baadhi. Wakati programu ya programu inachukua mamia ya masaa kuendeleza, inaeleweka kuwa waandaaji hawataki kutoa. Hii ilisababisha mtindo mpya wa biashara ya leseni ya programu ya kuzuia, ambayo ilihitaji malipo kwa programu kwa mmiliki, mfano ambao bado ni mkubwa leo. Mfano huu wakati mwingine hujulikana kama chanzo kilichofungwa, kama kanuni ya chanzo inabakia mali binafsi na haipatikani kwa wengine. Microsoft Windows, Excel, Apple iOS ni mifano ya programu ya chanzo kilichofungwa.

    Kuna wengi, hata hivyo, ambao wanahisi kwamba programu haipaswi kuzuiwa. Kama wale hobbyists mapema katika miaka ya 1970, wanahisi kuwa uvumbuzi na maendeleo yanaweza kufanywa kwa kasi zaidi ikiwa tunashiriki kile tunachojifunza. Katika miaka ya 1990, huku upatikanaji wa intaneti unaunganisha watu zaidi na zaidi, harakati ya chanzo wazi ilipata mvuke.

    Programu ya chanzo wazi ni programu ambayo ina msimbo wa chanzo unaopatikana kwa mtu yeyote kuiga na kutumia. Kwa wasio programmers, haitakuwa ya matumizi mengi isipokuwa muundo ulioandaliwa pia unapatikana kwa watumiaji kutumia. Hata hivyo, kwa waandaaji, harakati ya wazi ya chanzo imesababisha kuendeleza baadhi ya programu zinazotumiwa zaidi duniani, ikiwa ni pamoja na kivinjari cha Firefox, mfumo wa uendeshaji wa Linux, na webserver ya Apache.

    Watu wengine wana wasiwasi kwamba programu ya chanzo wazi inaweza kuwa hatari kwa hatari za usalama tangu msimbo wa chanzo unapatikana. Wengine wanakabiliwa na kwamba kwa sababu msimbo wa chanzo unapatikana kwa uhuru, waandaaji wengi wamechangia miradi ya programu ya wazi, na kufanya msimbo usio na hitilafu na kuongeza vipengele, na kurekebisha mende kwa kasi zaidi kuliko programu ya chanzo kilichofungwa.

    Biashara nyingi zinaogopa programu ya chanzo wazi kwa sababu kanuni inapatikana kwa mtu yeyote kuona. Wanahisi kwamba hii huongeza hatari ya shambulio. Wengine kukabiliana na kwamba uwazi huu itapungua hatari kwa sababu kanuni ni wazi kwa maelfu ya programmers ambao wanaweza kuingiza mabadiliko code kiraka udhaifu haraka.

    Kwa muhtasari, baadhi ya faida za mfano wa chanzo wazi ni:

    • Programu inapatikana kwa bure.
    • Nambari ya chanzo cha programu inapatikana; inaweza kuchunguzwa na kupitiwa kabla haijasakinishwa.
    • Jumuiya kubwa ya waandaaji wanaofanya kazi kwenye miradi ya chanzo wazi inaongoza kwenye nyongeza za haraka za kurekebisha mdudu na vipengele.

    Faida zingine za mfano wa chanzo kilichofungwa ni:

    • Kutoa motisha ya kifedha kwa watengenezaji programu au makampuni
    • Msaada wa kiufundi kutoka kwa kampuni iliyoendeleza programu.

    Leo kuna maelfu ya programu za programu za wazi zinazopatikana kwa kupakuliwa. Mfano wa programu ya uzalishaji wa chanzo wazi ni Open Office Suite. Sehemu moja nzuri ya kutafuta programu ya chanzo wazi ni sourceforge.net, ambapo maelfu ya programu za programu zinapatikana kwa kupakuliwa kwa bure.

    Leseni za Programu

    Makampuni au watengenezaji wana programu wanayounda. Programu hiyo inalindwa na sheria ama kupitia ruhusu, hati miliki, au leseni. Ni juu ya wamiliki wa programu kuwapa watumiaji wao haki ya kutumia programu kupitia masharti ya leseni.

    Kwa wauzaji wa chanzo kilichofungwa, maneno yanatofautiana kulingana na bei ambayo watumiaji wako tayari kulipa. Mifano ni pamoja na mtumiaji mmoja, ufungaji mmoja, watumiaji mbalimbali, mitambo mbalimbali, kwa mtandao, au mashine.

    Wana viwango maalum vya ruhusa kwa wachuuzi wa chanzo wazi kutoa kwa kutumia msimbo wa chanzo na kuweka hali ya toleo la tarehe. Mifano ni pamoja na bure kusambaza, remix, kukabiliana na matumizi yasiyo ya kibiashara lakini kwa hali ya kuwa kanuni mpya ya chanzo lazima pia leseni chini ya masharti kufanana. Wakati wachuuzi wa chanzo cha wazi hawapati pesa kwa malipo ya programu zao, huzalisha mapato kupitia michango au kuuza msaada wa kiufundi au huduma zinazohusiana. Kwa mfano, Wikipedia ni kamusi elezo maarufu sana na ya mtandaoni yaliyomo huru inayotumiwa na mamilioni ya watumiaji. Hata hivyo, inategemea hasa michango ya kuendeleza wafanyakazi na miundombinu yake.

    Kumbukumbu

    TIOBE Index Agosti 2020. Iliondolewa Septemba 4, 2020, kutoka https://www.tiobe.com