Blok pemrograman

gambar
Halo Saya akan memulai artikel dengan penyimpangan kecil. Apakah Anda kecewa ketika pertama kali menemui pemrograman? Saya berasumsi bahwa pembuatan program terjadi melalui interaksi dengan beberapa alat yang kompleks, tetapi sangat menarik, di mana saya dapat melakukan hal favorit saya (mengumpulkan konstruktor) di tingkat yang baru. Namun, sebagai gantinya, saya harus belajar cara menulis file teks yang terdiri dari berbagai operator, tanda kurung, string, dan konstruksi teks lainnya. Puluhan tahun berlalu, saya belajar memprogram, dan saya sudah melupakan kekecewaan ini, tetapi ketika saya melihat berita tentang Google Blockly dan Scratch di jaringan, saya merasa nostalgia ...

Alat-alat ini, bahkan tanpa mengaku sebagai profesional, sangat menarik! Tidak ada teks dan kompilasi - Anda menyeret blok dan langsung mendapatkan hasilnya. Bisakah ini dilakukan untuk para profesional? Saya yakin Anda bisa! Dan dalam artikel ini saya ingin menyampaikan visi saya tentang caranya.

Apa gunanya


Jika kita menjauh dari cara uji penulisan program, kita perlu memisahkan struktur kode program dan jenisnya ...

Bagaimana itu?


Untuk melakukan ini, pertama-tama, kita perlu menyimpan kode sumber dalam bentuk yang berbeda. Mereka harus berupa deskripsi instruksi dan data program dalam salah satu bentuk penyimpanan data yang ada, seperti json, xml atau lainnya. File ini (Gambar 1, kiri) dapat memiliki penampilan yang agak jelek dan tidak menyerah pada cara yang masuk akal untuk langsung mengeditnya, namun, dalam lingkungan pemrograman itu akan berubah menjadi kode blok (Gambar 1, kanan).

gambar

Lingkungan pemrograman itu sendiri tidak berurusan dengan kode teks, tetapi dengan "blok" dari mana kode program dibuat.

Apa yang akan memberi kita?


1. Pertama, kita akan menyingkirkan perbedaan yang tidak signifikan dalam sintaksis berbagai bahasa. Misalnya, blok kode dalam C ++ dipisahkan oleh kurung kurawal, dan Ruby memperhatikan kata kunci ... Di editor, Anda dapat mengonfigurasi kedua jenis program, tidak ada yang akan berubah di dalamnya. Pengaturan tampilan pribadi akan memungkinkan pengembang untuk melihat program yang dia suka. Selain itu, kita dapat menggunakan karakter apa pun dalam penamaan, termasuk spasi.

gambar

2. Kedua, kecepatan penulisan suatu program akan meningkat. Sekarang, untuk menulis pernyataan for dalam bahasa C-like, kita perlu menulis untuk teks itu sendiri, kemudian tanda kurung, parameter, titik koma, kurung kurawal, dan tekan enter. Dalam versi kami, lingkungan pemrograman, dengan mengklik kombinasi tombol tertentu, menyisipkan siklus dan hanya perlu memasukkan parameternya. Misalnya, menekan "f" akan menempatkan loop for di tempat kursor dan menawarkan untuk memasukkan jumlah pengulangan dan nama penghitung melalui tabulasi dengan menekan tombol enter di akhir.

gambar

3. Ketiga, dimungkinkan untuk memastikan independensi dari bahasa pemrogram. Operator bahasa dapat ditunjukkan dengan beberapa karakter, atau kata kunci dapat ditampilkan dalam bahasa asli programmer. Jika dia ingin operator dipanggil dalam bahasa Inggris, Rusia atau dalam bahasa lain, dia memilih bahasa ini dalam pengaturan editor dan nama-nama operator berubah "on the fly". Adapun nama-nama objek dan metode, itu lebih rumit, tetapi dalam hal apa pun, jika program ini dikembangkan oleh pengembang Rusia, Anda dapat menyebutkan semuanya dalam bahasa Rusia - jika Anda memilih skenario ini tidak akan ada perbedaan antara nama-nama operator dan nama-nama objek dan metode - semuanya akan ada dalam bahasa Rusia. Ini dapat menyederhanakan pembelajaran bagi siswa dan orang dewasa yang tidak terbiasa dengan bahasa Inggris. Dan selain itu, dalam tim multinasional dimungkinkan untuk menggunakan dua nama untuk penamaan objek dan metode - dalam bahasa Inggris dan dalam bahasa pengembang.

gambar

4. Keempat, dimungkinkan untuk memperbarui struktur program. Jika beberapa fitur baru muncul di versi baru standar yang mengubah tampilan desain blok, dimungkinkan untuk merilis tambalan untuk program lama yang secara otomatis akan membawa mereka ke tampilan baru. Pada Gambar 4, Anda bisa melihat konstruksi bahasa lama mana yang bisa diubah oleh lingkungan pemrograman ke bentuk baru.

gambar

gambar

5. Kelima, dimungkinkan untuk merepresentasikan struktur program dengan cara yang mudah. Misalnya, dalam bentuk ruang tiga dimensi yang melaluinya Anda dapat menavigasi seperti game komputer dan mengedit hubungan kelas dan objek tiga dimensi.

Lingkungan pemrograman


Cara menyajikan program ini tidak lagi memungkinkan untuk mengubahnya dalam editor teks sederhana. Untuk mengedit program, Anda memerlukan lingkungan pemrograman khusus. Mengembangkan versi pertama dari lingkungan pemrograman ini lebih sulit daripada bahasa tradisional, tetapi ada cara untuk memulai dengan lebih mudah. Misalnya, Anda bisa mulai dengan editor file data, yang memungkinkan Anda untuk mengedit file format apa pun (xml, json, yaml, dll.) Dengan cara yang sama - menggunakan blok. Dalam hal ini, pengguna akan terhindar dari kebutuhan untuk mempelajari sintaksis file-file ini dan akan dapat mengedit salah satunya dengan belajar mengedit file data hanya dalam program ini.

Kemudian akan ada tugas mengembangkan kompiler yang dapat "on the fly" membangun program selama pengeditannya. Dan di masa mendatang, akan lebih mudah untuk menyediakan fungsionalitas pelengkapan otomatis dan menambahkan fungsi ke lingkungan pengembangan yang membutuhkan pengetahuan "mendalam" dari kode program, karena Anda tidak perlu menguraikan kode teks. Selain itu, lingkungan pemrograman akan "mengetahui" segala sesuatu yang diperlukan tentang program untuk penyorotan sintaksis dan refactoring yang lebih baik, karena semua data yang diperlukan untuk ini dapat disimpan tanpa terlihat oleh pemrogram dalam file data program.

Kesimpulan


Saya yakin bahwa metode pemrograman yang dijelaskan akan membuka peluang besar bagi programmer dan akan sangat mempercepat dan menyederhanakan pengembangan aplikasi. Namun, satu di lapangan bukan seorang pejuang. Mengembangkan produk semacam itu membutuhkan pendekatan dan sumber daya yang kuat. Saya seorang penyendiri dan bekerja dari jarak jauh - proyek ini terlalu sulit bagi saya ... Mungkin jika Anda tertarik padanya, bisakah kita bekerja sama?

Source: https://habr.com/ru/post/id469337/


All Articles