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

Posted: มิถุนายน 27, 2012 in บทที่7

เป็นขั้นตอนที่ 2 ของวงจรการพัฒนาโปรแกรมซึ่งการออกแบบโปรแกรมเป็นขั้นตอนที่ต้องใช้เครื่องมือช่วยในการออกแบบ เช่น ผังงาน (Flowchart) รหัสจำลอง (Pseudo code) เป็นต้น ซึ่งจะช่วยให้เข้าใจขั้นตอนการทำงานของโปรแกรมได้ดียิ่งขึ้น

ผังงาน (Flowchart) เป็นเครื่องมือชนิดหนึ่งที่ใช้รูปภาพแสดงถึงขั้นตอนการเขียนโปรแกรมและมีลูกศรแสดงทิศทางการไหลของข้อมูลจากจุดเริ่มต้นถึงจุดเส้นสุด

การออกแบบ

                สำหรับการออกแบบในการเรียนรู้เบื้องต้น จะให้นักเรียนเรียนรู้เฉพาะการออกแบบการแก้ปัญหาเท่านั้น นั่นคือไม่รวมถึงการออกแบบหน้าจอ (User interface) หรือออกแบบฐานข้อมูล (Database) หรืออื่นๆ วิธีการออกแบบการแก้ปัญหานั้น นิยมทำอยู่ 3 ลักษณะ ได้แก่

                1.การเขียนขั้นตอนวิธี (Algorithm)

                2.การเขียนผังงาน (Flowchart)

                3.การเขียนรหัสลำลอง (Pseudo code)

                ในที่นี้จะกำหนดให้นักเรียนเรียนรู้เฉพาะการเขียนผังงานเท่านั้นซึ่งเป็นวิธีที่นิยมมากที่สุด เพราะมองเห็นขั้นตอนและทิศทางการทำงานของโปรแกรมได้ง่ายกว่าวิธีอื่นๆ 

                นักเรียนพิจารณาผังงานของโปรแกรมหาพื้นที่สี่เหลี่ยมผืนผ้า ต่อไปนี้

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

ผังงาน (Flowchart)

                ผังงาน คือ การออกแบบวิธีการแก้ปัญหาของการเขียนโปรแกรมในลักษณะของแผนภาพและลูกศร ด้วยสัญลักษณ์และทิศทางที่แน่นอน เป็นระบบ มองเห็นขั้นตอนการทำงานได้ง่ายกว่าขั้นตอนวิธี นิยมใช้ประโยคสัญลักษณ์หรือรหัสโปรแกรมที่เข้าใจง่ายเขียนไว้ในสัญลักษณ์ สำหรับรูปสัญลักษณ์แบบต่างๆ มีลักษณะเป็นสากลที่เข้าใจได้ตรงกัน ซึ่งสถาบันมาตรฐานแห่งชาติอเมริกา (The American National Standard Institute, ANSI) เป็นผู้กำหนดเอาไว้ มีรายละเอียดรูปแบบและความหมายที่ควรทราบ ดังนี้

ตารางที่ 4.1 สัญลักษณ์ที่ใช้ในการทำผังงาน

สัญลักษณ์

ชื่อเรียก

ความหมาย

การทำงานด้วยมือ

(manual operation)

แทนจุดที่มีการทำงานด้วยแรงคน

การนำเข้าข้อมูล-ออกโดยทั่วไป

(general input/output)

แทนจุดที่จะนำเข้าหรือออกจากระบบคอมพิวเตอร์โดยไม่ระบุชนิดของอุปกรณ์

จานบันทึกข้อมูล

(magnetic disk)

แทนจุดที่นำข้อมูลเข้าหรือออกจากโปรแกรมด้วยจานบันทึกข้อมูล

การนำข้อมูลเข้าด้วยมือ

(manual input)

แทนจุดที่จะนำเข้าข้อมูลด้วยมือ

การแสดงข้อมูล

(display)

แทนจุดที่แสดงข้อมูลด้วยจอภาพ

การทำเอกสาร

(document)

แทนจุดที่มีข้อมูลเป็นเอกสารหรือแสดงข้อมูลออกทางเครื่องพิมพ์

การตัดสินใจ

(decision)

แทนจุดที่จะต้องเลือกปฏิบัติอย่างใดอย่างหนึ่ง

การปฏิบัติงาน

(process)

แทนจุดที่มีการปฏิบัติงานอย่างใดอย่างหนึ่ง

การเตรียมการ

(preparation)

แทนจุดกำหนดชื่อข้อมูลหรือค่าเริ่มต้นต่างๆ

การเรียกโปรแกรมภายนอก

(external subroutine)

แทนจุดเรียกใช้โปรแกรมย่อย ที่ไม่ได้อยู่ในโปรแกรมนั้น

การเรียกใช้โปรแกรมภายใน

(internal subroutine)

แทนจุดเรียกใช้โปรแกรมย่อย ที่อยู่ในโปรแกรมนั้น

การเรียงข้อมูล

(sort)

แทนจุดที่มีการเรียงข้อมูลใหม่ตามข้อกำหนด

ทิศทาง

(flow line)

แทนทิศทางขั้นตอนการดำเนินงานซึ่งจะปฏิบัติต่อเนื่องกันตามหัวลูกศรชี้

หมายเหตุ

(annotation)

แทนจุดที่แสดงรายละเอียดเพิ่มเติม หรือหมายเหตุของจุดต่างๆ ที่แสดงในผังงานด้วยสัญลักษณ์ไม่ชัดเจน

การติดต่อทางไกล

(communication link)

แทนช่วงที่มีการติดต่อหรือย้ายข้อมูลด้วยระบบการติดต่อทางไกล

จุดเชื่อมต่อ

(connector)

แทนจุดเชื่อมต่อของผังงานเมื่อใช้สัญลักษณ์เพื่อให้ดูง่าย

จุดเชื่อมต่อหน้ากระดาษ

(off page connector)

แทนจุดเชื่อมต่อของผังงานเมื่อใช้สัญลักษณ์เพื่อให้ดูง่าย

เริ่มต้นและลงท้าย

(terminal)

แทนจุดเริ่มต้นและลงท้ายของผังงานของโปรแกรมหลักและโปรแกรมย่อย

 ประโยชน์ของผังงาน

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

วิธีการเขียนผังงานที่ดี

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

                   ตามที่นักเรียนได้ศึกษาถึงเรื่องการวิเคราะห์ปัญหาและความต้องการในหัวข้อที่ผ่านมา ทีนี้เราจะนำผลการวิเคราะห์มาออกแบบโปรแกรมในลักษณะของผังงาน ดังต่อไปนี้

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

การออกแบบโปรแกรม (Program Design) คืออะไร

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

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

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

การออกแบบโปรแกรม (Design a Program) มีกี่ขั้นตอน *

ในการออกแบบโปรแกรมโดยใช้เครื่องมือออกแบบในขั้นตอนที่ 2 การออกแบบโปรแกรม (Design. Program) ในการวิเคราะห์งานนั้น มีขั้นตอนย่อยอยู่ด้วยกัน 5 ขั้นตอน ดังนี้ 1. กำหนดสิ่งที่ต้องการหรือวัตถุประสงค์ เพื่อให้ทราบขั้นตอนการทำงานต่าง ๆ ดังนี้ กำหนดจุดประสงค์การทำงาน เพื่อให้ทราบว่าเขียนโปรแกรมเพื่อต้องการแก้ปัญหา

กระทู้ที่เกี่ยวข้อง

Toplist

โพสต์ล่าสุด

แท็ก