Berapa banyak yang harus diketahui seorang programmer matematika?

Baru-baru ini, saya berjalan di Web dan bertemu berbagai pendapat tentang apakah seorang programmer benar-benar membutuhkan matematika, dan jika demikian, berapa banyak. Saya akan mencoba merangkum semuanya dan merangkumnya.

Untuk memulainya, perlu dicatat bahwa matematika hadir hampir di mana-mana dalam kehidupan kita. Fisika tanpa matematika tidak terpikirkan - di sini, saya pikir, semuanya jelas, dan tidak perlu dijelaskan. Kimia juga. Dalam biologi, pengaruh matematika jelas kurang, tetapi juga ada di sana (misalnya, struktur tanaman, banyak dari mereka adalah quasifractals). Musik dapat direpresentasikan dalam bentuk matematika. Desain tidak terpikirkan tanpa matematika - geometri selalu hadir - cabang matematika. Apa yang ada - bahkan sejarawan membutuhkan matematika (jika hanya menghitung tanggal).

Benar, ada satu "tetapi": apa itu matematika secara umum? Pertanyaannya sama sekali tidak menganggur, karena pertanyaan "seberapa banyak Anda perlu tahu matematika" agak kabur. Matematika adalah ilmu yang kompleks: yayasan itu sendiri adalah aritmatika, kemudian muncul aljabar, geometri dasar, mat. analisis, geometri analitik. Bagian yang lebih tinggi adalah matematika diskrit, aljabar Boolean, topologi, teori bilangan (aritmatika lebih tinggi) dan banyak bagian lainnya, serta teori probabilitas dan statistik. Sekarang muncul pertanyaan yang lebih jelas: apa yang perlu diketahui seorang programmer dari ini?

Poin pertama tidak dibahas - aritmatika perlu diketahui, tentu saja, untuk semua orang. Tanpanya, mustahil untuk menyusun bahkan program yang paling sederhana, dan memang tidak ada ilmu yang tak terpikirkan tanpanya.

Tapi kemudian semuanya sedikit lebih rumit - bagian-bagian matematika yang dibutuhkan oleh seorang programmer ditentukan oleh spesifikasi dari apa yang dia tulis. Jika Anda perlu menulis studio musik ala Cubase, Anda harus mengetahui fisika suara dan bagian matematika yang terkait dengannya. Jika kita berbicara tentang studio grafis, Anda harus mengetahui geometri secara profesional (dan jika studio tiga dimensi, maka juga topologi dan aljabar matriks). Dan jika kita berbicara tentang permainan tiga dimensi, maka kita perlu mengetahui aljabar vektor dan, di samping itu, mekanika Newton.

Karena pemrograman terutama algoritma, setiap programmer harus tahu betul teori algoritma, teori graf, aljabar Boolean dan matematika diskrit untuk menulis tidak hanya program yang bekerja, tetapi juga yang berfungsi dengan baik. Atau lebih baik: bekerja dengan sangat baik.

Apakah dia benar-benar dibutuhkan atau tidak?


Dan saya akan mengatakan ini secara umum: jika, katakanlah, di zaman kuno, pemrograman sudah ada, programmer pada waktu itu tidak akan hanya mengenal matematika dengan baik. "Pemrogram" seperti itu juga akan dapat mengotak, memagari, mengatur menunggang kuda, menavigasi, mengotak-atik, berbicara delapan bahasa asing, menyusun fugues dan tokkat, dia tahu apa heksameter itu, dia melukis (dengan penekanan pada A) gambar dan banyak lagi . Dan kadang-kadang dia melakukannya pada saat yang sama, dengan kecepatan sedemikian rupa sehingga "intel core" modern diam-diam merokok di sela-sela.

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


All Articles