นี่เป็นหนึ่งในสิ่งที่ฉันเกลียดที่สุดเมื่อฉันเห็นมันในรหัสของคนอื่น ฉันรู้ว่ามันหมายถึงอะไรและทำไมบางคนทำเช่นนี้ ("จะเกิดอะไรขึ้นถ้าฉันใส่ '=' แทนโดยบังเอิญ?") สำหรับฉันมันเหมือนเป็นอย่างมากเมื่อเด็กคนหนึ่งเดินลงบันไดเพื่อนับก้าวออกมาดัง ๆ
อย่างไรก็ตามนี่คือข้อโต้แย้งของฉันกับมัน:
- มันขัดขวางการไหลตามธรรมชาติของการอ่านรหัสโปรแกรม เรามนุษย์พูดว่า "ถ้าค่าเป็นศูนย์" และไม่ใช่ "ถ้าเป็นศูนย์คือค่า"
- คอมไพเลอร์สมัยใหม่เตือนคุณเมื่อคุณมีงานที่มอบหมายในสภาพของคุณหรือที่จริงแล้วถ้าเงื่อนไขของคุณประกอบด้วยเพียงการมอบหมายนั้นซึ่งใช่ดูน่าสงสัยอยู่แล้ว
- คุณไม่ควรลืมใส่ double '=' เมื่อคุณเปรียบเทียบค่าหากคุณเป็นโปรแกรมเมอร์ คุณอาจลืมใส่ "!" เช่นกัน เมื่อทดสอบความไม่เท่าเทียมกัน
0 == value
ได้ แต่อย่าลืมเขียน==
? ฉันหมายถึง blimey หากคุณกำลังคิดเกี่ยวกับมันทำไมไม่เขียนมันอย่างถูกต้องเพื่อเริ่มต้นด้วย