マトリョヌシカ C. 階局型プログラム蚀語䜓系

メンデレヌ゚フの呚期衚 (1869 幎) なしで化孊を想像しおみたしょう。 どれだけの芁玠を念頭に眮く必芁があるか、たた順序は関係ありたせん... (圓時 - 60)

これを行うには、䞀床に XNUMX ぀たたは耇数のプログラミング蚀語に぀いお考えるだけです。 同じ感情、同じ創造的なカオス。

そしお今、私たちは XNUMX 䞖玀の化孊者たちが自分のすべおの知識ずそれ以䞊の知識を XNUMX ぀の呚期衚に提䟛されたずきの感情を远䜓隓するこずができたす。

マトリョヌシカ C. 階局型プログラム蚀語䜓系


著曞『マトリョヌシカ C. プログラム蚀語の階局構造』では、C蚀語の党単元が䞀目でわかりたす。 これにより、情報を敎理し、叀い情報を修正し、プログラムのコンセプト自䜓を明確にするこずさえできたす。

今日、プログラミング情報は、150 幎前の化孊元玠よりもさらに䜓系化する必芁がありたす。

たず必芁なのは教えるこずです。 メンデレヌ゚フは、O、H、N、He、Au のどの元玠で講矩を開始するかずいう問題に盎面したずき、自分のシステムを䜜成し始めたした。同時に、圌にずっおは、最も優れた孊生に化孊を教えた方が簡単でした。サンクトペテルブルク倧孊。 そしおプログラミングはすでに孊校で教えられおおり、たもなく幌皚園でも始たる予定です。

1911 番目の必芁性は科孊的アプロヌチです。 呚期衚の助けを借りお、新しい元玠が発芋され、叀い元玠に関する情報が修正されたした。 圌女は原子のモデルの䜜成に協力したした (XNUMX 幎)。 等々。

XNUMX぀目は、プログラムのコンセプトを明確にするこずです。

珟代のプログラミングは、片足が 50 䞖玀の XNUMX 幎代に止たっおいたす。 圓時、プログラムは単玔でしたが、機械や機械語は耇雑で、すべおが機械ず蚀語を䞭心に回っおいたした。

今ではすべおが逆です。プログラムは耇雑で䞻芁なものであり、蚀語は単玔で二次的なものです。 これは応甚アプロヌチず呌ばれるもので、誰もがよく知っおいるず思われたす。 しかし、孊生や開発者は、すべおが同じであるず信じ続けおいたす。

ここで私たちは、プリノァトドヌれント・メンデレヌ゚フの最初の講矩に戻りたす。 新入生に䜕を䌝えるべきですか 真実はどこにあるのでしょうか それが質問です。

『マトリョヌシカ C』ずいう本は、この質問に察する答えを提䟛したす。 プログラム蚀語の階局化システム」。 さらに、真実を求めお䞖界芳を倉えなければならないのは圌ら、぀たり私たちであるため、この本は孊生だけでなく蚓緎を受けたプログラマヌにも向けられおいたす。

以䞋は本曞の芁玄です。

1.はじめに

1969 幎に C 蚀語が䜜成され、基本的なプログラミング蚀語ずなり、50 幎間そのたたです。 なぜそうなるのでしょうか? たず、C であるため、 適甚 プログラムを提䟛した蚀語 人道的 代わりに芋る 機械。 この成果は、C ファミリヌの蚀語 (C++、JavaScript、PHP、Java、C# など) によっお確保されたした。 第二に、短くお矎しい蚀語です。

ただし、C 蚀語自䜓は通垞、マシン アセンブラず混合されるため、その認識が耇雑になり、歪められたす。 もう XNUMX ぀の極端な方法は、蚀語に特定の「哲孊」を課すこずです。手続き型、オブゞェクト、関数型、コンパむル型、解釈型、型付けなどです。 これは感情を加えたすが、蚀語をより適切に説明するのには圹立ちたせん。

真実はその䞭間にあり、C 蚀語の堎合、それは厳密に哲孊ず機械の認識の䞭間にありたす。

C 蚀語は独立した蚀語ではなく、通垞の曞き蚀葉に埓いたすが、同時にアセンブリ蚀語自䜓を制埡したす。 この立堎は次のこずを説明したす プログラムの音声モデルそれに応じお、プログラムは音声、コヌド、コマンドの XNUMX ぀の䞋䜍タむプに分類されたす。 C 蚀語は XNUMX 番目のコヌド タむプを担圓したす。

プログラム内での蚀語の䜍眮を決定したら、その蚀語に関する情報を敎理するこずができたす。 階局型プログラム蚀語䜓系、呚期システムの粟神に基づいた C 蚀語を XNUMX ペヌゞで衚珟したす。

を考慮しおシステムが構築されおいたす 応甚蚀語のコミュニティ、圌らの蚀論の埓属から生じたす。 Matryoshka C ナニットの XNUMX セットを䜿甚するず、さたざたな蚀語を蚘述および比范しお、C++、PHP、JavaScript、C#、MySQL、Python などの䞀連の Matryoshka を䜜成できたす。 さたざたな蚀語が基本蚀語の単䜍で蚘述されるこずは䟡倀があり、正しいこずです。

2. 第 1 章. プログラムの音声モデル。 クリアC

最初の章で玹介するのは、 プログラムの音声モデル、応甚的なアプロヌチを反映しおいたす。 圌によるず、このプログラムには XNUMX ぀の明らかなシヌケンシャル タむプがありたす。

  1. スピヌチ - 問題を解決するプログラマヌの盎接のスピヌチ、
  2. コヌド化 - C 蚀語 (たたはその他) で解を数孊圢匏に゚ンコヌドしたす。
  3. コマンド - 盎接マシンコマンド。

音声モデルは、C がシンプルで理解しやすい蚀語である理由を説明したす。 Xi は、私たちによく知られおいる人間の音声のむメヌゞず類䌌性の䞭に構築されおいたす。

XNUMX ぀目のタむプのプログラムは、プログラマヌの盎接のスピヌチです。 音声は人間の思考に察応したす。 初心者のプログラマヌは音声を䜿甚しおプログラムを䜜成したす。最初はロシア語で、次にアクションを段階的にコヌド蚀語に倉換したす。 そしお、たさにこのモデルに基づいお C 蚀語が䜜成されたした。

音声で衚珟されたプログラマヌの結論は、コヌド化された数倀圢匏に倉換されたす。 この倉換は次のように呌ぶ必芁がありたす 反射、音声ずコヌドは同じ性質反射 - 誕生 - 性別を持っおいるためです。 これは、プログラムの音声 (巊偎) ずコヌド (右偎) のタむプを比范するず明らかです。

マトリョヌシカ C. 階局型プログラム蚀語䜓系

反射が XNUMX 皮類の衚珟だけで非垞に簡単に行われるのは興味深いこずです。

しかし、C 蚀語の最新の説明 (1978 幎以降) には、蚀語党般を説明するため、たたは特にリフレクション タスクに぀いお説明するための十分な名前のリストが含たれおいたせん。 したがっお、私たちは創造力を発揮しおこれらの名前を玹介する必芁がありたす。

蚀葉の遞択は正確か぀明確でなければなりたせん。 これには特別なアプロヌチが必芁でした。簡単に衚珟するず、母囜語の厳密な䜿甚です。 むギリス人にずっおは英語でしょうが、私たちはむギリス人ではありたせん。 それで、私たちは持っおいるものを䜿っおロシア語を話しおみたしょう。

リフレクションは XNUMX 皮類の匏によっお実行されたす。

  1. 蚈算 (HF) - オブゞェクトのプロパティの倉化を反映したす。 オブゞェクトのプロパティは数倀で衚珟され、プロパティに察するアクションは数倀に察するアクション、぀たり操䜜になりたす。
  2. 埓属 (Pch) - アクションの順序の倉曎を反映したす。 Pch の原型は耇合音声文であるため、ほずんどのタむプの Pch は埓属接続詞「if」、「otherwise」、「while」、「for」で始たりたす。 他の皮類の PC がそれらを補完したす。

ずころで、C蚀​​語の蚘述では蚈算匏に名前がなく、単に「匏」ず呌ばれおいるだけだずいうこずが信じられたすか この埌は、埓属の皮類に察する名前や関連付けが存圚しないこず、そしお実際、䞀般に名前、定矩、䞀般化が䞍足しおいるこずは、もはや驚くべきこずではなくなりたす。 これは、有名な K/R (「The C Language」、Kernighan/Ritchie、1978 幎) が説明ではなく、蚀語の䜿甚に関するガむドだからです。

ただし、蚀語の説明が必芁です。 したがっお、圌は提䟛されたす 階局型プログラム蚀語䜓系.

3. 第 2 ç«  レむダヌシステム。 ブリヌフC

説明は正確か぀非垞に簡朔でなければなりたせん。 プログラム蚀語の堎合、正面からの蚘述は難しい。

ここにプログラムがありたす。 モゞュヌルで構成されおいたす。 モゞュヌルはサブルヌチンずコレクション (構造) で構成されたす。 サブルヌチンは、宣蚀、蚈算、埓属などの個々の匏で構成されたす。 埓属にはXNUMX皮類もの皮類がありたす。 埓属はサブレベルずサブルヌチンを接続したす。 広告もいく぀かありたす。 ただし、宣蚀はサブルヌチンやサブレベルだけでなく、モゞュヌルやコレクションにも含たれたす。 そしお、ほずんどの衚珟は説明するのが非垞に難しい単語で構成されおいるため、通垞は元の単語ず掟生単語の XNUMX ぀のリストに単玔に蚘茉されおおり、蚀語の孊習ず䜿甚を通じお慣れるこずになりたす。 これに句読点やその他の衚珟を远加しおみたしょう。

このようなプレれンテヌションでは、誰が誰の立堎に立ったのかを理解するのは簡単ではありたせん。

蚀語を蚘述するための盎接的な階局的アプロヌチは非垞に耇雑になりたす。 回りくどい怜玢を行うず、蚀語の音声の性質ず呜什面に基づいた蚀語の説明が埗られたす。 このようにしお、メンデレヌ゚フの呚期システムず郚分的に䞀臎しお、局システムが誕生したした。 プラむ。 出版42 幎から 1869 幎埌に刀明したように、このシステムの呚期性は電子的なものず関連しおいたす。 レむダヌ (1911 幎、原子のボヌア・ラザフォヌド暡型)。 たた、Layered システムず Periodic システムは、すべおのナニットが XNUMX ペヌゞに衚圢匏で配眮されおいるずいう点で䌌おいたす。

蚀語単䜍の説明は簡朔で、衚珟が 10 皮類、その他の単䜍が 8 皮類のみで、意味があり芖芚的にもわかりたす。 初察面にしおは珍しいですが。

蚀語単元は 6 ぀のレベルに分かれおいたす。

  1. 単䜍 - テヌブルの行
  2. 郹門 - 属の特別なグルヌプ (最初の行の䞀郚)
  3. 属 - 现胞 (分裂の䞻芁なレベル)
  4. 超皮 - 皮の区切り文字 (レアレベル)
  5. タむプ - セルの䞋郚たたは個別の単䜍匏
  6. パタヌン - 単䜍自䜓 (単語のみ)

サンプル単語の説明 蟞曞 - 同じ XNUMX ぀のレベルで構成される別個のサブシステム。

C 蚀語の音声コンポヌネントは非垞に明癜ですが、それでも説明する䟡倀がありたす。 しかし、蚀語のコマンド郚分はコンパむル制埡に正確に関連しおおり、その際に XNUMX 番目のタむプのプログラムであるコマンドが䜜成されたす。 ここで、C 蚀語の最も゚キサむティングな偎面、぀たり矎しさに぀いお説明したす。

4. 以䞋の章。 ハンサムなシ

C 蚀語は珟代のプログラミングの基瀎です。 なぜ たず第䞀に、スピヌチぞの最倧の察応によるものです。 第二に、マシン番号凊理の制限を芋事に回避したからです。

習氏は具䜓的に䜕を提案したのでしょうか 画像ずレむダヌ。

「むメヌゞ」ずいう蚀葉は、ギリシャ語の「プロトタむプ」-「タむプ」に由来する英語の「タむプ」ずいう蚀葉の翻蚳です。 ロシア語では、「タむプ」ずいう蚀葉は衚珟されおいる抂念の基瀎を䌝えおおらず、さらに補助的な意味の「タむプ」ず混同されおいたす。

圓初、このむメヌゞは玔粋に機械蚈算の問題を解決しおいたしたが、その埌、オブゞェクト蚀語誕生の滑走路ずなりたした。

このレむダヌは、マシンの問題ず応甚の問題の䞡方で、すぐにいく぀かの問題を解決したした。 したがっお、怜蚎はシングルタスクのむメヌゞから始たり、マルチタスク局に進みたす。

歎史的プログラミングの䞍快な特城の XNUMX ぀は、基本的な抂念を含むほずんどの抂念が定矩なしで䞎えられおいるこずです。 「プログラミング蚀語川の名前には敎数型ず浮動小数点型がありたす...」そしお圌らはさらに匕っ掻きたした。 「タむプ」画像が䜕であるかを定矩する必芁はありたせん。著者自身がこれを完党に理解しおおらず、「明確にするために」それを隠しおいるからです。 壁に固定するず、曖昧で圹に立たない定矩になっおしたいたす。 倖来語の埌ろに隠すのは非垞に圹立ちたす。ロシア人の䜜家の堎合は英語 (タむプ) の埌ろ、むギリス人の堎合はフランス語 (サブルヌチン)、ギリシャ語 (ポリモヌフィズム)、ラテン語 (カプセル化)、たたはそれらの組み合わせ (アドホック ポリモヌフィズム) の埌ろにありたす。

しかし、これは私たちの運呜ではありたせん。 私たちが遞択したのは、玔粋なロシア語でバむザヌを䞊げた定矩です。

むメヌゞ

むメヌゞ は量の固有の名前であり、1) 量の固有の特性、および 2) 量に察する操䜜の遞択を定矩したす。

「タむプ」タむプずいう蚀葉は、定矩の最初の郚分「量の固有の特性」に察応したす。 しかし、この画像の䞻な意味は XNUMX 番目の郚分にありたす。「量に察する挔算の遞択」です。

C に画像を導入するための開始点は、加算挔算などの通垞の蚈算です。

箙 数孊では、手曞きで曞かれたものであれ、印刷されたものであれ、通垞、数倀が実数であるず仮定しお、数倀の皮類をあたり区別したせん。 したがっお、それらの凊理操䜜は明確です。

マシン 数孊では数倀を敎数ず分数に厳密に分けたす。 異なる皮類の数倀は、異なる方法でメモリに保存され、異なるプロセッサ呜什によっお凊理されたす。 たずえば、敎数ず分数を加算する呜什は、XNUMX ぀の異なるプロセッサ ノヌドに察応する XNUMX ぀の異なる呜什です。 ただし、敎数ず小数の匕数を远加するコマンドはありたせん。

適甚枈み 数孊、぀たり C 蚀語は数倀の皮類を分離したすが、挔算は組み合わせたす。敎数や分数の加算は XNUMX ぀のアクション蚘号で蚘述されたす。

コンセプト むメヌゞを明確に定矩するず、他の XNUMX ぀のコンセプトに぀いお明確に話すこずができたす。 倀 О 操䜜.

倧きさず動䜜

倀 — 凊理されおいる番号。

操䜜 — 初期倀匕数の倀を凊理しお、最終的な数倀合蚈を取埗したす。

倧きさず動䜜は盞互に関係しおいたす。 それぞれの操䜜は数倀的な結果をもたらすため、量ずなりたす。 そしお、各倀はプロセッサ レゞスタずの間で倀を転送した結果、぀たり挔算の結果です。 この関係にもかかわらず、重芁なこずは、蟞曞の異なるセクションで 3 ぀の単語が繰り返されるにもかかわらず、それらを別々に蚘述できる可胜性であり、これが MAXNUMX で起こっおいるこずです。

機械的なアプロヌチでは、プログラマヌが䜿甚するすべおの数倀を次のように分割したした。 チヌム О デヌタ。 以前は、䞡方ずも数倀でした。たずえば、コマンドは数倀コヌドで蚘述されおいたした。 しかし、応甚蚀語では、コマンドは数字ではなくなり、 蚀葉で О 行動の兆候。 数倀ずしおは「デヌタ」だけが残りたすが、そのように呌び続けるのは䞍合理です。なぜなら、機械から数孊の芳点ぞの移行においお、数倀は元の数倀で割られた量だからですデヌタ) ず最埌の (必須。 「䞍明なデヌタ」ずいうのは愚かに聞こえるでしょう。

たた、チヌムは数孊的アクションずサヌビス アクションの XNUMX ぀のタむプに分けられたした。 数孊的アクション - 挔算。 公匏の内容に぀いおは埌ほど説明したす。

C 蚀語では、通垞の玙ず機械の明確な数孊的挔算、぀たり単䞀の数孊的挔算が、ほが䟋倖なく耇数になりたす。

耇数の操䜜ずは、異なるタむプの匕数ず、意味が類䌌した異なるアクションを持぀、同じ名前の耇数の操䜜です。

敎数匕数は挔算党䜓に察応し、小数匕数は小数挔算に察応したす。 この違いは、匏 1/2 の合蚈が 0 ではなく 0,5 になる陀算挔算䞭に特に顕著です。 このような衚蚘法は玙の数孊の芏則に察応しおいたせんが、C 蚀語は (Fortran ずは異なり) 芏則に埓おうずはしたせん。独自の芏則に埓っお動䜜したす。 適甚枈み ルヌル。

敎数ず分数が混圚する堎合、正しいもののみが含たれたす 匕数の倀をキャストする — ある画像から別の画像ぞの倀の遞択的倉換。 確かに、敎数ず小数を足すず結果は小数になるので、挔算のむメヌゞは 取る 敎数の匕数を小数倀に倉換する操䜜。

いく぀かの操䜜が残っおいたす 耇数ず 独身。 このような挔算は、3 ぀のタむプの匕数、぀たり陀算剰䜙 - 敎数匕数、スタッキング (ビットごずの挔算) - 自然敎数に察しおのみ定矩されたす。 MaXNUMX は、挔算が定矩されおいる画像を瀺す蚘号 (#^) で挔算の倚重床を瀺したす。 これは重芁ですが、これたであらゆる操䜜で芋萜ずされおきた特性です。

すべおの関数は任意の単䜍操䜜です。 䟋倖は挔算子です - 括匧以倖の関数、蚀語に組み蟌たれおいたす (独自の操䜜)。

宣䌝

宣䌝 - 操䜜に䌎うアクション。

操䜜を䞻なアクションず考えるず、操䜜を提䟛し、それずは異なる 1 ぀の付随するものを区別できたす。 それは、2) 倉動制埡ず XNUMX) 埓属です。 このアクションはず呌ばれたす 揎助.

ここで話が逞れ、プログラミング教科曞のロシア語翻蚳に぀いお個別に述べる必芁がありたす。 行動を蚘録するための新しい単語が K/R のテキストに導入されたした ステヌトメント (匏) では、マシン コマンドの抂念を、1) 操䜜、2) 宣蚀、3) 埓属 (「制埡構成䜓」ず呌ばれる) ずいうさたざたなアクションに分割しようずしたした。 この詊みはロシア語の翻蚳者によっお埋もれ、「匏」が「挔算子」ずいう蚀葉に眮き換えられたした。

  1. 機械語の「コマンド」ず同矩になっおおり、
  2. 「行動の兆候」ずいうフレヌズず同矩であるこずが刀明したした。
  3. たた、無制限の数の远加の倀も受け取りたした。 ぀たり、英語の蚘事「うヌん」のようなものになっおしたいたした。

付随するアクションを怜蚎するか、 揎助.

可倉制埡

可倉制埡 (UP) - 倉数セルの䜜成/削陀。
UE は、倀のむメヌゞを瀺すずいう別の理由ですでに曞き蟌たれおいる倉数を宣蚀するずきに暗黙的に発生したす。 明瀺的に管理されるビュヌは XNUMX ぀だけです 远加の倉数 malloc() 関数ず free() 関数を䜿甚したす。

暗黙的アクションは䜕も曞く必芁がないため、曞くのに䟿利ですが、理解するのがより難しく、考慮に入れお解釈するのがより難しいこずに泚意しおください。

提出

提出 — レむダヌセクションを接続/無効にしたす。

C 蚀語は、アセンブラの埓属ずは異なる、アクションの順序を制埡する応甚的な方法を提䟛したした。 䞻郚埓属節ず埓属郚䞋䜍・サブルヌチン節に明確に分けた耇合音声文を反映・展開したす。

宣蚀ず提出はどちらも完党にコンセプトに基づいお構築されおいたす å±€.

å±€

å±€ は、限定された単䞀レベルの遞択的な匏のセットです。

この局は、明瀺的および暗黙的にいく぀かのタスクを同時に匕き受けたす。

  1. プログラムの線成
  2. 名前の可芖性を暗黙的に制限する、
  3. 倉数メモリセルの管理暗黙的、
  4. 埓属に関する埓属節の定矩、
  5. 関数ず遞択の定矩など。

機械語にはレむダヌずいう抂念がなかったのでK/Rにも登堎したせんでしたし、もし存圚しないものであればその埌の曞籍で導入するこずは異端であり自由思想ずなりたす。 したがっお、非垞に䟿利で非垞に明癜であるにもかかわらず、レむダヌずいう抂念はたったく登堎したせんでした。

レむダヌがなければ、プログラムのアクションやルヌルの倚くを簡朔か぀明確に説明するこずができたせん。 たずえば、なぜ XNUMX コペむカずいう単玔な goto はダメで、トリッキヌな while は良いのかずいうこずです。 ダむクストラのように、無力に誓うこずしかできたせん「プログラマヌのスキルは、プログラム内での goto 文の出珟頻床に反比䟋する関数です。」぀たり、goto を䜿甚するのはダギだけです。正圓化のレベルは神です。確かに、あなたの本があれば、これはそれほど恐ろしいこずではありたせん。私たちは䜕も説明する必芁はありたせんが、すでに述べたように、これは私たちの運呜ではありたせん。

ずころで、ダン・リッチヌは、goto ずいう衚珟には必芁性も矎しさもなかったので、たさに名前のない抂念を怜玢するための鍵ずしお goto を残したものず考えられたす。 しかし、リッチヌ自身が䞎えたくなかった、蚀語の新しい原則に぀いおのシンプルでわかりやすい説明が必芁であり、その抂念はたさにその抂念に基づいおいたした。 å±€.

偏差

偏差 — 新しい名前の通垞のプロパティを倉曎したす。

最も重芁な逞脱は、プログラムのレむダヌ プロパティに正確に関連しおおり、「静的」ずいう XNUMX ぀の単語で衚珟されたすが、レむダヌの皮類ごずに異なる意味を持ちたす。

5. 最終章。 適甚蚀語の共通性

応甚蚀語は、 比喩的な 蚀語画像があり、「入力された」。 これらは、画像の明瀺的たたは暗黙的な䜿甚に基づいおいたす。 さらに、ここでも矛盟が生じたす。明瀺的なむメヌゞは理解しやすいですが、利䟿性は䜎く、その逆も同様です。

マトリョヌシカ C. 階局型プログラム蚀語䜓系

テヌブルレむアりトがただ玍品されおいないため、テヌブルを写真で瀺しおいたす。

C 以降、応甚蚀語の発展は比喩性を高める方向に進みたした。 高床なむメヌゞを理解するために最も重芁なのは、C の盎系の子孫である C++ 蚀語です。 圌は、量に察する操䜜の任意の遞択のアむデアを開発し、新しい名前であるオブゞェクトを受け取った合成匏の遞択に基づいおそれを具䜓化したす。 ただし、C++ は、新しいコレクション型ずそれに関連するルヌルの過負荷により、C ほど簡朔で衚珟力が豊かではありたせん。 さお、「オヌバヌロヌド」に぀いおお話したしょう。

オヌバヌロヌドずポリモヌフィズム

「オヌバヌロヌド」ずいう蚀葉は、 耇数の操䜜.

マシンシステムプログラマヌ 耇数の 「この蚘号 (+) は䜕を意味したすか? 敎数の加算、分数の加算、さらにはシフト?! 私たちの時代にはそんな颚に曞かなかったのに」 したがっお、遞択された単語には吊定的な意味合い「やりすぎ」、「疲れた」が含たれたす。 アプリケヌション プログラマにずっお、耇数の操䜜は基瀎であり、C 蚀語の䞻芁な成果であり遺産であるため、あたりにも自然なこずであるため、認識されおいないこずがよくありたす。

C++蚀語の堎合 耇数の 元の操䜜だけでなく、関数 (個別の関数ずクラスに結合されたメ゜ッド) にも拡匵されたした。 耇数のメ゜ッドにより、拡匵クラスでメ゜ッドをオヌバヌラむドする機胜が远加されたした。これは挠然ず「ポリモヌフィズム」ず呌ばれおいたした。 倚態性ず過負荷の組み合わせにより、爆発的な混合物が生成され、「真」ず「アドホック」ずいう XNUMX ぀の倚態性に分かれたした。 名前が付けられおいるにもかかわらず、これだけを理解するこずは可胜です。 広告ぞの道は倖囜人の名前で舗装されおいたす。

「オヌバヌロヌド」ずいう圢匏の宣蚀は、次の蚀葉でより適切に衚珟されたす。 远加のお知らせ — 異なるむメヌゞの匕数を持぀同じ名前の関数の宣蚀を远加したす。

圢匏の宣蚀は「ポリモヌフィズム」ず呌ぶ方が適切です。 再発衚 — 同じむメヌゞの匕数を持぀同じ名前の関数の新しい拡匵局内の重耇する宣蚀。

そうすれば、異なるむメヌゞ匕数の同じメ゜ッドを理解するのは簡単になりたす。 远加発衚されたした、そしお XNUMX ぀の画像 - 再発衚された.

ロシア語の蚀葉が決める。

滑走路

高床に比喩的な蚀語の抂念を怜蚎するず、基本的な抂念を明確に定矩するこずの重芁性が確認されたす。 C を正しく蚘述すれば、高床な比喩蚀語を簡単に楜しく孊ぶこずができたす。

これは特に重芁です 暗黙の高床に比喩的な蚀語 (PHP、JavaScript)。 圌らにずっお、オブゞェクト (合成むメヌゞ) の重芁性は C++ よりもさらに高くなりたすが、むメヌゞの抂念そのものが暗黙的でずらえどころのないものになりたす。 利䟿性の芳点からはシンプルになっおいたすが、理解の芳点からはより困難になっおいたす。

したがっお、プログラミング蚀語の孊習は C 蚀語から始めお、C ファミリヌの蚀語が登堎する順序で孊習を進める必芁がありたす。

蚀語の蚘述に぀いおも同様です。 さたざたな蚀語の単䜍性別のセットは、C 蚀語ず同じか、C 蚀語よりも少ないです。 型ずサンプルの数は双方向で異なる堎合がありたす。C++ には C よりも倚くの型がありたすが、JavaScript の型は少ないです。

MySQL 蚀語は特筆に倀したす。 共通点は䜕もないように思えたすが、圌はマトリョヌシカによっお完璧に衚珟されおおり、圌を知るこずはより速く簡単になりたす。 珟代のプログラミングの食堂である Web にずっおの重芁性を考えるず、これは重芁なこずです。 そしお、MySQL があるずころには、他の SQL もありたす。 たあ、あらゆる皮類の Fortran-Pascal-Python も Matryoshka を手に入れるずすぐに蚘述されたす。

したがっお、C 蚀語の応甚蚘述ずそれに続く蚀語の統䞀蚘述ずいう玠晎らしいこずが私たちを埅っおいたす。 「私たちの目暙は明確であり、私たちの任務は明確です。 働け、同志たち 嵐のように長く続く拍手、オベヌションに倉わる。党員起立」

あなたの意芋は现心の泚意を払っお耳を傟け、入れ子人圢のりェブサむトの䜜成ぞのあなたの協力に感謝の意を衚したす。 この本に関するより完党な情報は、Matryoshka C に巧劙に隠された Web サむトにありたす。

出所 habr.com

コメントを远加したす