Saya seorang programmer PHP, dan sampai sekarang saya belum perlu mempelajari algoritma ...
Sekarang saya mulai belajar Python (bahasa pemrograman nyata), karena saya perlu menggunakan matplotlib. Apakah masuk akal untuk memulai dengan membaca buku algoritma Python dan kemudian belajar matplotlib dan numpy atau haruskah saya beralih ke matplotlib dan numpy?
Salam Hormat,
learning
python
algorithms
André
sumber
sumber
Jawaban:
Benar. Tanpa mengetahui algoritma, bagaimana Anda akan memahami bagaimana suatu program melakukan apa yang dilakukannya?
Sangat penting untuk memahami pengembangan algoritma sehingga Anda dapat memprogram lebih efisien dan menulis program yang lebih baik. Memulai Anda setidaknya harus tahu dasar-dasar konsep seperti aliran kontrol (mungkin melalui otomat keadaan, tetapi itu tidak selalu diperlukan) dan notasi O Besar dan bagaimana hal itu dapat mempengaruhi kinerja.
sumber
Jawabannya adalah ya dan tidak. Anda tidak perlu mengetahui perincian tentang bagaimana algoritma yang berbeda bekerja atau teori di belakangnya - itulah tugas ilmuwan komputer - tetapi Anda perlu mengetahui dasar-dasarnya, seperti apa algoritma yang tersedia untuk menyelesaikan tugas tertentu dan mana yang terbaik untuk situasi tertentu.
Dalam kasus Anda, Anda bisa mulai menggunakan perpustakaan yang Anda sebutkan - mereka dibangun oleh seseorang hanya untuk membuat hidup lebih mudah bagi orang lain. Anda tentu tidak perlu tahu algoritme yang digunakan untuk membuatnya hanya untuk menggunakannya.
sumber
Ya, sehingga Anda mengerti bagaimana menerapkan satu pendekatan di atas yang lain. Anda juga tidak ingin "menemukan kembali roda" karena ada banyak algoritma yang sudah bekerja. Jika Anda tidak tahu mereka ada di luar sana, Anda akan membuang waktu untuk menemukan solusi yang berpotensi lebih lemah dan bahkan tidak mengerti mengapa itu lebih lemah.
sumber
Algoritma untuk seorang programmer adalah palu untuk pandai besi. Tentu Anda bisa bertahan tanpa dan menggunakan alternatif untuk menyelesaikan pekerjaan, tetapi jika Anda ingin melakukannya dengan benar dan melakukannya dengan baik itu sangat penting.
Hal yang baik tentang algoritma adalah bahwa itu adalah bahasa pemrograman yang independen, jadi pelajari teorinya sekali dan Anda dapat mengimplementasikannya dalam bahasa apa pun. Berikut adalah situs web bagus yang telah saya bangun untuk mulai belajar dari: www.ambesty.com Mereka menggunakan Java tetapi dilengkapi dengan kode contoh untuk dipelajari. Mereka menawarkan algoritma ADT dan Sorting sederhana untuk yang lebih kompleks seperti algoritma kompresi data. Sangat menarik dibaca. Semoga berhasil
sumber
Bergantung pada pengalaman PHP Anda, jika Anda berada pada tahap di mana Anda dapat mengadaptasi konsep pemrograman dasar dari satu bahasa ke bahasa lain, lakukanlah . Ini akan menjadi cara paling efisien untuk menghabiskan waktu Anda.
Baca apa yang perlu Anda lakukan untuk mengintegrasikan Matplotlib , numpy, dan Python. Dan kemudian jika Anda terjebak, terus menyelam lebih dalam. Saya merekomendasikan pesanan ini karena
sumber
Jika Anda mengembangkan aplikasi bisnis (hanya), Dapatkan untuk mempelajari dasar-dasarnya saja, seperti daftar, antrian, penyortiran, pencarian string, dll. Sehingga Anda akan mempelajari terminologi, bagaimana kinerja dipengaruhi dan diukur dan sebagainya. Penggunaan waktu Anda yang lebih baik adalah berfokus pada teknologi baru, pola OO, desain basis data yang efektif, aplikasi. metodologi pengembangan, dan semacamnya!
sumber
Ok - Saya tahu ini bukan apa yang Anda maksudkan, tetapi Anda sudah tahu (bagaimana melakukan) algoritma. Tergantung pada definisi Anda, Anda dapat mengambil setiap program sebagai contoh untuk suatu algoritma.
Jadi jangan takut. Ini berguna untuk mengetahui algoritma dasar, lebih berguna untuk mengetahui struktur data dasar tetapi lebih baik untuk mengetahui desain- "pola". Setelah semua, algoritma dasar dan struktur data akan diimplementasikan dalam kerangka pilihan Anda tetapi pola kemungkinan besar tidak akan ...
sumber
Pelajari python terlebih dahulu jika Anda mau, Anda bisa mempelajari algoritma; Karena algoritma tidak spesifik python - mereka adalah umum semua bahasa.
sumber
Sebelum saya mulai di Universitas, saya percaya saya adalah seorang programmer yang cukup baik, dan saya memiliki beberapa tahun pengalaman kerja. Tetapi setelah saya belajar tentang algoritma dan struktur data di Universitas, saya merasa itu adalah pengetahuan yang harus Anda miliki! Ini penting untuk semua yang Anda lakukan. Meskipun Anda mungkin tidak menggunakan pengetahuan itu secara langsung setiap hari, itu akan tetap di atas kepala Anda, dan itu akan membuat Anda menjadi programmer yang lebih baik.
Anda belajar banyak tentang kinerja, dan meskipun kinerja biasanya bukan yang utama, mengetahui algoritma akan mencegah Anda melakukan hal-hal bodoh, dengan kinerja yang sangat buruk. Meskipun kinerja bukan nomor satu, tidak ada alasan untuk tidak menggunakan pengetahuan itu untuk membuat keputusan yang tepat.
sumber