Mana yang terbaik untuk belajar bagaimana melakukan hal tertentu: menulis milik Anda sendiri atau melihat milik orang lain? [Tutup]


8

Seringkali ketika saya menulis kode untuk melakukan hal tertentu, saya dihadapkan dengan menulis sendiri atau menggunakan kode orang lain. Asumsikan di sini bahwa "hal" ini adalah sesuatu yang belum pernah saya lakukan sebelumnya dan saya tertarik untuk mempelajari bagaimana hal itu dilakukan.

Menurut Anda, mana yang lebih baik dari perspektif pembelajaran: cobalah menulis solusi Anda sendiri; atau melihat kode oleh orang lain? Saya selalu menulis kode saya sendiri jika saya punya ide tentang bagaimana melakukannya, tetapi terpaksa melihat orang lain ketika saya tidak memiliki petunjuk. Saya percaya bahwa yang terbaik mungkin kombinasi keduanya: buatlah usaha Anda sendiri dan kemudian lihat bagaimana orang lain melakukannya.

Jawaban:


11

Pertama coba tulis sendiri. Kemudian lihat solusi orang lain.


+1: Setiap pengembang harus tahu bahwa itu jauh lebih sulit jika jawabannya tidak 'di belakang buku'.
Steven Evers

1
Juga, minta saran segera setelah Anda memiliki ide awal, serta setelah selesai menulis versi pertama Anda.
rwong

Pertama melakukannya sendiri membuatnya jelas dalam pikiran Anda 1) apa yang Anda butuhkan dan 2) apa yang harus Anda cari. Kami sangat berhati-hati untuk membiarkan kode asing masuk karena biasanya melakukan hal lain dari yang Anda butuhkan, tapi saya suka sekali perpustakaan Google Guava.

7

Jika saya benar-benar ingin belajar bagaimana melakukan X dan seseorang mendapatkan sampel secara online, memeriksa sampel tersebut benar-benar mempercepat seberapa cepat saya dapat menulisnya sendiri. Melangkah melalui kode mereka memberi Anda satu tempat awal yang memungkinkan di mana kode dapat berakhir. Saya mungkin berakhir dengan kode saya sendiri yang tidak ada di dekat contoh, tetapi contoh membuat saya untuk keputusan itu.

Jika sampel adalah kode emas, maka saya dapat memasukkannya ke dalam apa yang saya lakukan, tetapi 9 dari 10 sampel tidak sesuai dengan yang saya cari. Dalam kasus itu saya akan menggunakan apa yang saya pelajari dengan sampel dan membangun sendiri.


1
+1 untuk meretas sampel pertama ... memiliki sampel yang berfungsi dari sesuatu yang saya tidak punya titik referensi jauh lebih baik daripada mencoba untuk mendapatkan IDEA sambil secara bersamaan mencari tahu semua gotcha kecil
Bill

1
@ Bill - tepat maksud saya!
Walter

1
Saya selalu mencoba memulai dengan cara ini meskipun saya selalu berakhir dengan mencontoh contoh sebelum saya selesai. Saya hampir tidak pernah menemukan contoh dengan jumlah fleksibilitas yang tepat, tetapi melihatnya bekerja dengan keras, atau menghapus versi yang terlalu direkayasa masih membantu saya mendapatkan ide lebih cepat daripada mencoba ke sana dari manual paling sering.
Bill

0

Tergantung pada ukuran solusi yang diperlukan dan umpan balik masyarakat terhadap solusi yang ada.

Menggunakan web dev sebagai contoh, saya bisa menulis forum tetapi tidak akan repot, cukup gunakan solusi terkenal yang terkenal, hampir apa pun yang lebih kecil tulis sendiri.


0

Sesuatu yang berkaitan erat yang baru saya sadari hari ini ....

Hal-hal yang saya pelajari dengan menulis program saya sendiri untuk solusi kehidupan nyata untuk sesuatu tetap dengan saya jauh lebih banyak daripada melakukan sampel / tutorial / latihan hanya demi belajar.

Berjalan melalui tutorial atau contoh sesuatu yang baru bagus sebagai latihan pembelajaran dasar, tetapi jika saya kemudian meninggalkannya dan harus menerapkannya tiga minggu kemudian (tanpa melihat teknologi itu sama sekali sejak itu), saya akan cenderung memiliki untuk hal-hal Google, mengunjungi kembali, mencari, dll, lebih banyak daripada jika saya melakukan program nyata di dalamnya. Hanya ketika saya benar-benar membuat sesuatu dari awal untuk diri saya sendiri dalam bahasa pemrograman atau teknologi tertentu yang benar-benar melekat, dan saya menginternalisasi pengetahuan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.