CPU ในปัจจุบันมีการพัฒนาเร็วขึ้นและเร็วขึ้น จาก 386 และ 486 ไปจนถึง Pentium และ Pentium II ในปัจจุบัน ความเร็วในการพัฒนาอาจกล่าวได้ว่าเร็วมาก อย่างไรก็ตาม ด้วยการพัฒนาอย่างรวดเร็วของ CPU ทำให้ "น้ำหนัก" ของแอพพลิเคชั่นซอฟต์แวร์เพิ่มขึ้นอย่างรวดเร็วเช่นกัน จาก K ไม่กี่ K หรือหลายสิบ K ตอนที่ฉันเรียนรู้คอมพิวเตอร์เป็นสิบเมกะไบต์หรือหลายร้อยเมกะไบต์ในปัจจุบัน การเปลี่ยนแปลงนี้ส่งผลกระทบต่อฉันด้วยซ้ำ ทุกคนต่างประหลาดใจ ความก้าวหน้าของ CPU ทำให้ผู้คนทำงานได้เร็วขึ้นและเพิ่มประสิทธิภาพอย่างมาก ขณะเดียวกัน ยังได้พัฒนานิสัยที่ไม่ดีของผู้คนที่ว่า "ไม่แสวงหาความเรียบง่าย" ผู้เขียนเคยเห็นเพื่อนเขียนโปรแกรมโดยใช้ VBA โดยมีโค้ดโปรแกรมดังนี้
ด้วย ActiveWindow
IfWindowState=wdWindowStateMaximizeนี่คือส่วนแรก!
MsgBox "Thisisaขยายหน้าต่าง"
สิ้นสุดถ้า
IfWindowState=wdWindowStateMinimizeนี่คือส่วนที่สอง!
MsgBox"นี่คือย่อหน้าต่างให้เล็กสุด"
สิ้นสุดถ้า
IfWindowState=wdWindowStateNormalนี่คือส่วนที่สาม!
MsgBox "ไม่มีที่ไหนเลย isNormalWindow!"
สิ้นสุดถ้า
จบด้วย
ดูเผินๆ ดูโครงสร้างจะค่อนข้างสวยและเป็นโปรแกรมที่ดีครับ แต่ถ้าคุณวิเคราะห์อย่างรอบคอบ คุณจะพบว่าขั้นตอนนี้ล้มเหลว เนื่องจากทั้งสามโปรแกรมนี้ไม่ได้ใช้โครงสร้างเชิงตรรกะที่ควรมี ฉันบอกเพื่อนคนนี้เกี่ยวกับความคิดเห็นนี้ และเขาก็รับฟังเป็นอย่างดีและแก้ไขโปรแกรมข้างต้นทันที รหัสโปรแกรมเฉพาะเป็นดังนี้: WithActiveWindow
IfWindowState=wdWindowStateMaximizeนี่คือส่วนแรก!
MsgBox "Thisisaขยายหน้าต่าง"
ElseIfWindowState=wdWindowStateย่อเล็กสุดนี่คือส่วนที่สอง!
MsgBox"นี่คือย่อหน้าต่างให้เล็กสุด"
ElseIfWindowState=wdWindowStateNormalนี่คือส่วนที่สาม!
MsgBox "ไม่มีที่ไหนเลย isNormalWindow!"
สิ้นสุดถ้า
จบด้วย
หลังจากที่เพื่อนของฉันเขียนโปรแกรมนี้เสร็จแล้ว เขาก็ยิ้มให้ฉันแล้วพูดว่า "เป็นยังไงบ้าง" ฉันดูโปรแกรมนี้แล้วคิดว่า ถ้า WindowState ไม่เท่ากับ wdWindowStateMaximize ฉันก็ต้องตัดสินว่า WindowState เท่ากับ wdWindowStateMaximize หรือไม่ แล้วถ้ามันยังไม่เท่ากันล่ะ? จากนั้นคุณต้องตัดสินต่อไปว่าเท่ากับ wdWindowStateNormal หรือไม่ ณ จุดนี้คุณต้องทะลุ "ประตู" สามบานก่อนจึงจะเข้าไปได้ ฉันหมดความอดทนและเขียนโปรแกรมด้วยตัวเอง:
เลือก CaseWindowState
CasewdWindowStateเพิ่ม 'นี่คือส่วนแรก!
MsgBox "Thisisaขยายหน้าต่าง"
CasewdWindowState ลดขนาด 'นี่คือส่วนที่สอง!
MsgBox"นี่คือย่อหน้าต่างให้เล็กสุด"
CasewdWindowStateNormal'ส่วนที่สาม!
MsgBox "ไม่มีที่ไหนเลย isNormalWindow!"
สิ้นสุดการเลือก
อย่างที่คุณเห็นโปรแกรมนี้กระชับ เข้าใจง่ายและอ่านง่าย ฉันเชื่อว่ามันจะเพิ่มสีสันให้กับโปรแกรมได้มาก และถ้าคุณดีบักมัน คุณจะพบข้อดีอื่นๆ ของมัน ไม่น่าแปลกใจที่เพื่อนของฉันรู้ทัน!
ในความเป็นจริง มีกฎที่ต้องปฏิบัติตามว่าจะใช้คำพิพากษาใด ตัวอย่างเช่น หากมีความเป็นไปได้สองประการ คุณสามารถเลือก If/Elseif ได้โดยไม่ต้องลังเล สำหรับความเป็นไปได้สองอย่างขึ้นไป ทางที่ดีที่สุดคือเลือก SelectCase/EndSelect ในกรณีส่วนใหญ่ หากมีความสัมพันธ์ที่ไม่บังคับเพียงความสัมพันธ์เดียว "ifthen/endif" จะเป็นตัวเลือกที่ดีที่สุด -