PlusMagi's Blog By Pitt Phunsanit GIT,Java,JavaScript,PHP,PowerBuilder,Programming Vertical Alignment vs Standard Formatting: จัดโค้ดตรงแถว สวยจริง หรือทิ้งภาระ?

Vertical Alignment vs Standard Formatting: จัดโค้ดตรงแถว สวยจริง หรือทิ้งภาระ?

ในการเขียนโปรแกรม โดยเฉพาะภาษาที่ใช้โครงสร้างแบบ Key-Value Pair เช่น PHP, Array ใน JavaScript หรือ Dict ใน Python คำถามหนึ่งที่นักพัฒนามักถกเถียงกันอยู่เสมอคือ “ควรเคาะ Space ให้เครื่องหมายชี้ (=> หรือ :) ตรงกันในแนวตั้งหรือไม่?”

บทความนี้จะพาไปรู้จักการจัดโค้ดทั้งสองรูปแบบ พร้อมเหตุผลว่าทำไมเทรนด์ยุคใหม่ถึงเริ่มเอนเอียงไปทางแบบสั้นกระชับมากกว่า


Vertical Alignment (การจัดระเบียบแนวตั้ง)

การจัดรูปแบบที่เว้นช่องว่าง (Whitespace) เพิ่มเติมด้านหน้าเครื่องหมาย เพื่อให้ลูกศรหรือเครื่องหมายเท่ากับเรียงตรงกันสวยงามในแนวตั้ง

// ตัวอย่าง Vertical Alignment
$userProfile = [
    'id' => $id,
    'username' => $username,
    'email' => $email,
    'description' => $description,
];
  • ข้อดี:
    • ดูเป็นระเบียบ สบายตา อ่านง่ายเมื่อกวาดสายตามอง Key และ Value Separator
  • ข้อเสีย:
    • เปลืองขนาดไฟล์โดยไม่จำเป็น: อย่าลืมว่า Space 1 ตัว = 1 Byte ยิ่งเคาะเว้นวรรคเยอะ ขนาดไฟล์โค้ดก็ยิ่งใหญ่ขึ้นโดยเปล่าประโยชน์
    • ดูแลรักษาลำบาก: เมื่อมี Key ใหม่ที่ยาวกว่าเดิมเพิ่มเข้ามา คุณต้องตามไปเคาะ Space บรรทัดอื่น ๆ ใหม่ทั้งหมด
    • Git Diff รกเกินจำเป็น: การแก้ไขเพียงบรรทัดเดียว อาจทำให้ Git แจ้งว่ามีการเปลี่ยนแปลง (Modified) ถึง 10 บรรทัด เพียงเพราะคุณเคาะ Space เพิ่มเพื่อจัดแถว

Standard Formatting / Unaligned (การจัดรูปแบบมาตรฐาน)

การเว้นวรรคเพียง 1 ช่องหลัง Key โดยไม่ต้องสนใจว่าเครื่องหมายด้านหลังจะตรงกับบรรทัดอื่นหรือไม่

// ตัวอย่าง Standard Formatting
$userProfile = [
    'id' => $id,
    'username' => $username,
    'email' => $email,
    'description' => $description,
];

ข้อดี:

  • ประหยัดขนาดไฟล์: โค้ดกระชับ ไม่มีตัวอักษร Space ส่วนเกิน ช่วยลดขนาดไฟล์ลงได้
  • แก้ไขรวดเร็ว: เพิ่ม ลด หรือพิมพ์แก้ไขได้ทันทีโดยไม่ต้องเสียเวลาเคาะ Space จัดแถว
  • Clean Git History: แก้ไขบรรทัดไหน Git จะเห็น History เฉพาะบรรทัดนั้น ไม่กระทบส่วนอื่น
  • ตรงตามมาตรฐานส่วนใหญ่: Linter และ Formatter ยุคใหม่ (เช่น Prettier, PHP-CS-Fixer หรือ PSR-12 Standard) มักกำหนดให้รูปแบบนี้เป็นค่าเริ่มต้น

ข้อเสีย:

  • แถวของเครื่องหมายจะไม่ตรงกันในแนวตั้ง

สรุป: ควรเลือกใช้แบบไหน?

แม้ว่า Vertical Alignment จะดูประณีตกว่าในแง่สายตา แต่ในเชิงการทำงานจริงแบบทีม (Team Collaboration) และระบบ Version Control (Git) การใช้ Standard Formatting ('id' =>) ให้ผลลัพธ์ที่คล่องตัว ลดความขัดแย้งของโค้ด (Merge Conflicts) และดูแลรักษาในระยะยาวได้ง่ายกว่ามากครับ

การทำงานจริงมันต่างจากในตำราตรงนี้แหละครับ—ในตำราหรือบทความทั่ว ๆ ไปมักจะโฟกัสแค่เรื่อง “ความสวยงาม” แต่คนทำระบบจริง คนดูแลโค้ดจริง ต้องเจอกับเรื่อง Git Diff รกเวลา Code Review, เสียเวลาจัด Format, และเรื่อง File Size/Memory Overheads จากช่องว่างไร้สาระพวกนั้น

การปรับวิธีคิดให้เน้นความสมเหตุสมผลในการทำงานจริง (Pragmatic Developer Mindset) มากกว่าแค่นึกถึงทฤษฎีในตำราจะช่วยให้ทำงานได้ง่ายขึ้น แถมประหยัด token ai


อ่านเพิ่มเติม