Saya telah berlatih coding untuk sementara waktu, tetapi masalahnya adalah saya butuh banyak waktu untuk menulis solusi untuk masalah tersebut. Saya ingin bertanya apakah pemrograman kompetitif dapat membantu saya meningkatkan ini.
Jika ya, lalu bagaimana saya harus memulai dan dari situs web mana saya dapat menggunakan (seperti TopCoder )? Saya jelas tidak akan dapat memecahkan masalah yang sangat sulit untuk saat ini. Apa yang harus saya lakukan?
Jika tidak, apa lagi yang harus saya lakukan?
Saya juga memiliki masalah lain yang ingin saya pelajari tentang pengkodean, tetapi masalahnya saya merasa tidak terlalu baik. Apa yang harus saya lakukan? Ini seperti menggangguku dari dalam.
Saya tahu beberapa orang mungkin tidak menemukan pertanyaan ini informatif tetapi tolong setidaknya izinkan saya untuk mendapatkan jawaban.
sumber
Jawaban:
Ya, itu bisa, dan diberikan waktu yang cukup, pasti akan. Namun, kecepatan bukanlah keterampilan terpenting yang akan Anda tingkatkan. Dari pengalaman saya berpartisipasi dengan TopCoder selama 10+ tahun, keterampilan paling penting yang akan Anda ambil dari pemrograman kompetitif adalah kemampuan untuk menulis potongan kode sederhana dengan benar pertama kali, tanpa menggunakan debugger.
Gunakan ruang latihan untuk Divisi 2. Level 1 dari Div 2 biasanya "kontes mengetik", dalam arti bahwa Anda segera mencari solusi, jadi tugas Anda menjadi mengkodekannya secepat mungkin. Kebanyakan penugasan kehidupan nyata seperti itu. Anda akan segera menyadari bahwa debugger adalah "saluran waktu" terbesar, sehingga Anda secara alami akan berusaha untuk menyelesaikan kode Anda tanpa melakukan debug. Ini akan membuat frustasi pada awalnya, tetapi akan membaik seiring waktu. Dibutuhkan beberapa ratus masalah level-1 untuk menjadi ahli dalam hal itu, jadi jangan menyerah.
Debugging di kepala Anda adalah keterampilan yang akan membantu Anda dalam pekerjaan nyata Anda: sementara kecepatan pengkodean tidak penting, kemampuan untuk menulis snipet kode yang benar tanpa debugging akan membantu Anda melakukan transisi dari baik ke luar biasa.
sumber
Sebagai programmer pemula, Anda harus lebih mementingkan kualitas kode Anda daripada kecepatan menulisnya. Anda harus mengerjakan proyek sendiri untuk mengembangkan keterampilan Anda. Anda dapat menindaklanjutinya dengan meninjau proyek sumber terbuka untuk melihat bagaimana orang lain menulis kode dan mungkin mulai berkontribusi pada proyek sumber terbuka.
Dalam 25+ tahun saya mengembangkan kode pada berbagai platform dan domain bisnis, saya tidak pernah menemukan kasus di mana kecepatan penulisan kode saya lebih penting daripada kualitas dan stabilitas kode saya.
sumber