Mempelajari dasar-dasar pemrograman

Cepat atau lambat, seorang anak yang tumbuh dalam keluarga akan mulai mengganggu ayah atau ibu, yang memprogram di rumah:

- apa yang kamu lakukan
- Apa arti kata ini?
"Dan mengapa ada huruf hijau di sini, dan di sini ada huruf biru?"
Dan tentu saja akan muncul pertanyaan utama:
"Maukah Anda mengajari saya cara memprogram?"

Pertanyaan ini juga ditanyakan kepada saya. Saya belum siap untuk jawaban. Dan dia mulai merenungkan masalahnya. Bagaimana cara melampirkan anak (sekitar sepuluh tahun) ke aktivitas yang menarik dan mempesona ini?

Selanjutnya, beberapa pemikiran tentang hal ini dan apa yang membuat saya ...

Penjelasan kecil, untuk diskusi lebih lanjut. Saya adalah pengembang Java profesional. Saya kenal dengan bahasa dan platform ini. Saya tidak menemukan Java terlalu sulit untuk dipelajari, bahkan sebagai bahasa pemrograman pertama. Seperti bahasa lainnya, Jawa dapat dipelajari secara bertahap, tanpa menyelam langsung ke hutan OOP.

Saya berpendapat bahwa dasar-dasar pemrograman harus dipahami oleh setiap orang modern. Inilah cara mengetahui matematika dalam volume sekolah dasar. Kita semua menggunakan kalkulator dan spreadsheet, tetapi kita masih tahu cara menambahkan dan menggandakan di selembar kertas atau di pikiran. Dan kami mengajarkan ini kepada anak-anak. Hal yang sama terjadi pada pemrograman - seseorang harus memiliki keterampilan algoritme dan memiliki gagasan tentang bagaimana menerapkan algoritma yang ditemukan dalam beberapa bahasa.

Jadi, tugasnya adalah mengenalkan anak pada pemrograman. Akan baik pada saat yang sama untuk tidak menghancurkan minat yang baru jadi. Apa yang berhasil saya temukan:

Gores dan sistem permainan visual lainnya


Secara pribadi, saya tidak pernah menggunakan itu. Saya yakin banyak anak suka bermain dan terlibat di dalamnya. Untuk tujuan saya, ini tidak banyak berguna karena saya melihat di dalamnya terlalu banyak komponen hiburan.

Banyak kursus pelatihan pemrograman online


GeekBrains, JavaRush, Codecademy, dan lainnya. Sekali lagi, karena keterbatasan dalam memperoleh suatu profesi, saya tidak mengambil kursus. Saya melihat materi pemasaran dan pelajaran percobaan mereka. Juga tidak merasa cocok. Entah materi tidak diberikan dari awal, atau pelatihan terlalu fokus pada pekerjaan lebih lanjut. Kesan umum bukan untuk mengajar siswa yang lebih muda, tetapi untuk menguasai profesi.

Literatur pendidikan


Googled buku karya Jacob Fine, "Programming di Jawa untuk anak-anak, orang tua, kakek-nenek." Agak ketinggalan jaman, tapi mungkin sebagai bacaan tambahan cocok. Presentasi terperinci dalam bab-bab pertama tentang cara menginstal dan mengkonfigurasi JDK dan Eclipse tidak akan menginspirasi semua orang untuk belajar lebih lanjut. Secara pribadi, deskripsi seperti itu membuat saya sedih dan tertekan.

Ada juga Java Philosophy Bruce Eckel - tutorial yang bagus. Tetapi saya tidak akan merekomendasikan ini kepada anak-anak.

Jadi, saya tidak dapat menemukan sistem yang ideal untuk mengajar anak ke program, tetapi saya mengembangkan serangkaian kriteria yang harus dia penuhi:

  • presentasi kompleks dari materi - teori, contoh dan tugas-tugas praktis
    materi pendidikan dalam bahasa Rusia
  • belajar bahasa pemrograman modern dan nyata (Jawa)
  • sintaks dan editor kode kesalahan kompilasi sederhana
  • bantuan konteks pada pustaka standar, lebih disukai dalam bahasa Rusia
  • Antarmuka sistem berbahasa Rusia tidak kelebihan muatan dengan alat
  • pesan kompiler dalam bahasa Rusia
  • materi pelatihan dirancang untuk seseorang yang sama sekali tidak terbiasa dengan dunia pemrograman, yaitu, bahkan hal-hal yang sangat jelas harus dijelaskan

Mengenai bahasa Rusia yang berulang kali disebutkan. Banyak yang mungkin keberatan, kata mereka di dunia TI tanpa bahasa Inggris di mana pun, yang artinya perlu diajarkan. Jadi biarkan anak itu mengajar. Termasuk dengan cara ini.

Saya setuju bahwa seorang programmer harus fasih berbahasa Inggris setidaknya pada tingkat "membaca dokumentasi". Tetapi kita tidak berbicara tentang melatih seorang programmer. Hambatan bahasa yang muncul pada tahap pelatihan ini dapat menjadi hambatan yang tidak dapat diatasi dan dengan cepat memadamkan antusiasme anak. Itulah sebabnya saya menganggap Russifikasi segala sesuatu dan segala sesuatu menjadi sangat penting.

Lingkungan belajar yang terintegrasi


Ketika Anda sudah mulai menebak, saya sampai pada esensi artikel. Tidak menemukan yang ideal di dunia sekitar saya, seperti banyak dari kita, saya memutuskan untuk membuatnya sendiri. Jadi bersama kami, programmer telah lama didirikan. Tugas itu tampak menarik dan dapat dilakukan bagi saya dalam waktu yang terbatas dan masuk akal.

Judul proyek ini adalah “kelas Java”. Idenya adalah sebagai berikut. Aplikasi desktop adalah "lingkungan belajar yang terintegrasi." Saya mengunduh, menginstal, dan Anda dapat segera membaca pelajaran, menulis kode, dan menjalankannya.

Teknologi JavaFX Lingkungan dapat dalam tiga mode: membaca materi pendidikan, bekerja dengan kode sumber dan menjalankan program yang sedang berjalan.

Mode: membaca materi pelatihan


Di sini Anda dapat membaca pelajaran dan dokumentasi yang tersedia. Seharusnya mengunduh materi dari penyimpanan online.

Materi akan dilindungi hak cipta. Direncanakan untuk mengembangkan format XML khusus untuk markup teks. Di dalam program, file XML akan dikonversi ke dokumen HTML dan ditampilkan di browser bawaan (WebView). Elemen interaktif akan tertanam dalam halaman. Misalnya, di akhir teks pelajaran akan ada tombol "Buka proyek" yang akan menempatkan lingkungan ke mode edit kode dengan contoh yang dimuat dari pelajaran.

Untuk kelas utama dari perpustakaan standar, seharusnya menulis dokumentasi minimal dalam bahasa Rusia dalam gaya javadoc. Dokumentasi ini juga akan tersedia sebagai bantuan konteks-sensitif dalam editor kode.

Mode: bekerja dengan kode sumber


, . — /, « ...». java-. . . ECJ Eclipse JDT, . , .

richtextfx. code completion .

java- main() , .

:


, , . . .. — .

. :

  • java-
  • java-




, «Java », .

? - ? . ( ) .

.

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


All Articles