Ada satu jebakan keterbacaan kode yang mudah dihindari begitu Anda menyadarinya, namun jebakan itu meresap: menghilangkan unit. Pertimbangkan tiga cuplikan berikut dalam Python, Java, dan Haskell:
Berapa lama program ini tidur? Program Python tidur selama lima menit, program Java tidur selama 0,3 detik, dan program Haskell tidur selama 0,3 milidetik.
Bagaimana Anda bisa mengetahuinya dari kode ? Anda tidak bisa. Anda hanya perlu hafal bahwa time.sleep
membutuhkan beberapa detik, sedangkan threadDelay
membutuhkan waktu mikrodetik. Jika Anda cukup sering mencarinya, pada akhirnya pengetahuan itu akan melekat, tetapi bagaimana kita bisa menjaga agar kode tetap dapat dibaca bahkan untuk orang yang belum pernah bertemu time.sleep sebelumnya?
Opsi 1: pasang unit dalam nama
Alih-alih ini:
def frobnicate(batas waktu: int) -> Tidak ada: ...frobnicate(300)
Melakukan hal ini:
def frobnicate(*, timeout_seconds: int) - > Tidak ada:
# memaksa penelepon untuk menggunakan argumen bernama # untuk semua argumen setelah *. ...frobnicate(timeout_seconds=300)
Dalam kasus pertama, kami bahkan tidak dapat mengatakan di situs panggilan bahwa 300 adalah batas waktu, tetapi bahkan jika kita tahu itu, itu adalah batas waktu 300, apa? Milidetik? Detik? hari di Mars? Sebaliknya, situs panggilan kedua sepenuhnya cukup jelas.
Menggunakan argumen bernama bagus untuk bahasa yang mendukungnya, tetapi ini tidak selalu memungkinkan. Bahkan dalam Python, di mana time.sleep didefinisikan dengan satu argumen bernama dtk
karena alasan implementasi. Dalam hal ini, kita dapat memberikan nilai sebuah nama sebagai gantinya.
Alih-alih ini:
Melakukan hal ini:
sleep_seconds = 300waktu.tidur(sleep_seconds)
Sekarang kodenya tidak ambigu, dan dapat dibaca tanpa harus membaca dokumentasi.
Opsi 2: gunakan tipe kuat
Alternatif untuk menempatkan unit di name, adalah menggunakan tipe yang lebih kuat daripada integer atau float. Misalnya, kita mungkin menggunakan tipe durasi.
Alih-alih ini:
def frobnicate(batas waktu: int) -> Tidak ada: ...
frobnicate( 300)
Melakukan hal ini:
def frobnicate(batas waktu: timedelta) -> Tidak ada: ... batas waktu = delta waktu(detik=300)
frobnicate(batas waktu)
Untuk angka floating-point tertentu, Anda perlu diberi tahu di luar pita apa unit untuk dapat menafsirkannya . Jika Anda beruntung, informasi ini ada dalam nama variabel atau argumen, tetapi jika Anda tidak beruntung, informasi ini hanya ditentukan dalam dokumentasi — atau tidak ditentukan sama sekali. Tetapi untuk nilai timedelta, tidak ada ambiguitas tentang bagaimana menafsirkannya, ini adalah bagian dari jenisnya. Ini juga menghilangkan ambiguitas dari kode.
Cakupan
Saran untuk menggunakan tipe kuat atau untuk menempatkan unit dalam nama tidak terbatas pada variabel dan argumen fungsi , ini berlaku untuk API s, nama metrik, format serialisasi, file konfigurasi, flag baris perintah, dll. Dan meskipun nilai durasi adalah kasus yang paling umum, saran ini tidak terbatas pada itu, tetapi juga berlaku untuk jumlah moneter, panjang, data ukuran, dll.
Strategi Kode Rendah Pratt & Whitney untuk Menghemat… Produsen mesin kedirgantaraan Pratt & Whitney memperluas penggunaan sumber daya berkode rendah untuk merampingkan proses operasional tertentu dan membuat penggunaan memori institusional veterannya secara lebih efisien. Dengan hampir satu abad…
Mesin waktu: Solaris 2.6 di QEMU Sebagian besar karir profesional saya di tahun 1990-an dihabiskan dengan Sparcstation di meja saya. Sebelum itu 68000 Sun2 dan Sun3 melayang melewati jari-jari saya yang lengket tetapi mesin Sparc dengan…
Turunkan Berat Badan Sehat dan Tetap Produktif di… Menurunkan berat badan di usia lanjut memang bukan perkara mudah. Namun, bukan berarti mustahil. Format Cuti Pegawai dan cara yang tepat, Anda bisa menurunkan berat badan dan hidup lebih sehat.…
Intro ramah pemula untuk pemrograman Java ini hanya… StackCommerce Kami mengunduh lebih banyak aplikasi pada tahun 2021 daripada sebelumnya. Dan tren menunjukkan bahwa kami akan mengunduh lebih banyak lagi tahun ini. Inti nya? Jika Anda mencari karier yang…
Rahasia Cepat Langsing Tanpa Olahraga: Tips Alami… Cara Menurunkan Berat Badan Cepat dan Alami Tanpa Olahraga Apakah Anda merasa frustasi dengan berat badan yang terus bertambah dan tidak tahu bagaimana cara menguranginya tanpa harus berolahraga? Tenang, Anda…
Masalah tahun 2038 masih hidup dan sehat Masalah tahun 2038? Bukankah itu seharusnya diselesaikan sekali dan untuk semua tahun yang lalu? Tidak cukup. Apa itu masalah Tahun 2038 ? Wikipedia menjelaskannya dengan baik, tetapi TL;DR bermuara pada,…
AS, Israel Mencari Persatuan dalam Membendung… Penasihat keamanan nasional Biden melakukan perjalanan ke Israel, di mana para pejabat mendorong pendekatan yang lebih kuat ke Teheran jika pembicaraan nuklir gagal Baca selengkapnya
Rahasia Jitu Menjaga Kesehatan di Musim Hujan! Saat musim hujan, berbagai penyakit mudah menyerang. Agar tetap sehat, ikuti tips berikut ini. Musim hujan seringkali membuat kita merasa tidak nyaman. Bagaimana tidak, selain udara yang dingin dan lembap,…
Rahasia Tidur Cepat: Meraih Malam Tenang dalam… Tahukah Anda bahwa tidur yang nyenyak dapat membantu Anda menjalani hari yang lebih produktif? Namun, bagi sebagian orang, mendapatkan tidur yang nyenyak bukanlah hal yang mudah. Jika Anda termasuk salah…
Rahasia Cepat Langsing: Tips Praktis untuk… Mau Cepat Langsing? Ikuti 5 Tips Ampuh Ini! Bagi sebagian orang, memiliki berat badan ideal merupakan sebuah dambaan. Namun, menurunkan berat badan bukanlah perkara mudah. Dibutuhkan kedisiplinan dan usaha yang…
Rahasia Diet Sehat dan Tidur Nyenyak untuk Hidup… Tips Diet Sehat Sebelum Tidur Agar Tidur Lebih Berkualitas Pernahkah Anda merasa kesulitan tidur di malam hari? Atau Anda sering terbangun di tengah malam dan sulit untuk tidur kembali? Jika…
Bagaimana program Cashback dan loyalitas bekerja di… Kasino online modern memiliki banyak hal untuk itu. Dari permainan hingga undian dan promosi, mereka memiliki banyak hal untuk ditawarkan. Bahkan, mereka semua menawarkan jenis produk atau layanan yang hampir…
Rahasia Sehat: Metode Hidup Sehat yang Terbukti… Hidup Sehat: Kunci Kebahagiaan dan Produktivitas Di dunia yang serba cepat ini, menjaga kesehatan sering kali menjadi hal yang terabaikan. Padahal, hidup sehat sangat penting untuk menjaga kesejahteraan fisik, mental,…
Diet yang Tepat: Kunci Kehamilan Bagi yang Berjuang… Menurunkan Berat Badan untuk Kehamilan: Tips dan Trik yang Harus Anda Ketahui Menurunkan berat badan sebelum hamil memang bukan perkara mudah, tetapi sangat penting untuk mempersiapkan tubuh Anda untuk kehamilan…
Rajakan Berat Badan Ideal Tanpa Diet Ketat: Cara… Tips Menurunkan Berat Badan Tanpa Diet yang Dapat Anda Coba Menurunkan berat badan tanpa diet mungkin terasa mustahil, tetapi sebenarnya ada banyak cara yang dapat Anda lakukan untuk mencapai tujuan…
Cara Mudah Menurunkan Berat Badan dalam 1 Bulan:… Ingin Turunkan Berat Badan dalam 1 Bulan? Berikut Tips Ampuh Wujudkan Impianmu! Berat badan berlebih bukan hanya mengganggu penampilan, tetapi juga kesehatan. Obesitas dapat menyebabkan berbagai penyakit kronis seperti jantung,…
Bagaimana cara meminta perlindungan asuransi… Jika Anda mengalami obesitas, mendapatkan perawatan medis dan dukungan lain yang layak Anda dapatkan bisa jadi sulit. Asuransi mungkin tidak mencakup semua perawatan modern atau program khusus. Dan biaya Anda…
Cara Ampuh dan Mengejutkan: Turunkan Berat Badan… Mendambakan berat badan ideal namun kesulitan mencapainya? Jangan khawatir, Anda tidak sendirian. Sejarah Indonesia Intan. Tapi, tenang saja, ada beberapa cara turun berat badan mendadak yang bisa Anda coba. Yuk,…
Mengapa Anda Membutuhkan Jadwal Kerja Jarak Jauh Bekerja dari rumah masih merupakan gagasan baru bagi sebagian besar individu, dan menemukan jadwal kerja jarak jauh yang sesuai mungkin menuntut. Kalender - KalenderBagaimanapun, produktivitas bukanlah bawaan, tetapi menjadi produktif…
Pencari Kelompok Pendukung HIV/AIDS - HealthyWomen Diaz Thailand Koordinator Program Wanita Sehat Thaïs Diaz memiliki latar belakang kesehatan masyarakat, nutrisi dan Apa yang perlu dan menjabat sebagai Koordinator Program Wanita Sehat. Pengalaman sebelumnya meliputi penelitian dan…
Rahasia Anti Ngantuk: Tips Ampuh Agar Tetap Fokus… Pernahkah Anda merasa ingin tidur di saat yang tidak tepat? Seperti saat bekerja, belajar, atau bahkan saat sedang menyetir? Jika ya, Anda tidak sendirian. Banyak orang yang mengalami masalah ini.…
Tips Ampuh Turun Berat Badan Cepat dan Sehat:… Cara Menurunkan Berat Badan Cepat: Panduan Lengkap untuk Mencapai Tujuan Berat Badan Ideal Ingin tahu cara menurunkan berat badan cepat? Anda tidak sendirian! Banyak orang berjuang dengan berat badan, dan…
Menjadi master Python pada tahun 2022 StackCommerce Python adalah salah satu bahasa pengkodean paling berguna di dunia. Bahkan jika Anda belum pernah melihat sekilas satu baris kode pun, Anda dapat mempelajari Python dengan Bundel Bootcamp Sertifikasi…
Rahasia Diet Sehat dan Olahraga: Raih Tubuh Ideal… Cara Diet Sehat dan Olahraga: Kunci Hidup Sehat dan Bahagia Di zaman sekarang, banyak orang yang menyadari pentingnya menjaga kesehatan tubuh. Namun, sayangnya, tidak semua orang tahu cara diet sehat…
Rahasia Diet Sehat dan Aman untuk Ibu Menyusui:… Bagaimana Cara Diet Sehat untuk Ibu Menyusui Tanpa Membuat ASI Hilang? Menjadi ibu menyusui merupakan momen yang membahagiakan sekaligus menantang. Di satu sisi, Anda ingin memberikan ASI terbaik untuk buah…
Ini otakmu yang tidak pernah tidur Sehari setelah tidak tidur nyenyak, Anda mungkin merasa sedikit kabur, sedikit lebih lapar dari biasanya, lebih lambat merespons, mudah tersinggung, dan bahkan mungkin sedikit sedih. Atau Anda mungkin merasa baik-baik…
Paket pelatihan Microsoft PowerShell yang berharga… StackCommerce Setiap orang yang bekerja di bidang TI harus memiliki setidaknya pengetahuan tentang Microsoft PowerShell. Apakah Anda perlu sedikit penyegaran? Kemudian Bundel Sertifikasi Windows PowerShell 2022 adalah pilihan yang ideal.…
Orang dalam sepak bola perguruan tinggi percaya USC… Lincoln Riley, Oklahoma Sooners. (Kredit Wajib: Alonzo Adams-USA TODAY Sports) Satu orang dalam sepak bola perguruan tinggi tidak akan terkejut jika program sepak bola USC mengambil cut home-run dalam upaya…
Pencarian saya untuk tidur tanpa gangguan Biasanya terjadi secara perlahan. Seperti sudut bayangan yang diangkat ke dalam ruangan hitam, membiarkan secercah cahaya masuk, pikiran tentang apa yang harus saya lakukan dan anak-anak saya menyelinap pergi di…
7 cara sederhana dan realistis untuk menurunkan… usia hanyalah angka. Namun ketika ingin menurunkan berat badan, angka tersebut adalah bagian dari persamaan. Anda mungkin memperhatikan bahwa berat badan Anda bertambah dengan lebih mudah - dan menjadi lebih…