Mari kita coba bayangkan kimia tanpa sistem periodik Mendeleev (1869). Berapa banyak elemen yang harus diingat, dan dalam urutan acak ... (Lalu - 60.)
Untuk melakukan ini, pikirkan saja satu atau lebih bahasa pemrograman sekaligus. Perasaan yang sama, kekacauan kreatif yang sama.
Dan sekarang kita bisa mengalami perasaan ahli kimia abad XIX, ketika mereka ditawari semua pengetahuan mereka, dan sedikit dari atas, dalam satu tabel Periodik.

Buku "Matryoshka C. Sistem lapisan bahasa program ”mewakili semua unit bahasa C secara sekilas. Ini memungkinkan Anda untuk mengaturnya, mengoreksi informasi yang sudah ketinggalan zaman, dan bahkan mengklarifikasi konsep program tersebut.
Saat ini, informasi pemrograman perlu disistematisasi bahkan lebih dari elemen kimia 150 tahun yang lalu.
Kebutuhan pertama adalah mengajar. Mendeleev mulai menciptakan sistemnya sendiri ketika dia menghadapi pertanyaan tentang elemen mana untuk mulai mengajar: O, H, N, He, Au ... Pada saat yang sama, lebih mudah baginya - dia mengajar ilmu kimia siswa terbaik - Universitas St. Petersburg. Dan pemrograman sudah diajarkan di sekolah dan akan segera dimulai di taman kanak-kanak.
Kebutuhan kedua adalah pendekatan ilmiah. Menggunakan Sistem Berkala, elemen-elemen baru ditemukan dan informasi tentang yang lama diperbaiki. Dia membantu menciptakan model atom (1911). Dan sebagainya.
Kebutuhan ketiga adalah klarifikasi konsep suatu program.
Pemrograman modern dengan satu kaki macet di tahun 50-an abad XX. Kemudian programnya sederhana, dan mesin dan bahasa mesin sangat kompleks, jadi semuanya berputar di sekitar mesin dan bahasa.
Sekarang yang sebaliknya adalah benar: program itu kompleks dan primer, bahasa sederhana dan sekunder. Ini disebut pendekatan terapan, yang tampaknya semua orang kenal. Tetapi siswa dan pengembang terus meyakinkan bahwa semuanya sama.
Yang membawa kita kembali ke kuliah pertama Mendeleev-docent privat. Apa yang harus dikatakan kepada mahasiswa baru? Dimana kebenarannya? Itu pertanyaannya.
Buku "Matryoshka C. Sistem lapisan bahasa program. " Selain itu, ini ditujukan tidak hanya untuk siswa, tetapi juga untuk programmer yang terlatih, karena merekalah yang harus mencari kebenaran dan membalikkan pandangan dunia, yaitu kita.
Berikut ini adalah ringkasan buku.
1. Pendahuluan
Pada tahun 1969, bahasa C diciptakan, yang telah menjadi bahasa pemrograman mendasar dan tetap bersamanya selama 50 tahun. Kenapa begitu? Pertama-tama, karena C adalah bahasa
terapan yang memberi tampilan program pada
manusia, bukan bahasa
mesin . Prestasi ini diperbaiki oleh bahasa dari keluarga C: C ++, JavaScript, PHP, Java, C #, dan lainnya. Kedua, bahasa yang pendek dan indah.
Namun, bahasa C itu sendiri biasanya dicampur dengan assembler mesin, sehingga menyulitkan dan mengubah persepsi. Ekstrem lainnya adalah pengenaan "filsafat" tertentu pada beban bahasa: prosedural, objek, fungsional, disusun, ditafsirkan, diketik, dan sebagainya. Ini menambah emosi, tetapi tidak membantu menggambarkan bahasa dengan lebih baik.
Kebenarannya ada di tengah, dan untuk bahasa C - ketat di tengah antara persepsi filosofis dan mesin.
Bahasa C tidak independen, ia mematuhi ucapan tertulis biasa, dan pada saat yang sama ia mengontrol bahasa assembler itu sendiri. Posisi ini menggambarkan
model Pidato program , yang menurutnya program ini dibagi menjadi tiga jenis bawahan: pidato, kode, perintah. Bahasa C bertanggung jawab untuk yang kedua, bentuk kode.
Setelah menentukan tempat bahasa dalam program, seseorang dapat mengatur informasi tentang hal itu, yang dilakukan oleh
sistem Layer dari bahasa program , yang mewakili bahasa C dalam semangat sistem Mendeleev - pada satu halaman.
Sistem ini dibangun dengan mempertimbangkan
kesamaan bahasa terapan yang timbul dari subordinasi ucapan mereka. Satu set unit Matryoshka C memungkinkan Anda untuk mendeskripsikan dan membandingkan berbagai bahasa, membuat sejumlah Matryoshkas: C ++, PHP, JavaScript, C #, MySQL, Python, dan sebagainya. Layak dan benar bahwa berbagai bahasa dijelaskan oleh satuan-satuan bahasa dasar.
2. BAB 1. Model pidato program. Bersihkan C
Bab pertama menyajikan
model pidato program , yang mencerminkan pendekatan yang diterapkan. Menurutnya, program ini memiliki tiga jenis berurutan yang jelas:
- speech - pidato langsung dari seorang programmer yang memecahkan suatu masalah,
- code - coding solusi dalam bentuk matematika dalam C (atau lainnya)
- dan perintah - perintah mesin langsung.
Model wicara menjelaskan mengapa C adalah bahasa yang sederhana dan mudah dimengerti. C dibangun dalam gambar dan rupa ucapan manusia yang kita kenal.
Jenis program pertama adalah pidato langsung dari programmer. Wicara sejalan dengan pemikiran manusia. Dengan bantuan ucapan, programmer pemula menulis program - pertama dalam bahasa Rusia, lalu langkah demi langkah menerjemahkan tindakan ke dalam bahasa kode. Dan justru pada model inilah bahasa C dibuat.
Kesimpulan programmer yang diungkapkan dengan ucapan dikonversi menjadi bentuk angka kode. Transformasi ini harus disebut
refleksi , karena ucapan dan kode memiliki sifat yang sama (refleksi - kelahiran - gender). Ini cukup jelas jika kita membandingkan jenis-jenis program (di sebelah kiri) dan kode (di sebelah kanan).

Sangat aneh bahwa refleksi terjadi sangat sederhana - hanya dengan dua jenis ekspresi.
Namun, deskripsi modern bahasa C (dari 1978) tidak mengandung daftar nama yang cukup untuk menggambarkan bahasa secara umum, atau untuk tugas refleksi pada khususnya. Karena itu, kami dipaksa untuk terlibat dalam kreativitas dan memperkenalkan nama-nama ini.
Pilihan kata harus akurat dan jelas. Ini membutuhkan pendekatan khusus, dirangkum sebagai berikut - penggunaan ketat bahasa asli. Untuk bahasa Inggris itu adalah bahasa Inggris, tetapi kami bukan bahasa Inggris. Jadi kami menggunakan apa yang kami miliki dan kami akan mencoba berbicara bahasa Rusia.
Refleksi dilakukan oleh dua jenis ekspresi:
- Perhitungan (HF) - mencerminkan perubahan dalam properti subjek. Properti suatu objek dinyatakan oleh angka, maka aksi pada properti adalah aksi pada angka - operasi.
- pengajuan (Pch) - mencerminkan perubahan dalam urutan tindakan. Prototipe PC adalah kalimat ucapan dengan kalimat kompleks, oleh karena itu, sebagian besar tipe PC dimulai dengan serikat bawahan "jika", "jika tidak", "sampai jumpa", "untuk". Jenis PC lain melengkapi mereka.
Omong-omong, bisakah Anda percaya bahwa dalam deskripsi C tidak ada nama untuk penghitungan ekspresi - apakah mereka hanya disebut "ekspresi"? Setelah ini, tidak adanya nama dan asosiasi untuk jenis pengajuan, dan memang kelangkaan dalam hal nama, definisi dan generalisasi, tidak akan lagi mengejutkan. Ini karena K / R yang terkenal ("bahasa C", Kernigan / Ritchie, 1978) bukan deskripsi, tetapi panduan untuk penggunaan bahasa.
Namun, saya ingin memiliki deskripsi bahasa. Oleh karena itu, ini ditawarkan oleh
sistem bahasa program Layer .
3. BAB 2. Lapisan sistem. Pendek C
Deskripsi apa pun harus akurat dan sangat singkat. Dalam kasus bahasa program, deskripsi frontal sulit.
Di sini kita punya program. Terdiri dari modul. Modul terdiri dari subrutin dan koleksi. Subprogram terdiri dari ekspresi terpisah: deklarasi, perhitungan, pengiriman. Pengajuan - sebanyak sepuluh spesies. Bawahan menghubungkan sublevel dan subrutin. Ada juga beberapa iklan. Namun, deklarasi dimasukkan tidak hanya dalam subprogram dan sublevel, tetapi juga dalam modul dan koleksi. Dan sebagian besar ekspresi terdiri dari kata-kata yang sangat sulit untuk dijelaskan, jadi biasanya mereka hanya diberikan dua daftar - sumber dan kata-kata turunannya, yang harus Anda kenali sepanjang studi dan penerapan bahasa. Tambahkan ke tanda baca ini dan sejumlah ekspresi.
Dalam pernyataan ini, tidak mudah untuk memahami siapa yang berdiri di atas siapa.
Pendekatan hierarkis langsung untuk deskripsi bahasa akan terlalu rumit. Pencarian untuk jalur bundaran mengarah ke deskripsi bahasa berdasarkan sifat bahasa dan sisi perintahnya. Maka lahirlah sistem Layer, yang sebagian bertepatan dengan Tabel Periodik Mendeleev, yang juga merupakan sistem berlapis. Ternyata 42 tahun setelah publikasi (1869), periodisitas sistem dikaitkan dengan
lapisan elektronik (1911, model atom Bohr-Rutherford). Juga, sistem Layered dan Periodic dihubungkan oleh penempatan tabular semua unit pada satu halaman.
Deskripsi unit bahasa adalah ringkas - hanya 10 jenis ekspresi dan 8 jenis unit lainnya, serta bermakna dan visual. Meski tidak biasa untuk kenalan pertama.
Unit bahasa dibagi menjadi 6 level:
- regu - baris tabel
- departemen - grup khusus genera (bagian dari baris pertama)
- jenis - sel (tingkat pembagian utama)
- sub-spesies - pembagi spesies (level langka)
- views - unit formula di bagian bawah sel atau secara terpisah
- pola adalah unit itu sendiri (hanya kata-kata)
Sampel kata-kata dijelaskan oleh
kamus - suatu subsistem terpisah yang terdiri dari enam level yang sama.
Komponen bicara dari bahasa C cukup jelas, meskipun masih layak dijelaskan. Tetapi bagian perintah dari bahasa hanya terhubung dengan kontrol kompilasi, di mana jenis program ketiga dibuat - perintah. Di sini kita sampai pada sisi C-beauty yang paling menarik.
4. BAB BERIKUTNYA. Si cantik
Bahasa C mendasari pemrograman modern. Mengapa Pertama, berdasarkan pidato yang paling konsisten. Kedua, karena dengan baik menghindari keterbatasan pemrosesan mesin angka.
Apa sebenarnya yang ditawarkan Xi? Gambar dan lapisan.
Kata "image" adalah terjemahan dari kata bahasa Inggris "type", yang berasal dari bahasa Yunani "prototype" - "prototype". Di Rusia, kata "type" tidak menyampaikan landasan konsep yang diekspresikan, apalagi dicampur dengan arti resmi "view".
Awalnya, gambar memecahkan tugas mesin murni komputasi, dan kemudian menjadi landasan bagi lahirnya bahasa objek.
Lapisan segera memecahkan beberapa masalah - baik mesin dan yang diterapkan. Oleh karena itu, tinjauan akan dimulai dengan gambar tugas tunggal dan beralih ke lapisan multi-tugas.
Salah satu fitur yang tidak menyenangkan dari pemrograman sejarah adalah bahwa sebagian besar konsep, termasuk yang dasar, diberikan tanpa definisi. "Bahasa pemrograman (nama sungai) memiliki tipe angka yang utuh dan mengambang ..." - dan menggaruknya. Apa itu "tipe" (gambar) tidak perlu ditentukan, karena penulis sendiri tidak sepenuhnya memahami hal ini dan akan disembunyikan "untuk kejelasan". Jika mereka diikat ke dinding, mereka akan memberikan definisi yang kabur dan tidak berguna. Ini membantu untuk bersembunyi di balik kata-kata asing: untuk penulis Rusia - untuk Inggris (tipe), untuk Inggris - untuk Perancis (subrutin), Yunani (polimorfisme), Latin (enkapsulasi) atau kombinasinya (polimorfisme ad-hoc).
Tapi itu bukan nasib kita. Pilihan kami - definisi dengan pelindung terangkat dalam bahasa Rusia murni.
Gambar
Gambar adalah nama prediktif dari kuantitas yang mendefinisikan 1) properti yang tepat dari kuantitas dan 2) pemilihan operasi untuk kuantitas.
Kata "type" (tipe) sesuai dengan bagian pertama dari definisi: "properti yang tepat dari suatu kuantitas". Tetapi makna utama dari gambar adalah di bagian kedua: "pemilihan operasi untuk kuantitas".
Titik awal untuk memperkenalkan gambar dalam bahasa C adalah perhitungan biasa, misalnya, operasi penambahan.
Matematika
kertas , yang ditulis tangan atau dicetak, tidak membuat banyak perbedaan antara jenis-jenis angka, biasanya menganggapnya nyata. Oleh karena itu, operasi pemrosesan mereka tidak ambigu.
Matematika
mesin secara ketat memisahkan angka menjadi bilangan bulat dan angka fraksional. Berbagai jenis angka disimpan secara berbeda dalam memori dan diproses oleh instruksi prosesor yang berbeda. Sebagai contoh, penambahan bilangan bulat dan bilangan pecahan adalah dua perintah berbeda sesuai dengan dua simpul prosesor yang berbeda. Tetapi perintah untuk menambahkan argumen integer dan fraksional tidak ada.
Matematika
terapan , yaitu, bahasa C, memisahkan jenis angka, tetapi menggabungkan operasi: penambahan untuk bilangan bulat dan / atau angka pecahan ditulis dengan satu tanda aksi.
Definisi gambar konsep yang jelas memungkinkan Anda untuk membicarakan dua konsep lainnya:
ukuran dan
operasi .
Nilai dan operasi
Nilainya adalah angka yang sedang diproses.
Operasi - memproses nilai dari nilai awal (argumen) untuk mendapatkan jumlah total (total).
Besarnya dan operasi saling berhubungan. Setiap operasi adalah kuantitas, karena memiliki total numerik. Dan setiap nilai adalah hasil pengiriman nilai ke register prosesor / dari prosesor, yaitu, hasil operasi. Terlepas dari interkoneksi ini, hal utama adalah kemungkinan deskripsi mereka yang terpisah, meskipun dengan pengulangan satu kata di berbagai bagian kamus, yang terjadi di ma3.
Pendekatan mesin membagi semua angka yang digunakan oleh programmer ke dalam
perintah dan
data . Sebelumnya, keduanya adalah angka, misalnya, perintah ditulis dalam kode numerik. Namun, dalam bahasa yang diterapkan, tim tidak lagi menjadi angka dan menjadi
kata dan
tanda tindakan . Hanya "data" yang tetap angka, tetapi untuk terus memanggil mereka begitu konyol, karena ketika bergerak dari komputer ke sudut pandang matematika, angka adalah jumlah yang membagi yang awal (
data ) dan yang terakhir (
dicari ). "Tidak diketahui diberikan" - ini akan terdengar konyol.
Tim juga dibagi menjadi dua jenis tindakan: matematika dan layanan. Tindakan matematika - operasi. Kami akan beralih ke layanan nanti.
Dalam bahasa C, kertas dan mesin yang biasa tidak ambigu, atau tunggal, operasi matematika hampir tanpa kecuali menjadi berganda.
Beberapa operasi - beberapa operasi dengan nama yang sama dengan gambar argumen yang berbeda dan tindakan yang berbeda, serupa.
Argumen integer sesuai dengan seluruh operasi, fraksional - fraksional. Perbedaan ini sangat jelas dalam operasi divisi, ketika ekspresi 1/2 memberikan total 0, bukan 0,5. Catatan seperti itu tidak sesuai dengan aturan matematika kertas, tetapi bahasa C tidak berusaha untuk mematuhinya (tidak seperti Fortran) - ia bermain sesuai dengan aturan yang
berlaku sendiri.
Dalam kasus pencampuran bilangan bulat dan bilangan pecahan, satu-satunya
pengurangan yang benar
dari nilai argumen disertakan - konversi pemilihan nilai dari satu gambar ke yang lain. Memang, ketika menambahkan bilangan bulat dan angka fraksional, hasilnya adalah fraksional, sehingga gambar operasi
memilih operasi konversi argumen bilangan bulat ke nilai fraksional.
Sejumlah operasi tetap tidak
banyak tetapi
tunggal . Operasi tersebut didefinisikan hanya untuk satu jenis argumen: sisanya dari divisi adalah argumen integer, gaya (operasi bitwise) adalah bilangan bulat alami. Ma3 menunjukkan pluralitas operasi dengan tanda (# ^) yang menunjukkan pola yang mendefinisikan operasi. Ini adalah properti penting tetapi sebelumnya diabaikan dari setiap operasi.
Semua fungsi adalah operasi unit yang arbitrer. Pengecualiannya adalah
fungsi operator -
non -
braket yang terdapat dalam bahasa (operasi awal).
Promosi
Bantuan adalah tindakan bersamaan.
Jika kita menganggap operasi sebagai tindakan utama, maka kita dapat membedakan dua yang menyertainya, yang menyediakan operasi dan berbeda dari itu. Ini adalah 1) kontrol variabel dan 2) pengiriman. Tindakan ini disebut
promosi .
Di sini perlu untuk mengalihkan dan secara terpisah mengatakan tentang terjemahan buku teks pemrograman Rusia.
Pernyataan kata baru (ekspresi) diperkenalkan dalam teks K / P untuk merekam tindakan, yang membuat upaya untuk membagi konsep perintah mesin menjadi tindakan yang berbeda: 1) operasi, 2) pengumuman, dan 3) pengiriman (disebut "struktur kontrol"). Upaya ini dimakamkan oleh para penerjemah Rusia, menggantikan "ekspresi" dengan kata "operator", yang:
- menjadi identik dengan kata mesin "tim"
- ternyata identik dengan frasa "tanda tindakan",
- dan juga menerima nilai tambahan dalam jumlah tak terbatas. Artinya, itu berubah menjadi mirip dengan artikel bahasa Inggris "uh ...".
Pertimbangkan kegiatan terkait, atau
fasilitasi .
Manajemen variabel
Manajemen Variabel (UE) - membuat / menghapus sel variabel.
UP terjadi secara implisit ketika variabel dideklarasikan, yang sudah ditulis karena alasan lain - untuk menunjukkan gambar kuantitas. Hanya satu jenis
variabel inkremental yang dikontrol secara eksplisit menggunakan fungsi malloc () dan gratis ().
Perlu dicatat bahwa tindakan implisit lebih nyaman untuk menulis, karena tidak memerlukan penulisan apa pun, tetapi lebih sulit untuk dipahami - mereka lebih sulit untuk diperhitungkan dan ditafsirkan.
Kiriman
Submission - aktifkan / nonaktifkan bagian layer.
Bahasa C mengusulkan cara yang berbeda dari assembler, cara yang diterapkan untuk mengontrol urutan tindakan - penyerahan. Ini mencerminkan dan mengembangkan kalimat kompleks ucapan dengan divisi eksplisit menjadi bagian utama (pengajuan kalimat) dan bagian bawahan (sub-level / subprogram bagian).
Baik pengumuman dan pengiriman sepenuhnya dibangun di atas konsep
lapisan .
Lapisan
Lapisan adalah set ekspresi selektif tingkat tunggal yang terbatas.
Lapisan secara eksplisit dan implisit mengambil sendiri pelaksanaan beberapa tugas sekaligus:
- perampingan program,
- pembatasan visibilitas nama (secara implisit),
- manajemen variabel (sel memori) (secara implisit),
- definisi bagian bawahan untuk subordinasi,
- definisi fungsi dan koleksi dan lainnya.
Dalam bahasa mesin tidak ada konsep lapisan, sehingga tidak muncul dalam K / P, dan jika ada sesuatu yang tidak ada, maka memperkenalkannya dalam buku-buku berikutnya akan menjadi bid'ah dan pemikiran bebas. Oleh karena itu, konsep layer tidak muncul sama sekali, meskipun sangat berguna dan cukup jelas.
Tanpa lapisan, tidak mungkin menjelaskan secara singkat dan jelas banyak tindakan dan aturan program. Misalnya, mengapa goto sederhana seperti tiga kopeck itu buruk, dan rumit sementara bagus. Anda hanya dapat bersumpah tak berdaya, seperti yang dilakukan Dijkstra ("kualifikasi pemrogram adalah fungsi yang berbanding terbalik dengan frekuensi kemunculan pernyataan goto dalam program mereka." Singkatnya, hanya kambing yang menggunakan goto. Tingkat pembenaran adalah Tuhan.) Benar, tidak buruk jika buku Anda mereka tidak perlu menjelaskan apa pun, tetapi, seperti yang telah kami katakan, ini bukan nasib kami.
Ngomong-ngomong, dapat diasumsikan bahwa Den Ritchie meninggalkan goto tepat sebagai kunci untuk mencari beberapa konsep yang tidak disebutkan namanya, karena tidak ada kebutuhan atau keindahan dalam ekspresi goto. Tetapi ada kebutuhan untuk penjelasan yang sederhana dan dapat dimengerti tentang prinsip-prinsip baru dari bahasa yang tidak ingin diberikan oleh Richie, dan yang hanya berdasarkan pada konsep lapisan .Penyimpangan
Deviasi - mengubah properti biasa dari nama baru.Penyimpangan yang paling penting hanya terkait dengan properti lapisan program, dan dijelaskan oleh satu kata "statis", yang memiliki arti berbeda di setiap jenis lapisan.5. BAB TERAKHIR. Bahasa aplikasi umum
Bahasa yang diterapkan adalah bahasa kiasan (memiliki gambar, "diketik"). Mereka didasarkan pada penggunaan gambar secara eksplisit atau implisit. Dan di sini sekali lagi sebuah kontradiksi memanifestasikan dirinya: gambar eksplisit lebih dapat dimengerti, tetapi kurang nyaman, dan sebaliknya.
(Tata letak tabel belum dikirim, sehingga tabel diberikan dalam gambar.)Setelah C, pengembangan bahasa yang diterapkan berjalan dengan cara meningkatkan citra mereka. Yang paling penting untuk memahami definisi tinggi adalah keturunan langsung C - bahasa C ++. Dia mengembangkan gagasan pemilihan operasi yang sewenang-wenang untuk kuantitas dan mewujudkannya berdasarkan ekspresi sy-ekspresif, koleksi yang menerima nama baru - objek. Namun, C ++ tidak sesingkat dan ekspresif seperti C, karena kelebihan koleksi jenis baru dan aturan terkait. Omong-omong, mari kita bicara tentang "kelebihan".Kelebihan dan polimorfisme
Kata overload adalah istilah lama dalam pendekatan mesin yang menunjukkan penciptaan beberapa operasi .Pemrogram mesin (sistem) dapat terganggu oleh banyaknya operasi: “Apa arti tanda ini (+): menambahkan bilangan bulat, menambahkan bilangan pecahan, atau bahkan offset?! Saat ini mereka tidak menulis seperti itu! Karenanya konotasi negatif dari kata yang dipilih ("bust", "lelah"). Untuk seorang programmer aplikasi, banyak operasi adalah landasan, pencapaian utama dan warisan bahasa C, begitu alami sehingga sering tidak disadari.Dalam C ++, pluralitasdiperluas tidak hanya ke operasi asli, tetapi juga ke fungsi - baik individu dan dikelompokkan ke dalam metode - metode. Bersama-sama dengan berbagai metode, menjadi mungkin untuk mendefinisikan ulang mereka dalam kelas-kelas yang diperluas, yang samar-samar disebut "polimorfisme." Kombinasi polimorfisme dan kelebihan memberikan campuran eksplosif, yang tersebar menjadi dua polimorfisme: "true" dan "ad-hoc". Anda hanya bisa mengetahui ini terlepas dari nama yang diberikan. Nama-nama asing membuka jalan menuju iklan.Deklarasi bentuk "overload" lebih baik diungkapkan oleh kata tambah - tambahkan deklarasi fungsi dengan nama yang sama dengan argumen dari gambar lain.Sebuah iklan dari bentuk "polimorfisme" lebih baik disebut kata redeclaration- Deklarasi yang tumpang tindih dalam lapisan ekstensi baru dari fungsi dengan nama yang sama dengan argumen dari gambar yang sama.Maka akan mudah untuk memahami bahwa metode dengan nama yang sama dari gambar yang berbeda (argumen) dideklarasikan ulang , dan dari gambar yang sama dideklarasikan ulang .Kata-kata Rusia yang memutuskan.Landasan pacu
Pertimbangan konsep-konsep bahasa yang sangat kiasan menegaskan pentingnya definisi yang jelas tentang konsep-konsep mendasar. Dengan C yang dijelaskan dengan benar, mempelajari bahasa yang sangat berbentuk akan mudah dan menyenangkan.Ini sangat penting untuk bahasa implisit yang sangat kiasan (PHP, JavaScript). Bagi mereka, pentingnya objek (gambar komposit) menjadi lebih tinggi daripada di C ++, tetapi konsep gambar menjadi implisit dan sulit dipahami. Dari sudut pandang kenyamanan, mereka menjadi lebih sederhana, tetapi dari sudut pandang pemahaman, itu lebih rumit.Oleh karena itu, Anda harus mulai belajar bahasa pemrograman dengan bahasa C dan melanjutkan dalam urutan di mana bahasa-bahasa dari keluarga C muncul.Hal yang sama berlaku untuk deskripsi bahasa. Bahasa yang berbeda memiliki satuan genus yang sama atau lebih kecil dari bahasa C. Jumlah spesies dan sampel dapat berbeda di kedua arah: C ++ memiliki lebih banyak spesies daripada C, JavaScript memiliki lebih sedikit.Bahasa MySQL pantas disebutkan secara khusus. Kelihatannya - tidak ada kesamaan, tetapi ia digambarkan dengan sempurna oleh Matryoshka, dan mengenalnya menjadi lebih cepat dan lebih mudah. Yang penting, mengingat pentingnya untuk web - kantin pemrograman modern. Di mana MySQL, ada SQL lainnya. Nah, segala macam Fortran-Pascal-python juga dijelaskan oleh Matryoshka begitu tangan mereka mencapai., — . « , . , ! (, , . .)»
, . , .