การออกแบบโปรแกรม คือ อะไร มี กี่ ลักษณะ

    Google              Youtube            พสว               สพม11

 2. ขั้นตอนการออกแบบโปรแกรม (Design a Program)
หลังจากวิเคราะห์ปัญหาแล้วขั้นตอนถัดไปคือ การออกแบบโปรแกรม โดยใช้เครื่องมือมาช่วยในการออกแบบในขั้นตอนนี้ยังไม่ได้เป็นการเขียนโปรแกรมจริง ๆแต่จะช่วยให้การเขียนโปรแกรมทำได้ง่ายขึ้นโดยสามารถเขียนตามขั้นตอนที่ได้ออกแบบไว้ในขั้นตอนนี้และช่วยให้การเขียนโปรแกรมมีข้อผิดพลาดน้อยลง ช่วยตรวจสอบการทำงานของโปรแกรมทำให้ทราบขั้นตอนการทำงานของโปรแกรมได้อย่างรวดเร็วโดยไม่ต้องไปไล่ดูจากตัวโปรแกรมจริง ๆซึ่งถ้าเปรียบเทียบการเขียนโปรแกรมเหมือนกับการสร้างบ้านแล้วในขั้นตอนการออกแบบโปรแกรมนี้ ก็เปรียบเหมือนการสร้างแปลนบ้านลงในกระดาษไว้ซึ่งในการสร้างบ้านจริงก็จะอาศัยแปลนบ้านนี้เป็นต้นแบบในการสร้างนั่นเอง
ในขั้นตอนการออกแบบโปรแกรมนี้เป็นการออกแบบการทำงานของโปรแกรม หรือขั้นตอนในการแก้ปัญหาซึ่งผู้ออกแบบสามารถเลือกใช้เครื่องมือมาช่วยในการออกแบบได้โดยเครื่องมือที่ใช้ในการออกแบบโปรแกรมมีอยู่หลายอย่างซึ่งวิธีการซึ่งเป็นที่นิยมสำหรับใช้ในการออกแบบโปรแกรม เช่น
• อัลกอริทึม (Algorithm)
• ผังงาน (Flowchart)
• รหัสจำลอง (Pseudo-code)
• แผนภูมิโครงสร้าง (Structure Chart)

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

Share this:

  • Twitter
  • Facebook

Like this:

ถูกใจ กำลังโหลด...

ขั้นตอนการพัฒนาโปรแกรม

          ในการเขียนโปรแกรมเพื่อแก้ปัญหาต่างๆจำเป็นต้องมีการวางแผน และออกแบบโปรแกรมไว้ล่วงหน้า โดยกำหนดขั้นตอนวิธีการทำงานให้ชัดเจน ซึ่งกระบวนการวิเคราะห์ และออกแบบโปรแกรมเรียกว่า วัฏจักรการพัฒนาระบบงาน System Development Lift Cycle ( SDLC) ซึ่งมีกระบวนการทำงานเริ่มต้นจากการวิเคราะห์ปัญหาไปจนถึงการนำโปรแกรมไปใช้งาน และปรับปรุงพัฒนาระบบให้ดีขึ้น มีขั้นตอนของ วัฏจักรการพัฒนาระบบงาน ดังต่อไปนี้

                    ขั้นตอนที่ 1 การวิเคราะห์ปัญหา (Problem Analysis)
                    ขั้นตอนที่ 2 การออกแบบโปรแกรม (Program Design)
                    ขั้นตอนที่ 3 การเขียนโปรแกรม (Program Coding)
                    ขั้นตอนที่ 4 การทดสอบและแก้ไขโปรแกรม ( Program Testing & Verification)
                    ขั้นตอนที่ 5 การจัดทำเอกสารและคู่มือการใช้งาน (Program Documentation)
                    ขั้นตอนที่ 6 การใช้งานจริง (Program Implement)
                    ขั้นตอนที่ 7 การปรับปรุงและพัฒนาโปรแกรม (Program Maintenance) 

          การวิเคราะห์ปัญหา (Problem Analysis) ขั้นตอนการวิเคราะห์ปัญหาสามารถจำแนกได้ดังนี้

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

          2. กำหนดข้อมูลนำเข้า ซึ่งประกอบหัวข้อพิจารณาดังนี้
                    •  กำหนดลักษณะการรับข้อมูล เช่น รับข้อมูลจากแป้นพิมพ์ หรือ อ่านข้อมูลจากไฟล์
                    •  รูปแบบข้อมูลที่รับเข้ามาเป็นอย่างไร เช่น ข้อมูลชื่อนิสิตเก็บเป็นตัวอักษรหรือสตริง ข้อมูลเงินเดือนพนักงานเก็บเป็นจำนวนทศนิยม เป็นต้น
                    •  ขอบเขตของข้อมูลมีช่วงค่าของข้อมูลได้เท่าไหร่ เช่น รับข้อมูลเงินเดือนมีค่าอยู่ระหว่าง 0.00 ถึง 100,000.00 บาท เก็บข้อมูลเป็นจำนวนทศนิยม เป็นต้น
                    •  ข้อจำกัดในการรับข้อมูลอย่างไรบ้าง เช่น รับข้อมูลได้เฉพาะค่าตัวเลขที่มากกว่า 0 เป็นต้น

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

          4. กำหนดผลลัพธ์
                    •  กำหนดรูปแบบการแสดงผล เช่น แสดงผลลัพธ์เป็นภาพกราฟฟิกส์ทางจอภาพ หรือพิมพ์ข้อมูลออกทางเครื่องพิมพ์ เป็นต้น
                    •  ตรวจสอบข้อผิดพลาดและความถูกต้องของผลลัพธ์ เช่น ตรวจสอบข้อผิดพลาดจากการคำนวณ ตรวจสอบผลลัพธ์ว่าถูกต้องตรงตามที่ต้องการหรือไม่

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


          การออกแบบโปรแกรม (Program Design) ประกอบด้วยวิธีการดังนี้ คือ

          1. การออกแบบโปรแกรมโดยใช้ อัลกอริธึม (Algorithm) เป็นการอธิบายถึงลำดับขั้นตอนการทำงานของการแก้ปัญหาโดยใช้ประโยคข้อความที่ชัดเจนไม่คลุมเครือ สามารถบอกลำดับการทำงานได้ ซึ่งมีประโยชน์ดังนี้
                    •  ทำให้เห็นลำดับของการทำงานและวิธีการทำงานแต่ละขั้นตอนได้อย่างละเอียด
                    •  ทำให้เห็นภาพรวมของการทำงานของขั้นตอนทั้งหมด
                    •  เป็นการวางแผนการทำงานไว้ล่วงหน้า ทำให้สามารถนำไปเขียนเป็นโปรแกรมได้อย่างถูกต้องและรวดเร็ว

          2. การออกแบบโปรแกรมโดยใช้ รหัสจำลอง (Pseudo Code) เป็นการออกแบบขั้นตอนการทำงานของโปรแกรมโดยการใช้ข้อความภาษาอังกฤษที่ใกล้เคียงกับภาษาคอมพิวเตอร์ ซึ่งมีหลักการทำงานและประโยชน์เหมือนกับการใช้อัลกอริธึ่ม แต่มีข้อดี ดังนี้คือ
                    •  สามารถนำรหัสจำลองไปใช้เขียนโปรแกรมได้ง่ายกว่าการใช้อัลกอริธึ่ม เพราะมีความใกล้เคียงกับคำสั่งคอมพิวเตอร์
                    •  ผู้ออกแบบโปรแกรมต้องมีความรู้ทางด้านภาษาคอมพิวเตอร์บ้าง เพื่อให้สามารถนำไปประยุกต์ใช้และเขียนโปรแกรมเป็นภาษาอื่นๆได้หลายภาษา

          3. การออกแบบโปรแกรมโดยใช้ ผังงาน (Flowchart) คือ การใช้สัญลักษณ์รูปภาพ หรือกล่องข้อความบรรยายรายละเอียดการทำงาน และใช้ลูกศรบอกทิศทางลำดับ ของการทำงาน ซึ่งมีข้อดีดังนี้ คือ
                    •  สามารถอ่านและเข้าใจการทำงานได้ง่าย เพราะมองเห็นภาพรวมขั้นตอนการทำงานทั้งหมดได้ชัดเจน
                    •  สามารถออกแบบโครงสร้างการทำงานได้หลากหลายโดยใช้ลูกศรแสดงทิศทางการทำงาน ทำให้แก้ปัญหาที่มีหลายเลือกและซับซ้อนได้
                    •  คำสั่งหรือคำบรรยายรายละเอียดในกล่องข้อความสามารถนำไปเขียนเป็นคำสั่งของโปรแกรมได้


ภาษาคอมพิวเตอร์สามารถแบ่งออกได้เป็น ยุคคือ


1. ภาษาเครื่อง (Machine language)
2. ภาษาแอสเซมบลี (Assembly language)
3. ภาษาชั้นสูง (High-level language)หรือ ภาษารุ่นที่ 3 (3GL:Third Generation Language) 
4. ภาษาชั้นสูงมาก (Very high-level language) หรือภาษารุ่นที่ 4 (4GL) 
5. ภาษาธรรมชาติ (Natural language) หรือภาษารุ่นที่ 5 (5GL)


1. ภาษาเครื่อง (Machine language)
เป็นภาษาพื้นฐานที่คอมพิวเตอร์สามารถเข้าใจได้ แต่ละคำสั่งประกอบขึ้นจากกลุ่มตัวเลข และ ซึ่งเป็นเลขฐานสอง
2. ภาษาแอสเซมบลี (Assembly language)
เป็นภาษาที่ใช้สัญลักษณ์ข้อความ แทนกลุ่มของตัวเลขฐานสอง เพื่อให้ง่ายต่อการเขียนและการจดจำมากขึ้น การทำงานของโปรแกรมจะต้องทำการแปลภาษาแอสเซมบลีให้เป็นภาษาเครื่อง โดยใช้ตัวแปลที่เรียกว่า แอสเซมเบลอร์ (Assembler)
3. ภาษาชั้นสูง (High-level language)หรือ ภาษารุ่นที่ 3 (3GL:Third Generation Language)ถูกสร้างขึ้นมาเพื่อให้เขียนโปรแกรมได้ง่ายขึ้น โดยมีลักษณะเหมือนกับภาษาอังกฤษทั่วไป ผู้เขียนไม่จำเป็นต้องมีความรู้เกี่ยวกับฮาร์แวร์แต่อย่างใด ภาษานี้จำเป็นต้องมีตัวแปลภาษาเครื่องเช่นกัน เรียกตัวแปลนี้ว่า คอมไพเลอร์ (compiler) หรือ อินเตอร์พรีเตอร์ (Interpreter) อย่างใดอย่างหนึ่ง
ตัวอย่างของภาษาชั้นสูง เช่น ภาษาปาสคาล ภาษาซี ภาษโคบอล ภาษเบสิก ภาษาฟอร์แทรน
4. ภาษาชั้นสูงมาก (Very high-level language) หรือภาษารุ่นที่ 4 (4GL)
เป็นภาษาที่มีลักษณะคล้ายภาษาพูดตามปกติของมนุษย์ ภาษานี้จะช่วยให้การเขียนโปรแกรมเร็วมากขึ้นกว่าภาษาในรุ่นที่ 3 เนื่องจากมีเครื่องมือที่ช่วยในการสร้างแบบฟอร์มหน้าจอ เพื่อจัดการกับข้อมูลรวมไปถึงการออกรายงาน เมนูต่าง ๆ
ตัวอย่างของภาษาชั้นสูงมากได้แก่ informix-4GL, MAGIC , Delphi , Power Builder ฯลฯ


5. ภาษาธรรมชาติ (Natural language) หรือภาษารุ่นที่ 5 (5GL)
เป็นภาษาที่สามารถสั่งงานคอมพิวเตอร์โดยใช้รูปแบบของภาษามนุษย์ได้เลย คำสั่งอยู่ในรูปแบบที่ไม่แน่นอนตายตัว แต่คอมพิวเตอร์จะทำการแปลให้ออกมาในรูปที่คอมพิวเตอร์เข้าใจได้ ภาษานี้ถูกสร้างขึ้นมาจากเทคโนโลยีทางด้านระบบผู้เชียวชาญ (

การออกแบบโปรแกรม (Design a Program) คืออะไร และมีลักษณะ

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

การออกแบบโปรแกรมมีกี่แบบ อะไรบ้าง

รูปแบบในการเขียนโปรแกรม สามารถแบ่งออกเป็น 2รูปแบบ คือ 1. การเขียนโปรแกรมเชิงโครงสร้าง (Structured Programming) 2. การเขียนโปรแกรมเชิงวัตถุ(Object-Oriented Programming) การเขียนโปรแกรมเชิงโครงสร้าง (Structured Programming)

การออกแบบขั้นตอนการทำงานของโปรแกรมมีกี่ลักษณะอะไรบ้าง

การออกแบบขั้นตอนการทำงานของโปรแกรมหรือการออกแบบอัลกอริทึม เป็นการออกแบบลำดับขั้นตอนการทำงานของโปรแกรม สามารถแบ่งออกได้ 3 ลักษณะ คือ การใช้ภาษาธรรมชาติ การใช้รหัสจำลอง และการใช้ผังงาน

การออกแบบขั้นตอนการทำงานของโปรแกรมคืออะไร

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