ผังงานหรือเรียกกันว่าโฟลวชาร์ต เป็นแผนภาพที่ใช้ออกแบบและอธิบายการทำงานของโปรแกรม โดยอาศัยรูปทรงต่างๆ ควบคู่ไปกับลูกศร แต่ละรูปในแผนภาพ จะหมายถึงการทำงานหนึ่งขั้นตอน ส่วนลูกศรจะแทนลำดับการทำงานขั้นตอนต่างๆ รวมทั้งทิศทางการไหลของข้อมูลตั้งแต่เริ่มต้นจนได้ผลลัพธ์ตามต้องการ ระบบงานทุกชนิดที่ผ่านการวิเคราะห์เป็นลำดับขั้นตอนแล้ว จะสามารถเขียนเป็นผังงานได้
ประโยชน์ของผังงาน
1. ช่วยอธิบายลำดับขั้นตอนการทำงานของโปรแกรม
2. ทำให้ตรวจสอบข้อผิดพลาดของโปรแกรมได้ง่าย
3. ทำให้ผู้อื่นสามารถศึกษาการทำงานของโปรแกรมและแก้ไขโปรแกรมได้ง่าย2. ทำให้ตรวจสอบข้อผิดพลาดของโปรแกรมได้ง่าย
การเขียนผังงานที่ดี
1. เขียนตามสัญลักษณ์ที่กำหนด
2. ใช้ลูกศรแสดงทิศทางการทำงานจากบนลงล่าง
3. อธิบายสั้นๆ ให้เข้าใจได้ง่าย
4. ทุกแผนภาพต้องมีทิศทางเข้าออก
5. ไม่ควรโยงลูกศรไปที่ไกลมากๆ ถ้าต้องทำให้ใช้สัญลักษณ์การเชื่อมต่อแทน
การเขียนผังงานสามารถแบ่งออกได้เป็นสองประเภทใหญ่ๆ คือ
- ผังงานระบบ (System FlowChart) ใช้แสดงขั้นตอนการทำงานภายในระบบงานหนึ่งๆ โดยกล่าวถึงข้อมูลต่างๆ ที่เกี่ยวข้องทั้งหมด เช่น เอกสารเบื้องต้นคืออะไร วัสดุที่ใช้คืออะไร ใช้หน่วยความจำประเภทใด จะต้องส่งผ่านไปยังหน่วยงานใด วิธีการประมวลผลและการแสดงผลลัพธ์
- ผังงานโปรแกรม (Program Flowchart) ผังงานประเภทนี้จะแสดงถึงขั้นตอนของคำสั่งที่ใช้ในโปรแกรม การรับข้อมูล การประมวลผล การแสดงข้อมูล บางครั้งจะเรียกว่าผังการเขียนโปรแกรมสัญลักษณ์ที่ใช้ในการเขียนผังงาน
การเขียนผังงานจะต้องใช้ภาพสัญลักษณ์ต่างๆ นำมาเรียงต่อกันเพื่อแสดงลำดับการทำงาน สัญลักษณ์มาตรฐานที่เรียกว่าสัญลักษณ์ ANSI (American National Standards Institute)
การโปรแกรมแบบมีโครงสร้าง หรือ การโปรแกรมโครงสร้าง ประกอบด้วยอะไรบ้าง
ผมขอตอบอย่างสั้น ๆ ว่าทุกภาษาต้องมีหลักการ 3 อย่างนี้คือ การทำงานแบบตามลำดับ(Sequence) การเลือกกระทำตามเงื่อนไข(Decision) และ การทำซ้ำ(Loop) แม้ตำราหลาย ๆ เล่มจะบอกว่า decision แยกเป็น if กับ case หรือ loop นั้นยังแยกเป็น while และ until ซึ่งแตกต่างกัน แต่ผมก็ยังนับว่าการเขียนโปรแกรม แบบมีโครงสร้างนั้น มองให้ออกแค่ 3 อย่างก็พอแล้ว และหลายท่านอาจเถียงผมว่าบางภาษาไม่จำเป็นต้องใช้ Structure Programming แต่เท่าที่ผมศึกษามา ยังไม่มีภาษาใด เลิกใช้หลักการทั้ง 3 นี้อย่างสิ้นเชิง เช่น MS Access ที่หลายคนบอกว่าง่าย ซึ่งก็อาจจะง่ายจริง ถ้าจะศึกษาเพื่อสั่งให้ทำงานตาม wizard หรือตามที่เขาออกแบบมาให้ใช้ แต่ถ้าจะนำมาใช้งานจริง ตามความต้องการของผู้ใช้แล้ว ต้องใช้ประสบการณ์ในการเขียน Structure Programming เพื่อสร้าง Module สำหรับควบคุม Object ทั้งหมดให้ทำงานประสานกัน
ภาษาที่ใช้บรรยายในผังงาน
การแสดงลำดับกิจกรรมประมวลผลตามอัลกอริทึมนั้น นอกจากจะใช้รูปสัญลักษณ์ผังงาน (Flowchart Symbols) เป็นเครื่องมือแสดงแล้ว ภายในรูปสัญลักษณ์นั้น ๆ ต้องมีคำบรรยายประกอบเพื่อสื่อความเข้าใจระหว่างผู้อ่านกับผู้ที่นำเสนออัลกอริทึมนั้น ภาษาที่ใช้จึงต้องเป็นภาษาที่สื่อความเข้าใจกับบุคคลทั่วไป เป็นภาษาที่ผู้อ่านทั่วไปสามารถเข้าใจถูกต้อง ไม่ผิดพลาด คำบรรยายในผังงานจึงนิยมใช้ภาษาธรรมชาติ (Natural Language) นั่นคือภาษาที่คนทั่วไปใช้สื่อความหมายในชีวิตประจำวันเช่น ภาษาอังกฤษ ภาษาไทย เป็นต้น ต้องไม่เอาภาษาคอมพิวเตอร์มาใช้หรือมาปะปน เพราะจะทำให้เกิดความสับสน ไม่สามารถสื่อความเข้าใจกับผู้อ่านที่ยังไม่รู้ภาษาคอมพิวเตอร์นั้น ๆ ผังงานที่ได้ก็จะเป็นอัลกอริทึมแม่แบบที่ผู้เขียนโปรแกรมจะนำไปเขียนประโยคคำสั่งตามกิจกรรมของขั้นนั้น ๆ ด้วยภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่ง นั่นคือผังงานทั้งหมดจะถูกเขียนให้เป็นประโยคคำสั่ง ด้วยภาษาคอมพิวเตอร์ตามที่ผู้เขียนโปรแกรมเลือกมาใช้ เช่น ภาษา Pascal หรือภาษา C เป็นต้น โปรแกรมที่ได้นี้ก็คือ อัลกอริทึมที่เขียนด้วยภาษา Pascal หรือภาษา C นั่นเอง โดยทั่วไปจะเรียกว่า รหัสคำสั่ง หรือ Source Codeตัวอย่างการเขียนผังงาน
ไม่มีความคิดเห็น:
แสดงความคิดเห็น