31 คะแนน โดย xguru 2023-04-20 | 7 ความคิดเห็น | แชร์ทาง WhatsApp
  • ใครๆ ก็อยากเขียน "โค้ดที่สะอาด" ไม่ใช่อยากเขียน "โค้ดที่สกปรก" ใช่ไหม?
  • แต่หลายคนไม่ค่อยรู้ว่า "โค้ดที่สะอาด" หมายถึงอะไร และต้องทำอย่างไร จึงมีการเสนอหลักเกณฑ์สำหรับ CRISP Code ในภาษา Go
  • Correct : โค้ดที่ทำงานได้อย่างถูกต้องโดยไม่มีบั๊ก
  • Readable : โค้ดที่คนอื่นอ่านได้ง่าย
  • Idiomatic : โค้ดที่ยึดแนวทางหรือรูปแบบที่เป็นธรรมเนียม เพื่อให้เข้าใจได้ง่าย
  • Simple : โค้ดที่ทำเฉพาะสิ่งที่ระบุไว้อย่างเรียบง่าย โดยไม่มี side effect แฝง
  • Performant : ทำงานได้ถูกต้อง เข้าใจง่าย และคำนึงถึงประสิทธิภาพ

7 ความคิดเห็น

 
humblebee 2023-04-24

ขอแนะนำตัวย่อด้านการเขียนโค้ดแบบใหม่ ความโกลาหล (CHOSUN)!

C - ชวนสับสน (Confusing): เขียนโค้ดให้เข้าใจยาก เพื่อให้คุณกลายเป็นผู้ดูแลเพียงคนเดียวที่รักษาตำแหน่งของตัวเองในบริษัทได้
H - ปะปนมั่วไปหมด (Hodgepodge): ผสมผสานกระบวนทัศน์การเขียนโปรแกรม ไลบรารี และสไตล์ต่าง ๆ เข้าด้วยกัน เพื่อสร้างชุดโค้ดอันเป็นเอกลักษณ์และเผยด้านศิลปินของคุณ
O - ตามอำเภอใจ (Arbitrary): ตัดสินใจเรื่องสถาปัตยกรรม โครงสร้างข้อมูล และอัลกอริทึมโดยไม่มีเหตุผลที่ชัดเจน เพื่อให้กระบวนการพัฒนาดูสด ๆ และแพรวพราวยิ่งขึ้น
S - ทำให้อ่านยาก (Obfuscation): ใช้ชื่อตัวแปรที่กำกวม ลูปซ้อนหลายชั้น และการขาดคอมเมนต์ เพื่อทำให้โค้ดอ่านและทำความเข้าใจได้ยาก
U - แก้นู่นแตะนี่ (Tinkering): คอยใส่การเปลี่ยนแปลงเล็ก ๆ ลงในโค้ดเบสอย่างต่อเนื่องและไม่ทำเอกสารไว้ เพื่อให้เพื่อนร่วมงานต้องคอยระแวง และสร้างข้ออ้างในการแก้ "บั๊ก" ที่คุณแอบใส่เข้าไป
N - ไม่สม่ำเสมอ (Inconsistent): ใช้กฎการตั้งชื่อ สไตล์การเยื้องบรรทัด และฟีเจอร์ภาษาที่ต่างกันไปทั่วทั้งโค้ด เพื่อสร้างสถานการณ์ที่น่าสนใจและคาดเดาไม่ได้
จงเดินตามวิถีแห่งความโกลาหล (CHOSUN) และสร้างโค้ดเบสอันโดดเด่นชวนประทับใจให้เพื่อนร่วมงาน เพื่อรับประกันความมั่นคงในหน้าที่การงานของคุณ!

 
humblebee 2023-04-24

แน่นอนครับ อย่างที่คุณคาดไว้ เนื้อหาตัวย่อด้านการเขียนโค้ดข้างต้นนั้น chat-gpt เป็นคนเขียน 🤣🤣🤣

 
ragingwind 2023-04-20

นึกถึงคำว่า “รู้เรื่อง จัดให้เรียบร้อย กระชับ และมีเซนส์” เลย

 
roxie 2023-04-23

ฮ่าๆ

 
misolab 2023-04-21

ฮ่าๆ

 
xguru 2023-04-20

ไม่มีสิ่งที่เรียกว่า Clean Code
ก็คล้าย ๆ กับสิ่งที่บทความข้างบนพยายามจะบอกนั่นแหละครับ.. แต่คอมเมนต์ใน HN ที่เกี่ยวข้องนี่สนุกดีครับ

https://news.ycombinator.com/item?id=35611710

  • ผมนี่ SIMPLE เลย!
    S - Spaghetti
    I - Interlinked
    M - Micromanaged
    P - Perplex
    L - Lazy
    E - Opinionated
  • ของผม SPAGHETTI
    S - Spaghetti
    P - Precarious
    A - Ambiguous
    G - Gratuitous
    H - Haphazard
    E - Entangled
    T - Time-consuming
    T - Tangled
    I - Impenetrable
 
draupnir 2023-04-24

พออ่านดูแล้ว SPAGHETTI เป็นเนื้อหาเชิงเหน็บแนมสินะ 555