1. Pembelajaran berdasarkan amalan

Pembelajaran Java berdasarkan latihan

Ada orang yang menyukai CodeGym dengan sepenuh hati, dan ada orang yang membencinya dengan sepenuh hati. Tetapi walaupun pengkritik CodeGym yang paling ganas akan dengan mudah bersetuju bahawa ia mempunyai bilangan tugas yang sangat besar. Dan sebab mengapa terdapat begitu banyak daripada mereka adalah kerana semua latihan CodeGym mempunyai amalan sebagai asasnya .

Pengaturcaraan adalah kemahiran. Tiada siapa yang berkata, "Saya tahu cara memprogram". Setiap pengaturcara berkata, "Saya boleh memprogramkan". Ia adalah kemahiran praktikal, seperti berenang atau bermain catur. Dan anda hanya boleh memupuk kemahiran melalui latihan berterusan.

Itulah sebabnya keseluruhan kursus CodeGym adalah urutan tugas yang semakin sukar. Anda bermula dengan tugasan yang sangat mudah, primitif, dan berakhir dengan tugasan yang paling sukar dan menarik. Kesukaran tumbuh sedikit dengan setiap peringkat. Ini adalah tepat jalan yang akan membawa anda ke matlamat anda untuk menjadi seorang pengaturcara.


2. Jenis tugasan

Pelbagai jenis tugasan menanti anda di CodeGym. Mari kita senaraikan yang utama:

Tugas di mana anda menulis program

Ini adalah tugas yang paling penting dalam kursus. Tahap kesukaran mereka berbeza-beza: daripada tugasan yang paling mudah kepada tugasan yang perlu anda fikirkan.

Matlamat tugasan ini adalah untuk menulis program yang memenuhi syarat dan keperluan yang ditetapkan. Kebanyakan tugas termasuk dalam kategori ini. Untuk kemudahan pelajar CodeGym, kami menandakan tugasan ini mengikut tahap kesukaran mereka: EASY , MEDIUM , HARD and EPIC .

Tugasan EPIC selalunya berdasarkan bahan pembelajaran masa hadapan dalam pelajaran yang anda belum buka kuncinya. Mereka popular dengan pelajar CodeGym yang merasakan kursus itu terlalu mudah untuk mereka. Orang lain hanya boleh melangkau tugasan ini dan kembali kepada mereka kemudian, apabila mereka sudah biasa dengan teori yang berkaitan.

Projek

Kelemahan kepada tugas biasa ialah ia kecil. Selesai dan dilupakan, seperti yang mereka katakan. Oleh itu, jarang sekali mungkin untuk menjadikannya sangat menarik. Tetapi program yang besar sukar untuk diuji: terdapat terlalu banyak cara untuk melaksanakannya.

Itulah sebabnya CodeGym memperkenalkan tugas projek — tugas besar dibahagikan kepada 5-35 subtugas biasa. Anda melaksanakan semua subtugas secara berurutan, dan anda berakhir dengan program yang besar.

Pada penghujung setiap peringkat selepas Tahap 20, terdapat satu tugasan projek besar, yang dibahagikan kepada dua puluh subtugas. Terdapat juga 6 lagi tugasan permainan, yang juga merupakan projek. Dan terdapat satu tugas projek untuk diterima masuk ke latihan dalam talian. Secara keseluruhan, terdapat 27 tugasan projek dalam keseluruhan kursus.

Kuiz

Untuk masa yang lama, CodeGym tidak mempunyai ujian atau kuiz. Pencipta CodeGym memegang pendapat bahawa lulus ujian mencipta "ilusi pengetahuan" pada orang. Orang ramai tidak tahu cara memprogram, tetapi mereka benar-benar yakin sebaliknya, kerana mereka lulus ujian. Orang seperti itu berhenti belajar, kerana "mereka sudah tahu segala-galanya".

Selepas itu, kuiz telah ditambah untuk membolehkan pelajar CodeGym mengenal pasti jurang dalam pembelajaran mereka dengan mudah. Adalah berguna untuk pengaturcara mengetahui nuansa perkara yang mereka bekerjasama setiap hari dalam profesion mereka.


3. Status tugas

Setiap tugas di CodeGym mempunyai status istimewa. Status boleh berubah semasa anda menyelesaikan tugasan.

Setiap tugas CodeGym dikaitkan dengan pelajaran. Pada mulanya, anda tidak akan mempunyai akses kepada sebarang tugasan, yang bermaksud anda tidak akan dapat menyelesaikannya.

Apabila anda membuka pelajaran seterusnya, semua tugasan dalam pelajaran menjadi tersedia untuk diselesaikan, iaitu statusnya berubah kepada "Tersedia".

Jika anda telah menyerahkan tugas untuk pengesahan sekurang-kurangnya sekali, maka statusnya berubah daripada "Tersedia" kepada "Sedang berjalan".

Akhir sekali, apabila anda telah berjaya memenuhi semua keperluan dan pengesah menerima penyerahan anda, maka status tugasan bertukar kepada "Selesai".

Pengguna dengan langganan Mentor Premium mempunyai 3 hari lagi untuk mencuba menulis penyelesaian lain untuk tugas itu. Selepas tetingkap masa tambahan ini tamat tempoh, tugasan beralih ke status "Tertutup", dan status ini tidak akan berubah lagi.


4. Keperluan

Pada tahun-tahun awal CodeGym, apabila anda mengesahkan setiap tugasan anda mendapat hasil yang mudah: ya atau tidak. Program ini sama ada lulus semua ujian atau tidak. Sangat mudah, tetapi tidak sangat membantu.

Semasa orang belajar, adalah sangat penting untuk mereka memahami apa yang mereka lakukan salah dan bagaimana untuk mula melakukannya dengan betul. Oleh itu, sangat masuk akal bahawa jika pelayan tidak menerima penyelesaian anda, maka anda akan bertanya, baiklah, apa yang salah dengannya?

Untuk mendapatkan jawapan kepada soalan ini, anda memerlukan seseorang untuk menyelami penyelesaian anda, menganalisisnya dan memberitahu anda apa yang salah dengannya. Ini akan mengambil masa yang lama dan mahal. Keindahan pengesahan tugas segera ialah anda boleh duduk untuk belajar pada pukul 2 pagi dan semuanya akan berfungsi seperti masa lain.

Itulah sebabnya kami menulis semula semua tugas pada CodeGym. Kini setiap tugas mempunyai bukan sahaja syarat tugas, tetapi juga senarai 5-10 keperluan yang menyempurnakan syarat. Paling penting, setiap keperluan disahkan secara berasingan.

Ini bermakna apabila anda menyerahkan tugasan untuk pengesahan hari ini, anda akan mendapat respons lanjutan: di sebelah setiap keperluan tugasan anda akan melihat ikon khas yang menunjukkan sama ada program anda memenuhi keperluan ini atau tidak. Contoh:

Keperluan

Pendekatan ini sangat memudahkan kehidupan semasa anda mengerjakan tugasan yang memerlukan anda menulis beberapa kelas atau kaedah. Anda akan sentiasa dapat melihat kaedah atau kelas yang anda tulis dengan betul dan yang tidak anda buat.


5. Cadangan

Adakah mungkin untuk membuat tugasan lebih baik entah bagaimana? Bukankah bagus jika, selepas setiap pemeriksaan, anda diberitahu apa sebenarnya yang salah dalam program anda dan mendapat petunjuk tentang cara untuk membetulkannya? Ya, itu akan menjadi keren! Nah, rasa apa? Kami melakukannya di CodeGym 🙂

Kami menangkap berpuluh-puluh kesilapan biasa dengan menyemak setiap keperluan tugasan. Jika program anda membuat kesilapan yang diketahui oleh pengesah, ia membuat pengesyoran — petunjuk tentang cara anda boleh membetulkan penyelesaian anda supaya ia memenuhi semua keperluan.

Cuba pertimbangkan. Kini terdapat kira-kira 1200 tugasan pada CodeGym, dengan jumlah kira-kira 10,000 keperluan. Dan terdapat beberapa cadangan yang dikaitkan dengan setiap keperluan. Beberapa keperluan mempunyai berpuluh-puluh daripadanya. Pengesah CodeGym bersedia untuk membuat lebih 50,000 cadangan untuk penyelesaian pengguna.

Selain itu, semua ini berlaku apabila penyelesaian anda disahkan, yang dalam kebanyakan kes mengambil masa kurang daripada satu saat. Tiada seorang pun boleh berbuat demikian. Ini adalah mentor maya sebenar.

Cadangan

6. Masyarakat

CodeGym memberi tumpuan kepada banyak latihan , yang merangkumi lebih daripada 80% daripada keseluruhan proses pembelajaran. Kami menukar pembelajaran menjadi pencarian yang besar dan menarik (sebenarnya satu siri pencarian).

Tetapi setiap orang berbeza: sesetengah orang belajar dengan cepat, dan yang lain belajar dengan lebih perlahan. Sesetengah orang mendapati bahan baharu mudah, manakala yang lain lebih sukar. Tetapi tugas kami adalah untuk setiap pelajar kami tiba di garisan penamat. Sekurang-kurangnya itulah yang kita perjuangkan.

Di dunia ini, pengaturcara bukan hanya beberapa juta orang yang menulis kod dalam pelbagai bahasa dan mencipta permulaan pada masa lapang mereka. Mereka membentuk rangkaian global, sentiasa berkongsi pengetahuan mereka dengan orang lain, bersedia untuk menjawab soalan dan membantu anda memahami topik yang rumit.

Komuniti pembangun terbesar di dunia — tapak web StackOverflow — lahir daripada keperluan pengaturcara untuk belajar daripada satu sama lain. Konsepnya mudah: anda bertanya soalan dan mana-mana pengaturcara di dunia boleh menjawabnya. Mudah, bukan? 🙂

Di CodeGym, kami percaya bahawa pertukaran pengetahuan antara pelajar adalah amat berharga. Apabila pengaturcara membantu orang lain, mereka sendiri berkembang . Dan tidak ada cara yang lebih baik untuk memahami sesuatu sendiri daripada menerangkannya kepada orang lain. Itulah sebabnya kami telah mencipta bahagian khas di tapak web kami yang direka untuk memberi peluang kepada semua pelajar kami untuk berkongsi pengetahuan mereka dan membantu satu sama lain belajar.

Jadi apa yang anda lakukan jika anda terperangkap dengan tugas terkini? Mencari penyelesaian siap sedia di Internet adalah idea yang tidak baik. Sudah tentu, anda akan mendapat kredit untuk tugas itu jika anda hanya menyalin penyelesaian orang lain atau menggunakan penyelesaian kami yang betul. Tetapi anda tidak akan menutup jurang pengetahuan anda dan itu pasti akan kembali menggigit anda pada masa hadapan.


7. Soalan tentang tugasan

Keperluan , pengesyoran dan mentor maya sangat hebat . Tetapi bagaimana jika pengesah masih tidak menerima penyelesaian anda dan anda tidak pasti apa masalahnya?

Walaupun dalam kes ini, masih ada jalan keluar. Temui bahagian Bantuan . Dalam bahagian tapak web ini, pelajar CodeGym boleh bertanya soalan tentang tugasan, meneroka penyelesaian masing-masing, dan juga memberi nasihat dan petua. Menyiarkan penyelesaian lengkap tidak dibenarkan!

Bunyinya sangat mudah dan asas, tetapi ia sebenarnya agak canggih.

Pertama, setiap soalan boleh mempunyai tugasan yang berkaitan . Ini bermakna tiada gunanya mengharungi semua soalan, jika anda berminat dengan soalan tentang tugas tertentu. Anda sentiasa boleh menggunakan penapis untuk melihat dengan mudah soalan yang berkaitan dengan tugasan yang menarik minat anda sahaja. Hanya masukkan nama tugas dalam bar carian:

Soalan tentang tugasan

Kedua, jika anda mengklik butang "Bantuan komuniti" semasa menyelesaikan tugasan, anda akan segera dibawa ke bahagian Bantuan, di mana anda akan melihat hanya soalan tentang tugas yang sedang anda kerjakan. Jika penyelesaian anda gagal dalam pengesahan tugas, maka soalan diisih dengan cara yang berguna: soalan teratas adalah tentang keperluan yang tidak dipenuhi yang menyebabkan penyelesaian anda gagal.

Butang bantuan

Ketiga, pemalam IntelliJ IDEA menawarkan fungsi yang serupa. Anda boleh mengklik butang "Bantuan" atau tekan kombinasi kekunci Ctrl+Alt+W, yang akan segera membuka bahagian Bantuan dalam penyemak imbas anda. Dan sudah tentu, penapis akan memaparkan hanya soalan tentang tugas yang anda selesaikan dalam IntelliJ IDEA .

Bantuan IntelliJ IDEA

8. Mencipta soalan

Jika anda tidak menemui analisis yang baik tentang ralat anda dalam bahagian Bantuan, maka anda sentiasa boleh membuat soalan anda sendiri. Ini agak mudah dilakukan — anda hanya perlu mengklik butang "Tanya soalan" dan isikan medan yang diperlukan:

Mencipta soalan

Tidak seperti kebanyakan perkhidmatan lain, seperti StackOverflow, Code Ranch, dsb., CodeGym tidak memerlukan anda menjejalkan semua maklumat penting ke dalam tajuk soalan. Tulis soalan anda mengikut apa yang anda suka.

Lagipun, anda tidak perlu menyalin kod anda daripada WebIDE atau IntelliJ IDEA dan menambahkannya pada soalan anda. Apabila anda membuat soalan tentang tugasan, kod penyelesaian anda bersama-sama dengan status pelbagai keperluan tugasan akan ditambahkan secara automatik padanya , iaitu keperluan yang mana penyelesaian anda penuhi pada masa ini dan yang tidak.

Membuat soalan 2

Ini bermakna pelajar CodeGym lain segera melihat semua maklumat yang berkaitan tentang penyelesaian penanya, yang menjadikannya lebih mudah untuk memberikan nasihat yang baik.


9. Kod penyelesaian

Pada banyak tapak, apabila membuat soalan tentang kod, anda perlu sama ada melampirkan arkib dengan fail program pada soalan itu atau menambah semua fail ini pada teks soalan itu sendiri. Hasilnya adalah kekacauan besar yang orang ramai tidak mahu atau tidak dapat menggali.

Mengemukakan soalan dengan cepat dan cekap adalah keseluruhan bentuk seni. Di laman web biasa, anda sama ada perlu menghabiskan setengah jam untuk merumuskan soalan anda, atau menerima hakikat bahawa tiada siapa yang akan menjawab anda. Soalan yang baik tentang tugasan mestilah mengandungi maklumat berikut:

  • Pautan ke tugasan yang sedang diselesaikan oleh penanya
  • Syarat tugas supaya orang lain tidak perlu pergi memburu mereka ke mana-mana
  • Kod penyelesaian — ini boleh termasuk banyak fail
  • Status setiap keperluan tugasan, iaitu apa yang sedang berfungsi dan apa yang tidak.
  • Teks soalan: ini biasanya agak jelas — penyelesaian saya tidak berfungsi dan saya tidak pasti mengapa.

CodeGym memaparkan maklumat ini menggunakan widget khas yang hampir sama dengan widget WebIDE . Lagipun, ia sudah direka untuk memaparkan semua maklumat itu. Nah, mungkin dengan pengecualian soalan itu sendiri.

Kod penyelesaian

Malah, kami menulis widget khas hanya untuk memudahkan anda mengkaji penyelesaian pengguna lain. Dan untuk memudahkan dan menyenangkan pengguna lain untuk memeriksa penyelesaian anda dalam soalan yang anda ajukan.