Matryoshka C. Tsarin harshe na shirye-shirye

Bari mu yi kokarin tunanin sunadarai ba tare da Mendeleev's Periodic Table (1869). Abubuwa nawa ne ya kamata a kiyaye su, kuma a cikin wani tsari na musamman ... (Sa'an nan - 60.)

Don yin wannan, kawai tunani game da harshe ɗaya ko da yawa na shirye-shiryen lokaci guda. Ji daya ji, guda m hargitsi.

Kuma yanzu za mu iya rayar da tunanin masana kimiyya na ƙarni na XNUMX lokacin da aka ba su duk iliminsu, da ɗan ƙari, a cikin tebur na lokaci ɗaya.

Matryoshka C. Tsarin harshe na shirye-shirye


Littafin "Matryoshka C. Tsarin harshen shirye-shirye" yana gabatar da duk raka'a na harshen C a kallo. Wannan yana ba ku damar tsara su, gyara bayanan da suka gabata, har ma da fayyace ainihin manufar shirin.

A yau, bayanan shirye-shirye suna buƙatar tsari fiye da yadda abubuwan sinadarai suka yi shekaru 150 da suka gabata.

Larura ta farko ita ce koyarwa. Mendeleev ya fara ƙirƙirar tsarinsa ne lokacin da ya fuskanci tambaya game da wane nau'i ne zai fara yin lacca da: O, H, N, He, Au ... A lokaci guda kuma, ya kasance mai sauƙi a gare shi - ya koyar da ilmin sunadarai ga mafi kyau - daliban St. Petersburg University. An riga an koyar da shirye-shirye a makaranta kuma nan ba da jimawa ba za a fara a kindergarten.

Bukatu ta biyu ita ce hanyar kimiyya. Tare da taimakon tebur na lokaci-lokaci, an gano sabbin abubuwa kuma an gyara bayanai game da tsofaffi. Ta taimaka ƙirƙirar samfurin zarra (1911). Da sauransu.

Bukata ta uku ita ce fayyace manufar shirin.

Shirye-shiryen zamani yana da ƙafa ɗaya a cikin 50s na karni na XNUMX. A lokacin, shirye-shirye sun kasance masu sauƙi, amma injuna da harsunan inji sun kasance masu rikitarwa, don haka komai ya shafi inji da harsuna.

Yanzu komai shine sauran hanyar: shirye-shiryen suna da rikitarwa da farko, harsuna suna da sauƙi da sakandare. Ana kiran wannan hanyar da aka yi amfani da ita, wanda kowa da kowa ya sani. Amma ɗalibai da masu haɓakawa suna ci gaba da gamsuwa da cewa komai ɗaya ne.

Wanda ya dawo da mu zuwa lacca ta farko ta Privatdozent Mendeleev. Me za a gaya wa masu sabo? Ina gaskiyar ta ke? Tambayar kenan.

Littafin "Matryoshka C" ya ba da amsar wannan tambaya. Tsarin harshen shirye-shirye". Bugu da ƙari, ana magana ba kawai ga ɗalibai ba, har ma ga masu horar da shirye-shirye, tun da su ne, wato, mu, dole ne mu nemi gaskiya kuma mu canza ra'ayi na duniya.

Abin da ke biyo baya shine taƙaitaccen littafin.

1. Gabatarwa

A cikin 1969, an ƙirƙiri yaren C, wanda ya zama yaren shirye-shirye na asali kuma ya ci gaba da kasancewa har tsawon shekaru 50. Me yasa haka haka? Da farko, saboda C shine amfani harshen da ya ba da shirin ɗan adam duba maimakon inji. Harsuna daga dangin C sun sami nasarar wannan nasarar: C++, JavaScript, PHP, Java, C # da sauransu. Na biyu, gajere ne kuma kyakkyawan harshe.

Duk da haka, harshen C da kansa yana haɗe shi da na'ura mai haɗawa, ta haka yana daɗaɗawa da kuma karkatar da fahimtarsa. Sauran matsananciyar ita ce shigar da wani “falsafa” akan harshe: tsari, abu, aiki, haɗawa, fassara, buga, da sauransu. Wannan yana ƙara jin daɗi, amma baya taimakawa wajen kwatanta harshe da kyau.

Gaskiyar ita ce a tsakiya, kuma ga harshen C yana cikin tsaka-tsaki tsakanin fahimtar falsafa da na'ura.

Harshen C ba mai zaman kansa ba ne, yana biyayya ga yaren rubutu na yau da kullun, kuma a lokaci guda yana sarrafa harshen taro da kansa. Wannan matsayi ya bayyana Samfurin magana na shirin, bisa ga abin da shirin ya kasu kashi uku na ƙasa: magana, lambar, umarni. Harshen C yana da alhakin nau'in lamba na biyu.

Bayan ƙayyade wurin harshen a cikin shirin, za ku iya tsara bayanai game da shi, wanda ya sa Tsarin harshe na shirye-shirye, wakiltar harshen C a cikin ruhin tsarin lokaci-lokaci - akan shafi ɗaya.

An gina tsarin la'akari al'ummomin harsunan da ake amfani da su, sun taso daga kaskantar da maganarsu. Ɗaya daga cikin rukunin Matryoshka C yana ba ku damar kwatanta da kwatanta harsuna daban-daban, ƙirƙirar jerin Matryoshkas: C ++, PHP, JavaScript, C #, MySQL, Python da sauransu. Ya cancanci kuma daidai cewa an bayyana harsuna daban-daban ta raka'a na ainihin harshe.

2. BABI NA 1. Misalin Magana na shirin. Share C

Babi na farko ya gabatar salon magana na shirin, yana nuna hanyar da aka yi amfani da ita. A cewarsa, shirin yana da nau'o'in jeri guda uku a bayyane:

  1. magana - magana kai tsaye na mai shirye-shiryen magance matsalar,
  2. codeed - shigar da bayani cikin sigar lissafi a cikin harshen C (ko wani)
  3. da umarni - umarnin injin kai tsaye.

Samfurin magana ya bayyana dalilin da ya sa C harshe ne mai sauƙi da fahimta. An gina Xi a cikin hoto da kamannin maganganun ɗan adam wanda ya saba da mu.

Nau'in shirin na farko shine jawabin mai shirin kai tsaye. Magana ta dace da tunanin ɗan adam. Masu shirye-shirye na farko suna rubuta shirye-shirye ta amfani da magana - na farko a cikin Rashanci, sannan mataki-mataki suna fassara ayyukan zuwa harshen lamba. Kuma daidai akan wannan samfurin ne aka halicci harshen C.

Ƙaddamar da mai shirye-shiryen, wanda aka bayyana a cikin magana, an canza shi zuwa nau'i mai lamba. Ya kamata a kira wannan canji tunani, tunda magana da ka'ida suna da yanayi iri ɗaya (wani tunani - haihuwa - jinsi). Wannan a bayyane yake idan muka kwatanta magana (a hagu) da lambar (a hannun dama) nau'in shirin.

Matryoshka C. Tsarin harshe na shirye-shirye

Yana da ban sha'awa cewa tunani yana faruwa a sauƙaƙe - tare da nau'ikan maganganu guda biyu kawai.

Duk da haka, bayanin zamani na harshen C (daga 1978) ba ya ƙunshi isassun jerin sunayen ko dai don bayyana harshen gaba ɗaya, ko don aikin tunani musamman. Saboda haka, an tilasta mana mu sami ƙirƙira da gabatar da waɗannan sunaye.

Dole ne zaɓin kalmomi su kasance daidai kuma a sarari. Wannan yana buƙatar hanya ta musamman, a taƙaice bayyana kamar haka: tsananin amfani da harshen asali. Ga Ingilishi zai zama Ingilishi, amma mu ba Ingilishi ba ne. Don haka za mu yi amfani da abin da muke da shi kuma mu yi ƙoƙarin yin magana da Rashanci.

Ana yin tunani ta nau'ikan maganganu guda biyu:

  1. lissafi (HF) - yana nuna canji a cikin kaddarorin abu. Ana bayyana dukiyar abu ta lamba, sannan wani aiki akan dukiya shine aiki akan lamba - aiki.
  2. biyayya (Pch) - yana nuna canji a cikin tsari na ayyuka. Samfurin Pch jimla ce mai rikitarwa, saboda haka yawancin nau'ikan Pch suna farawa da haɗin kai "idan", "in ba haka ba", "yayin", "don". Sauran nau'ikan kwamfutoci suna cika su.

Af, za ku iya gaskata cewa a cikin bayanin C babu suna don maganganun lissafi - ana kiran su kawai "bayani"? Bayan wannan, ba zai ƙara zama abin mamaki ba cewa babu suna da haɗin kai ga nau'in ƙarƙashin ƙasa, da kuma ƙarancin sunaye, ma'anoni da ma'anoni gaba ɗaya. Wannan saboda sanannen K/R ("The C Language", Kernighan/Ritchie, 1978) ba bayanin ba ne, amma jagora ne don amfani da harshe.

Duk da haka, har yanzu ina so a sami bayanin harshen. Don haka aka ba shi Tsarin harshe na shirye-shirye.

3. BABI NA 2. Tsarin Layer. Takaitaccen C

Kowane bayanin dole ne ya zama daidai kuma a taƙaice sosai. A cikin yanayin harshen shirin, bayanin gaba yana da wahala.

Anan muna da shirin. Ya ƙunshi kayayyaki. Modules sun ƙunshi subroutines da tarin yawa (tsari). Subroutines sun ƙunshi maganganun mutum guda: sanarwa, ƙididdiga, ƙaddamarwa. Akwai nau'ikan subordination da yawa kamar goma. Subordination yana haɗu da sublevels da subroutines. Akwai kuma tallace-tallace da yawa. Duk da haka, an haɗa sanarwar ba kawai a cikin subroutines da sublevels ba, har ma a cikin kayayyaki da tarin yawa. Kuma galibin kalamai sun kunshi kalmomin da suke da wahalar siffanta su ta yadda galibi ana ba da su cikin jeri biyu – asali da kalmomin da aka samu, wadanda za ku saba da su a duk tsawon koyo da amfani da harshen. Bari mu ƙara alamomin rubutu da adadin wasu maganganu zuwa wannan.

A cikin irin wannan gabatarwa, ba shi da sauƙi a fahimci wanda ya tsaya a kan wane.

Hanyar daidaitawa kai tsaye don siffanta harshe zai kasance mai sarƙaƙƙiya. Binciken kewayawa yana kaiwa ga bayanin harshe dangane da yanayin magana da gefen umarni. Don haka, an haifi tsarin Layer, wani bangare ya zo daidai da tsarin Mendeleev na lokaci-lokaci, wanda kuma shine. kwali. Kamar yadda ya fito shekaru 42 bayan bugawa (1869), tsarin lokaci-lokaci yana da alaƙa da lantarki. yadudduka (1911, Bohr-Rutherford model na zarra). Hakanan, Tsarin Layi da na lokaci-lokaci suna kama da tsarin tsarin duka raka'a akan shafi ɗaya.

Bayanin sassan harshe takaice ne - nau'ikan maganganu guda 10 ne kawai da nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan 8, da ma'ana da gani. Ko da yake sabon abu ga farkon sanin.

An raba sassan harshe zuwa matakai 6:

  1. raka'a - tebur layuka
  2. sassan - ƙungiyoyi na musamman na genera (sassan layin farko)
  3. genus - Kwayoyin (babban matakin rarraba)
  4. superspecies - nau'in separators (rare matakin)
  5. nau'o'in - tsarin naúrar a kasan tantanin halitta ko daban
  6. alamu - raka'a kansu (don kalmomi kawai)

Misalin kalmomi sun bayyana ƙamus - wani keɓaɓɓen tsarin ƙasa wanda ya ƙunshi matakai shida iri ɗaya.

Bangaren magana na yaren C a bayyane yake, kodayake har yanzu ya cancanci kwatance. Amma sashin umarni na harshe yana da alaƙa daidai da sarrafawar tattarawa, lokacin da aka ƙirƙiri nau'in shirin na uku - umarni. A nan mun zo ga mafi ban sha'awa al'amari na C harshen: kyau.

4. BABI NA BIYU. Kyakkyawan Si

Harshen C shine tushen shirye-shiryen zamani. Me yasa? Na farko, saboda mafi girman rubutu zuwa magana. Na biyu, saboda da kyau ya ketare iyakokin sarrafa lambar injin.

Menene ainihin abin da Xi ya gabatar? Hoto da Layer.

Kalmar "hoton" fassarar kalmar Ingilishi ce "nau'i", wanda ya fito daga Girkanci "prototype" - "nau'i". A cikin harshen Rashanci, kalmar "nau'i" ba ta isar da ginshiƙan ra'ayi da ake bayyanawa ba, haka ma, ya rikice tare da ma'anar ma'anar "nau'i".

Da farko, hoton ya warware matsalar lissafin inji kawai, sannan ya zama titin jirgin sama don haihuwar harsunan abu.

Layer nan da nan ya warware matsaloli da yawa - duka na'ura da amfani. Sabili da haka, la'akari zai fara tare da hoton ɗawainiya guda ɗaya kuma ya matsa zuwa Layer na ayyuka da yawa.

Ɗaya daga cikin abubuwan da ba su da daɗi na shirye-shiryen tarihi shine yawancin ra'ayoyi, ciki har da na asali, ana ba da su ba tare da ma'ana ba. "Harshen shirye-shirye (sunan koguna) yana da nau'ikan lamba da nau'ikan iyo..." kuma suka kara dagulewa. Ba lallai ba ne a ayyana abin da "nau'i" (hoton) yake, saboda marubutan da kansu ba su fahimci wannan ba kuma za su yi shiru "saboda tsabta." Idan an makala su a bango, za su ba da ma'ana marar amfani. Yana taimakawa da yawa don ɓoyewa a bayan kalmomin waje: ga marubutan Rasha - a bayan Ingilishi (nau'in), ga Ingilishi - bayan Faransanci (subroutine), Girkanci (polymorphism), Latin (encapsulation) ko haɗuwa (ad-hoc polymorphism).

Amma wannan ba shine makomarmu ba. Zaɓin mu shine ma'anoni tare da haɓakar visor a cikin tsantsar Rashanci.

Hoton hoto

Hoton hoto sunan prefigurative suna ne na adadi, yana bayyana 1) ainihin kaddarorin adadin da 2) zaɓin ayyuka don yawa.

Kalmar “nau’i” (nau’in) ta yi daidai da ɓangaren farko na ma’anar: “intronsic Properties of a quantity.” Amma babban ma'anar hoton shine a kashi na biyu: "zabin ayyuka zuwa adadi."

Mafarin farawa don gabatar da hoto a C lissafin al'ada ne, kamar aikin ƙari.

Takarda Lissafi, ko da hannu aka rubuta ko bugu, baya bambancewa sosai tsakanin nau'ikan lambobi, yawanci ana ɗaukan gaske ne. Don haka, ayyukan sarrafa su ba su da tabbas.

Injin Lissafi yana raba lambobi sosai zuwa lamba da juzu'i. Ana adana nau'ikan lambobi daban-daban a cikin ƙwaƙwalwar ajiya kuma ana sarrafa su ta hanyar umarnin sarrafawa daban-daban. Misali, umarnin don ƙara lamba da juzu'i umarni ne daban-daban guda biyu masu dacewa da nodes ɗin sarrafawa daban-daban. Amma babu umarni don ƙara ƙididdiga da ƙima.

Aiwatar ilmin lissafi, wato, harshen C, yana raba nau'ikan lambobi, amma yana haɗa ayyuka: ƙari don ƙididdiga da / ko ɓarna an rubuta su tare da alamar aiki ɗaya.

Bayyanar ma'anar hoton ra'ayi yana ba mu damar yin magana game da wasu ra'ayoyi guda biyu: girma и aiki.

Girma da aiki

Yawan - lambar da ake sarrafa.

Ayyuka - sarrafa dabi'u na farkon dabi'u (hujja) don samun lambar ƙarshe ( jimla).

Girma da aiki suna da alaƙa. Kowane aiki yana da yawa saboda yana da sakamako na lambobi. Kuma kowace ƙima sakamakon canja wurin ƙima zuwa / daga rajistar sarrafa masarrafar, wato, sakamakon aiki. Duk da wannan dangantaka, babban abu shine yiwuwar bayanin su daban, ko da yake tare da maimaita kalma ɗaya a sassa daban-daban na ƙamus, wanda shine abin da ke faruwa a MA3.

Hanyar na'ura ta raba duk lambobin da mai shirye-shiryen ke amfani da su umarni и bayanan. A baya, duka biyun lambobi ne, alal misali, an rubuta umarni cikin lambobin lambobi. Koyaya, a cikin harsunan da aka yi amfani da su, umarni sun daina zama lambobi kuma sun zama a cikin kalmomi и alamun aiki. "Bayanai" kawai ya rage a matsayin lambobi, amma yana da wauta don ci gaba da kiran su ta wannan hanya, domin a cikin sauyawa daga na'ura zuwa ma'anar lissafi, lambobi suna da yawa waɗanda aka raba ta asali (bayanan) kuma na karshe (ake bukata). "Unknown datum" zai yi sautin wauta.

An kuma raba ƙungiyoyin zuwa nau'ikan ayyuka biyu: lissafi da sabis. Ayyukan lissafi - ayyuka. Za mu isa ga abubuwan hukuma daga baya.

A cikin harsunan C, takarda da na'ura na yau da kullun ba su da ma'ana, ko guda ɗaya, ayyukan lissafin kusan gabaɗaya suna zama iri-iri.

Ayyuka da yawa ayyuka ne da yawa na suna iri ɗaya tare da nau'ikan muhawara daban-daban kuma daban-daban, kama da ma'ana, ayyuka.

Ƙididdigar ƙididdiga ta dace da dukan aiki, kuma gardama na ɓangarori sun dace da aiki na juzu'i. Wannan bambance-bambancen ya bayyana musamman a lokacin aikin rarraba, lokacin da furcin 1/2 ya ba da jimlar 0, ba 0,5 ba. Irin wannan bayanin ba ya dace da ka'idodin lissafi na takarda, amma harshen C ba ya ƙoƙari ya bi su (ba kamar Fortran ba) - yana wasa bisa ga nasa. amfani dokoki.

A cikin yanayin haɗa lamba da ɓangarorin, an haɗa daidai kawai jefa ƙimar hujja - zaɓin canjin ƙima daga wannan hoto zuwa wani. Lallai, lokacin ƙara lamba da lamba mai juzu'i, sakamakon yana da juzu'i, don haka hoton aikin. dauka aikin juyar da gardamar lamba zuwa ƙima mai ɓarna.

Yawancin ayyuka sun rage jam'ida kuma guda. Irin waɗannan ayyuka ana bayyana su ne kawai don nau'ikan mahawara guda ɗaya: ragowar rabo - muhawarar lamba, tarawa (ayyukan bitwise) - lamba na halitta. Ma3 yana nuna yawan ayyuka tare da alamomi (#^) masu nuna hotunan da aka ayyana aikin. Wannan abu ne mai mahimmanci amma a baya ba a kula da shi na kowane aiki.

Duk ayyuka ayyuka ne na sabani. Banda shi ne masu aiki - ayyuka marasa tushe, gina cikin harshe (aiki na asali).

Taimako

Taimako - aiki tare da aiki.

Idan muka yi la'akari da aiki a matsayin babban aikin, to, za mu iya bambanta biyu rakiyar da cewa samar da aiki da kuma bambanta da shi. Waɗannan su ne 1) sarrafawa mai canzawa da 2) subordination. Ana kiran wannan aikin taimako.

Anan muna buƙatar mu nutse kuma mu faɗi dabam game da fassarorin Rashanci na littattafan rubutu. An gabatar da sabuwar kalma a cikin rubutun K/R don yin rikodin ayyuka bayani (bayani), wanda yayi ƙoƙari ya raba ra'ayoyin umarnin na'ura zuwa ayyuka daban-daban: 1) aiki, 2) sanarwa, da 3) ƙaddamarwa (wanda ake kira "controls constructs"). Mafassara na Rasha ne suka binne wannan ƙoƙarin, inda suka maye gurbin "bayani" da kalmar "mai aiki", wanda:

  1. ya zama daidai da na'ura kalmar "umurni",
  2. ya zama daidai da kalmar "alamar aiki",
  3. sannan kuma sun sami ƙarin ƙima mara iyaka. Wato ya koma wani abu makamancin wannan labarin na Turanci “uhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Yi la'akari da ayyukan da ke biye, ko taimako.

Ikon sarrafawa

Ikon sarrafawa (UP) - ƙirƙira/ share sel masu canzawa.
UE yana faruwa a fakaice lokacin ayyana maɓalli, wanda aka riga aka rubuta don wani dalili - don nuna hoton ƙimar. Duba ɗaya ne kawai ake sarrafa shi a sarari ƙarin masu canji ta amfani da ayyukan malloc() da na kyauta ().

Ya kamata a lura cewa ayyukan da ba a ɓoye sun fi dacewa don rubutawa, tun da ba sa buƙatar rubuta wani abu ko kaɗan, amma sun fi wuya a fahimta - sun fi wuya a yi la'akari da fassara.

Subordination

Subordination - haɗa / kashe sassan Layer.

Harshen C ya ba da hanyar da aka yi amfani da ita don sarrafa tsari na ayyuka, daban da mai tarawa - ƙarƙashin ƙasa. Yana nunawa da haɓaka jumlar magana mai sarƙaƙƙiya tare da bayyananniyar rarrabuwa zuwa babban ɓangaren (shaɗin ƙaddamarwa) da ɓangaren da ke ƙarƙashin (sassan ƙasa/sabroutine).

Dukansu shela da ƙaddamarwa gaba ɗaya an gina su akan ra'ayi Layer.

Layer

Layer ƙayyadaddun saitin maganganu ne mai iyaka guda ɗaya.

Layer a bayyane kuma a fakaice ya ɗauki ayyuka da yawa lokaci guda:

  1. shirya shirin
  2. iyakance ganuwa na sunaye (a fakaice),
  3. sarrafa masu canji (kwayoyin ƙwaƙwalwar ajiya) (a fakaice),
  4. definition of subordinate clauses for subordination,
  5. ma'anar ayyuka da zaɓuɓɓuka da sauransu.

Babu wani ra'ayi na Layer a cikin harsunan inji, don haka bai bayyana a cikin K/R ba, kuma idan wani abu ba ya nan, to gabatar da shi a cikin littattafai na gaba zai zama bidi'a da tunani. Saboda haka, tunanin Layer bai bayyana ba kwata-kwata, kodayake yana da matukar amfani kuma a bayyane yake.

Ba tare da Layer ba, ba shi yiwuwa a taƙaice kuma a sarari bayyana yawancin ayyuka da ka'idojin shirin. Alal misali, me yasa goto mai sauƙi kamar kopecks uku mara kyau, kuma lokacin da yake da kyau yana da kyau. Za ku iya rantsuwa kawai ba tare da taimako ba, kamar yadda Dijkstra ya yi ("ƙwararrun masu shirye-shirye aiki ne wanda ya dogara da yawan faruwar maganganun goto a cikin shirye-shiryen su." A takaice dai, awaki ne kawai ke amfani da goto. Matsayin barata shine Allah.) Gaskiya, wannan ba abin tsoro ba ne idan littattafanku ba dole ba ne mu bayyana wani abu kwata-kwata, amma, kamar yadda muka riga muka faɗa, wannan ba shine makomarmu ba.

Af, ana iya ɗauka cewa Dan Ritchie ya bar goto daidai a matsayin maɓalli don neman wasu ra'ayi da ba a bayyana sunansa ba, saboda babu buƙata ko kyakkyawa a cikin furcin goto. Amma akwai buƙatar bayani mai sauƙi da fahimta game da sababbin ka'idodin harshe, wanda Richie da kansa ba ya so ya ba da shi, kuma wanda ya dogara ne akan manufar. Layer.

Karkacewa

Karkacewa - canza saba kaddarorin sabon suna.

Mafi mahimmanci karkatacce yana da alaƙa daidai da kaddarorin kayan aikin shirin, kuma an kwatanta shi da kalma ɗaya "tsaye", wanda ke da ma'ana daban-daban a kowane nau'in Layer.

5. BABI NA KARSHE. gama-gari na harsunan da aka yi amfani da su

Harsunan da aka yi amfani da su sune m harsuna (suna da hoto, "buɗe"). Sun dogara ne akan amfani da hoton a bayyane ko a fakaice. Bugu da ƙari, a nan kuma akwai sabani ya bayyana: hoto na zahiri ya fi fahimta, amma bai dace ba, kuma akasin haka.

Matryoshka C. Tsarin harshe na shirye-shirye

(Har yanzu ba a isar da shimfidar tebur ba, don haka ana nuna tebur da hoto.)

Bayan C, ci gaban harsunan da aka yi amfani da su sun ɗauki hanyar haɓaka tamaninsu. Mafi mahimmanci don fahimtar babban hoto shine zuriyar C - harshen C ++ kai tsaye. Ya ci gaba da ra'ayin wani sabani selection na ayyuka ga yawa da kuma embodies shi a kan tushen da roba magana selection, wanda ya karbi sabon suna - abu. Duk da haka, C++ ba takaicce da bayyanawa kamar C saboda yawan nau'ikan tarin tarin yawa da ka'idojin haɗin gwiwa. Af, bari mu magana game da "overload".

Overloading da polymorphism

Kalmar "overload" tsohuwar kalma ce ta koyon inji don ƙirƙira ayyuka da yawa.

Na'ura (tsarin) shirye-shirye jam'i Ayyuka na iya zama da ban haushi: "Menene wannan alamar (+) ke nufi: ƙara lamba, ƙara juzu'i, ko ma canzawa?! A zamaninmu ba su rubuta haka ba!” Don haka mummunan ma'anar kalmar da aka zaɓa ("overkill", "gajiya"). Ga mai shirye-shiryen aikace-aikacen, ayyuka da yawa sune ginshiƙan, babban nasara da gadon yaren C, don haka na halitta wanda galibi ba a gane su ba.

A cikin harshen C++ jam'i ba wai kawai ga ayyukan asali ba, har ma zuwa ayyuka - duka na mutum ɗaya da haɗuwa cikin azuzuwan - hanyoyin. Tare da hanyoyi da yawa ya zo da ikon ƙetare su a cikin azuzuwan da yawa, wanda ake kira "polymorphism." Haɗin polymorphism da nauyi ya haifar da cakuda mai fashewa wanda ya rabu zuwa polymorphisms guda biyu: "gaskiya" da "ad-hoc." Yana yiwuwa a fahimci wannan kawai duk da sunayen da aka sanya. Hanyar zuwa talla tana da sunaye na waje.

Sanarwa na nau'in “overload” ya fi kyau bayyana a cikin kalmar ƙarin sanarwa - ƙara bayanin aiki na suna iri ɗaya tare da gardama na wani hoto daban.

Sanarwa nau'in "polymorphism" shine mafi kyawun kira sake-sanarwa - sanarwa mai cike da sarkakiya a cikin sabon layin tsawo na aikin suna iri ɗaya tare da muhawara na hoto iri ɗaya.

Sa'an nan kuma zai zama da sauƙi a fahimci cewa hanyoyin sunan guda ɗaya na hotuna daban-daban (hujja) - bugu da žari sanar, da kuma hoto daya - sake sanar.

Kalmomin Rasha sun yanke shawara.

Runway

Yin la'akari da ra'ayoyin harsuna masu ma'ana sosai yana tabbatar da mahimmancin ma'anar mahimman bayanai. Tare da bayanin C daidai, koyan manyan harsunan siffa zai zama mai sauƙi da daɗi.

Wannan yana da mahimmanci musamman ga fikatattun harsuna masu ma'ana (PHP, JavaScript). A gare su, mahimmancin abubuwa (hotuna masu haɗaka) ya zama mafi girma fiye da na C++, amma ainihin ra'ayin hoto ya zama a fakaice kuma yana da wuya. Ta fuskar saukakawa, sun zama masu sauki, amma ta fuskar fahimta, sun kara wahala.

Don haka, ya kamata ku fara koyon yarukan shirye-shirye tare da yaren C kuma ku ci gaba a cikin tsarin da harsunan dangin C suka bayyana.

Haka yake ga bayanin harsuna. Harsuna daban-daban suna da iri ɗaya, ko ƙarami, saitin nau'ikan jinsi fiye da harshen C. Yawan nau'o'in da samfurori na iya bambanta a bangarorin biyu: C++ yana da nau'i fiye da C, yayin da JavaScript yana da ƙasa.

Harshen MySQL ya cancanci ambaton musamman. Zai zama alama cewa babu wani abu na kowa, amma Matryoshka ya kwatanta shi daidai, kuma saninsa ya zama mai sauri da sauƙi. Wanne yana da mahimmanci, saboda mahimmancinsa ga yanar gizo - hanyar cin abinci na shirye-shiryen zamani. Kuma inda akwai MySQL, akwai sauran SQLs. To, kowane nau'i na Fortran-Pascal-Python kuma Matryoshka ya bayyana, da zarar sun sami hannunsu.

Don haka, manyan abubuwa suna jiran mu - bayanin da aka yi amfani da shi na yaren C da cikakken bayanin harsunan da ke biye da shi. “Manufofinmu a bayyane suke, an ayyana ayyukanmu. Ku shiga aiki, 'yan'uwa! (Haguwa, tafawa ta dade, tana rikidewa. Kowa ya tashi).

Za a saurari ra'ayoyin ku tare da kulawa mai kyau, taimakon ku don ƙirƙirar gidan yanar gizo na dolls za a karbi tare da godiya mai yawa. Ƙarin cikakkun bayanai game da littafin yana kan gidan yanar gizon, da wayo ya ɓoye a cikin Matryoshka C.

source: www.habr.com

Add a comment