Skip to main content
0
Programming Concept

มาเริ่มเขียน Pseudocode ให้คนทั้งโลกเข้าใจกันเถอะ!

สวัสดีครับเพื่อน ๆ ชาวเดฟทุกคน เคยได้ยินหรือว่าเคยใช้งาน Psudocode กันมาก่อนรึเปล่าครับ วันนี้เราจะมาทำความรู้จักหรือทบทวนไปพร้อม ๆ กันว่าซูโดโค้ดนั้นคืออะไร รับรองว่าไม่ยากแน่นอนถ้ารู้แล้วชีวิตเดฟของคุณอาจจะดีขึ้นก็ได้ครับ

Pseudocode คืออะไรกันแน่ ?

มาเริ่มจากอ่านคำนี้กันก่อนเลย มันอ่านว่า “ซูโดโค้ด” ครับ คิดง่าย ๆ ว่า Pseudocode ก็คือ “โค้ดปลอม ๆ” นั่นแหละ มันเป็นวิธีเขียนอธิบายวิธีคิดหรืออัลกอริทึมบางอย่างแบบง่าย ๆ โดยมีเป้าหมายเพื่ออธิบายให้คนด้วยกันนี่แหละเข้าใจ

ทำไมต้องสนใจ Pseudocode ด้วยล่ะ ?

  1. เข้าใจง่ายสุด ๆ: ถ้าฟังเพื่อนพูดแล้วเข้าใจ อ่านซูโดโค้ดก็ยิ่งง่ายกว่านั้นอีก
  2. โฟกัสที่ไอเดีย: ไม่ต้องมานั่งปวดหัวกับซินแท็กซ์ภาษาโปรแกรมมิ่งให้วุ่นวาย
  3. คุยกับทีมรู้เรื่อง: อธิบายไอเดียให้เพื่อนร่วมทีมเข้าใจได้ง่าย ๆ ไม่ต้องงงกัน
  4. วางแผนก่อนลุย: ช่วยให้เรามองเห็นภาพรวมก่อนลงมือเขียนโค้ดจริง ๆ

ต้องเตรียมอะไรบ้าง ?

Photo by Lachlan Donald on Unsplash

ปกติแล้วเวลาเราลองเขียนภาษาโปรแกรมหรือศึกษาเครื่องมือใหม่ ๆ ซักตัว ก็อาจจะสงสัยว่าเราต้องใช้ IDE อะไรเพื่อเอามาเขียนแล้วจะใช้งานได้ดีที่สุด สำหรับซูโดโค้ดก็อาจจะมีคนสงสัยเหมือนกัน แต่ก็อย่างที่บอกไปว่าซูโดโค้ดมันก็เป็นแค่การอธิบายให้คนด้วยกันเข้าใจ เพราะฉะนั้นเราจะเขียนที่ไหนก็ได้ จะเป็น VSCode, Notepad, Google Doc หรือเขียนในกระดาษก็ได้ได้หมดเลย

หน้าตาของ Pseudocode

ลองนึกภาพว่าคุณกำลังอธิบายวิธีทำอาหารให้เพื่อนฟัง แต่แทนที่จะเขียนอธิบายยาว ๆ ก็เปลี่ยนมาเน้นอธิบายขั้นตอนหรือเงื่อนไขสำคัญ ๆ ก็พอ

IF มีไข่ในตู้เย็น
    หยิบไข่ออกมา 2 ฟอง
ELSE
    วิ่งไปซื้อที่ร้านข้าง ๆ
Markdown

จะเห็นได้ว่าซูโดโคสต์มันก็เป็นแค่วิธีการอธิบายการทำงานด้วยภาษาพูดนี่แหละ แค่เอามาจัดหน้าตาให้มองง่าย ๆ หรือจะใช้ภาษาไทยล้วน ๆ ก็ไม่ผิดอะไร

ถ้ามีไข่ในตู้เย็น
    หยิบไข่ออกมา 2 ฟอง
ถ้าไม่มี
    วิ่งไปซื้อที่ร้านข้าง ๆ
Markdown

วิธีเขียน Pseudocode ให้ออกมาดี

Photo by Louis Hansel on Unsplash
  1. ใช้ภาษาชาวบ้าน: เขียนยังไงให้ทุกคนเข้าใจโดยไม่จำเป็นต้องเป็นเดฟด้วยกัน
  2. จัดระเบียบให้ดี: ย่อหน้า เว้นวรรค ให้สวยงาม อ่านง่าย
  3. ใช้คำสั่งพื้นฐาน: IF, ELSE, WHILE, FOR อะไรพวกนี้ใช้ได้หมด
  4. แตกเป็นขั้นตอน: เขียนทีละขั้น ๆ ให้ชัดเจน

มาดูตัวอย่างสุดท้ายกันเถอะ !

Photo by Lily Banse on Unsplash

Psudocode นั้นสามารถใช้อธิบายการทำงานที่ซับซ้อนหรือมีขั้นตอนเยอะ ๆ ได้เหมือนโค้ดปกติ ลองดูจากตัวอย่างการรับออเดอร์ในร้านอาหารตามสั่งนี้ได้เลย

ทักทายสวัสดีครับ

รอรับออเดอร์
		ถามว่ารับอะไรดีครับ
		
		ถ้าลูกค้าบอกว่าสั่งครบแล้วหรือพอแล้ว
        จบการรับออเดอร์
		
    ถ้าลูกค้าสั่งของที่มีในเมนู
	      จดเอาไว้
    ถ้าสั่งของที่ไม่มี
        บอกลูกค้าว่าไม่มีเมนูนี้ครับ

ถ้ามีรายการอาหารที่จดไว้
    บอกลูกค้าว่าทวนรายการที่จดไว้นะครับ
		    [เมนูที่จดไว้]
		    
    บอกว่ารอซักครู่นะครับ
ถ้ายังไม่มีซักเมนู
    บอกลูกค้าว่ายังไม่ได้สั่งอาหารเลยครับ
Markdown

ลองเอามาเขียนเป็น Python ก็จะได้ออกมาแบบนี้เลย

menu = ["กะเพรา", "ข้าวผัด", "ต้มยำ"]
order = []

print("สวัสดีครับ ยินดีต้อนรับ")

while True:
    answer = input("รับอะไรดีครับ? ").strip().lower()
    
    if answer in ["สั่งครบแล้ว", "พอแล้ว"]:
        break

    if answer in menu:
        order.append(answer)
        print(f"เพิ่ม {answer} เข้ารายการแล้วครับ")
    else:
        print("ขอโทษครับ ไม่มีเมนูนี้")
      
if order:
    print("ทวนรายการที่จดไว้นะครับ")
    for menu in order:
        print(f"- {menu}")
    print("รอสักครู่นะครับ")
else:
    print("ยังไม่ได้สั่งอาหารเลยครับ")
Python

สรุปได้ว่า

Pseudocode ก็แค่วิธีเขียนอธิบายโปรแกรมแบบชิล ๆ ไม่ต้องซีเรียส มันช่วยให้เราคิดได้ชัดขึ้น สื่อสารกับทีมได้ง่ายขึ้น และวางแผนงานได้ดีขึ้น

สุดท้ายนี้อยากบอกว่า Pseudocode ไม่มีถูกไม่มีผิด ขอแค่คนอ่านเข้าใจก็พอ! ขอให้สนุกกับการเขียนโค้ด เจอกันใหม่บทความหน้าครับ

Developer

Author Developer

More posts by Developer
Close Menu

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

ตั้งค่าความเป็นส่วนตัว

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

ยอมรับทั้งหมด
จัดการความเป็นส่วนตัว
  • คุกกี้ที่จำเป็น
    เปิดใช้งานตลอด

    ประเภทของคุกกี้มีความจำเป็นสำหรับการทำงานของเว็บไซต์ เพื่อให้คุณสามารถใช้ได้อย่างเป็นปกติ และเข้าชมเว็บไซต์ คุณไม่สามารถปิดการทำงานของคุกกี้นี้ในระบบเว็บไซต์ของเราได้
    รายละเอียดคุกกี้

  • คุกกี้สำหรับการติดตามทางการตลาด

    ประเภทของคุกกี้ที่มีความจำเป็นในการใช้งานเพื่อการวิเคราะห์ และ นำเสนอโปรโมชัน สินค้า รวมถึงหลักสูตรฟรี และ สิทธิพิเศษต่าง ๆ คุณสามารถเลือกปิดคุกกี้ประเภทนี้ได้โดยไม่ส่งผลต่อการทำงานหลัก เว้นแต่การนำเสนอโปรโมชันที่อาจไม่ตรงกับความต้องการ
    รายละเอียดคุกกี้

บันทึกการตั้งค่า