Saya selalu bertanya pada diri sendiri "apa prinsip pertama dari ini?" setelah saya mempelajari hal-hal dasar dari sesuatu (mis pemrograman). Ini adalah pertanyaan yang menginspirasi, IMO, yang dapat memaksa Anda untuk memikirkan prinsip paling penting di balik sesuatu, terutama keterampilan seperti pemrograman.
Jadi, apa yang Anda pikirkan adalah prinsip pertama pemrograman? Saya akan memberikan jawaban saya di bawah nanti.
programming-languages
Weipeng L
sumber
sumber
Jawaban:
sumber
Tulis kode seperti jika Anda yang harus mempertahankan kode itu.
sumber
Menjadi malas mungkin.
sumber
Zen, bagian I: Pemrograman hanya jalan, bukan jalan.
Pemrograman hanyalah teknik untuk mengajarkan komputer apa yang harus dilakukan. Agar berhasil dalam menciptakan perangkat lunak yang cepat dan andal berarti mengetahui algoritme, praktik terbaik, dan semua hal lainnya yang belum tentu terhubung ke Pemrograman (bahasa) Anda.
Zen, bagian II: Jika Anda terburu-buru, berjalanlah perlahan-lahan. Jika Anda benar-benar terburu-buru, lakukan jalan memutar.
Kedengarannya konyol, tapi jangan biarkan diri Anda masuk ke kompromi yang (benar-benar) dapat mengganggu Anda setelahnya. Saya mendapat aturan: Jika Anda adalah inti dari suatu program, cobalah untuk setepat dan sebaik mungkin. Jika Anda menggunakan metode dari inti yang jauh di dalam perangkat lunak Anda, cobalah untuk lebih cepat dalam pengkodean. Jika Anda melakukan pengkodean di atas keduanya, Anda bahkan bisa sedikit lebih ceroboh.
Kesalahan desain adalah yang paling sulit ditemukan dan / atau diperbaiki, langkah selanjutnya adalah kesalahan pemrograman pada bagian yang diandalkan semua orang, kemudian "bagian perangkat lunak pamer yang nyata". Jika Anda perlu memperbaiki kesalahan desain di akhir proyek, ummm, itu tidak baik ... ;-)
Zen, bagian III: Ketahui jalanmu, Neo.
Ketahui lingkungan, alat, dan hal-hal yang Anda andalkan setiap hari dan lakukan penyortiran agar berfungsi untuk Anda. Terbaik jika Anda menggunakan "lingkungan" pemrograman Anda begitu alami sehingga Anda bahkan tidak perlu memikirkannya. Jika Anda harus menyelesaikan pekerjaan, jangan memperkenalkan "barang baru yang mewah" tetapi lakukan pekerjaan Anda. Barang-barang ini dapat diperkenalkan dalam proyek baru, yaitu saat Anda memiliki waktu untuk mempersiapkan dan menggunakannya.
sumber
Kiss (tetap simpel, bodoh).
Memang mengajukan pertanyaan "Bagaimana Anda mendefinisikan sederhana?" Dan juga "Kapan ada sesuatu yang terlalu sederhana untuk tugas yang dihadapi?" Inilah sebabnya mengapa Anda tidak bisa menjadi programmer yang baik hanya dengan mengetahui prinsip pertama pemrograman.
sumber
sumber
Jangan menemukan kembali roda.
sumber
Pahami masalahnya dulu!
sumber
YAGNI - Kamu Tidak Akan Membutuhkannya . Gagasan di balik YAGNI adalah memprogram untuk kebutuhan Anda, bukan untuk fitur potensial yang prospektif. Premisnya adalah bahwa dengan mempertahankan apa yang Anda perlu program, Anda akan (antara lain) memotong kode mengasapi, mengurangi kompleksitas, menghindari fitur creep, dan mengurangi pembatasan pada apa yang dapat dilakukan (dan bagaimana hal itu dapat dilakukan) di masa depan.
Saya kira itu bekerja bersama-sama dengan desain modular: Fitur masa depan dapat ditambah tanpa mendesain ulang kode yang ada.
sumber
Mengetahui kapan tidak memprogram.
sumber
Kopi masuk, keluar kode.
sumber
Jika tidak diuji, itu rusak.
sumber
- Charles Antony Richard Hoare
sumber
Bedakan antara sebab dan akibat (bekerja dengan komputer)
Bedakan antara fakta dan pendapat (bekerja dengan orang)
Sesederhana mungkin, tetapi tidak sederhana (desain)
sumber
Pemrograman adalah cara, bukan tujuan. Atau mungkin, "Bisa bukan berarti harus."
sumber
sumber
Menurut pendapat saya, prinsip yang paling penting adalah pengurangan kompleksitas dengan menciptakan abstraksi yang baik .
Ini termasuk
tetapi juga penentuan titik di mana berhenti membuat abstraksi dan turun ke sifat dasar dari teknologi implementasi (misalnya sistem database, bahasa pemrograman) untuk mencegah penciptaan kompleksitas tambahan yang dapat dihindari.
sumber
Program dengan audiens dalam pikiran. Dengan itu, jangan berasumsi bahwa apa pun yang Anda tulis tidak akan dibaca dan dikelola oleh Anda atau orang lain.
Sebagai akibatnya: Buktikan bahwa Anda memahami masalah yang Anda coba selesaikan dengan memberi nama variabel dan fungsi dan kelas Anda dengan baik!
sumber
itu tidak bekerja sampai Anda menunjukkannya dalam ujian
sumber
Pikirkan dulu, kode nanti.
Anda sama sekali tidak sepintar yang Anda kira. Mengajukan pertanyaan. Belajarlah untuk menghargai rekan-rekan Anda.
Saat debugging, jawaban pertama hampir selalu salah.
Kode yang Anda tulis dengan tujuan membuang cenderung menjadi landasan proses yang jauh lebih besar. Jangan pernah meninggalkan apapun yang ditulis sembarangan.
sumber
Setiap masalah dapat diselesaikan dengan lapisan tipuan lainnya.
sumber
Ketahui alat Anda.
sumber
Prinsip: Perangkat Lunak adalah Pengambilan Pengetahuan .
Konsekuensi: Banyak teknik untuk representasi pengetahuan, semua didasarkan pada Abstraksi . Memberi kami lapisan, tingkatan, enkapsulasi, pemisahan masalah.
Banyak teknik untuk representasi prosedur, semua didasarkan pada Sequence , Choice , Repetition .
sumber
Tulis kode untuk orang berikutnya.
sumber
Selalu tulis kode seolah-olah orang yang akan mempertahankannya adalah pembunuh berantai psikotik yang tahu di mana Anda tinggal
Juga, jangan pernah berpikir Anda tahu segalanya tentang pemrograman, teruslah belajar
sumber
Saya masuk ke pemrograman dengan cara belajar elektronik digital, jadi saya kira bagi saya gerbang logika dasar (bukan, dan, atau, menyiratkan, menyiratkan) adalah prinsip-prinsip pertama pemrograman.
sumber
Ini semua tentang pengguna.
sumber
Garbage in - Garbage Out Tidak peduli seberapa bagus antarmuka pengguna Anda jika datanya buruk.
sumber
KERING, hampir semuanya memunculkan darinya. KISS adalah ujung lain dari tindakan penyeimbangan untuk memastikan Anda tidak mengejar keanggunan perangkat lunak ke tingkat kegilaan.
sumber
Mulailah dengan output dan bekerja mundur.
sumber