Saya selalu menyukai fisika, dan saya selalu suka coding, jadi ketika saya mendapat tawaran untuk posisi PhD melakukan fisika numerik (detailnya tidak relevan, itu kebanyakan pemrograman paralel untuk sebuah cluster) di sebuah universitas, itu tidak ada - Otak untuk saya.
Namun, seperti kebanyakan fisikawan, saya belajar sendiri. Saya tidak memiliki pengetahuan latar belakang yang luas tentang cara membuat kode dengan cara yang berorientasi objek, atau nama algoritma tertentu yang mengoptimalkan pencarian di beberapa pohon kD.
Karena semua pekerjaan saya sejauh ini lebih mementingkan fisika dan hasil ilmiah, saya tidak diragukan memiliki kebiasaan buruk - lebih karena pengkodean saya adalah milik saya sendiri, dan bukan benar-benar kerja tim. Saya sebagian besar menggunakan C karena sangat mudah dan "apa yang Anda tulis adalah apa yang Anda dapatkan" - tidak perlu untuk abstraksi mewah. Namun, saya baru saja beralih ke C ++ karena saya ingin belajar lebih banyak tentang kekuatan yang datang dengan abstraksi, dan itu cukup seperti C (setidaknya sintaksis setidaknya).
Bagaimana cara saya belajar kode dengan cara abstrak yang bagus seperti lulusan ilmu komputer?
Saya tahu kode saya efisien, tetapi saya juga ingin menjadi elegan , dan mudah dibaca. Perlu diingat bahwa saya tidak punya waktu untuk membaca beberapa buku tebal 1000 halaman tentang pemrograman abstrak. Saya perlu meluangkan waktu untuk penelitian aktual yang berhubungan dengan fisika (penyelia saya akan menertawakan saya jika dia tahu saya menghabiskan waktu memikirkan bagaimana memprogram dengan elegan). Bagaimana saya menilai jika pekerjaan saya juga bagus dari sudut pandang programmer?