ข้อความแสดงการต้อนรับ

4| | | | | | | | |ยินดีต้อนรับสู่บล็อกของเราครับ| | | | | | | | |3

วิดิโอ

งานที่7


บทที่ 7 การพัฒนาโปรแกรม
วัตถุประสงค์
1)            อธิบายขั้นตอนการพัฒนาโปรแกรม
2)            อธิบายหลักการพัฒนาโปรแกรมด้วยภาษาโปรแกรมคอมพิวเตอร์
3)            อธิบายขั้นตอนการพัฒนาโครงงานคอมพิวเตอร์

7.1 ขั้นตอนการพัฒนาโปรแกรม
หลังจากที่ได้ออกแบบวิธีในการแก้ปัญหาซึ่งอยู่ในรูปแบบของรหัสลำลองหรือผังงานแล้ว ขั้นตอนต่อไปคือการพัฒนาโปรแกรมตามผังงานดังกล่าว ซึ่งถ้านักเขียนโปรแกรมมีความรู้ความชำนาญในการเขียนโปรแกรมภาษาหนึ่งภาษาใดอยู่แล้ว จะสามารถทำได้โดยง่าย อย่างไรก็ตามนักเขียนโปรแกรมก็ยังต้องทำการตรวจสอบว่าโปรแกรมที่ได้พัฒนาขึ้น ทำงานได้ถูกต้อง และให้ผลลัพธ์ที่ไม่ผิดพลาดสำหรับทุกกรณี จึงสามารถนำโปรแกรมดังกล่าวไปใช้งานได้ นอกจากนี้นักเขียนโปรแกรมยังควรที่จะจัดทำเอกสาร ประกอบการพัฒนาโปรแกรมที่จัดทำขึ้นได้สะดวกและรวดเร็วรวมถึงให้ผู้ใช้โปรแกรมเข้าใจวิธีการใช้งานโปรแกรมอย่างรวดเร็ว
7.1.1 การวิเคราะห์และออกแบบโปรแกรม
 ในการพัฒนาโปรแกรมคอมพิวเตอร์ให้กับระบบงานขนาดใหญ่ที่มีการแบ่งงานวิเคราะห์ระบบและงานเขียนโปรแกรมออกจากกันนั้น โดยทั่วไปการมอบหมายงานให้นักเขียนโปรแกรม จะเป็นการกำหนดความต้องการของโปรแกรมในภาพรวม แต่ไม่ได้ระบุรายละเอียดถึงขั้นเป็นรหัสลำลองหรือผังงานที่ละเอียด นักเขียนโปรแกรมจึงต้องศึกษาถึงความต้องการของงานที่ได้รับมอบหมาย ข้อมูลนำเข้า ข้อมูลส่งออก และกระบวนการในการแก้ปัญหาอย่างละเอียดเพื่อพัฒนาขึ้นเป็นขั้นตอนวิธีในการแก้ปัญหา ซึ่งอยู่ในรูปแบบของผังงานอย่างละเอียด ซึ่งขั้นตอนดังกล่าวนี้ คือ การออกแบบผังงานดังกล่าวแล้วในบทที่ 6
7.1.2 การเขียนโปรแกรมจากรหัสลำลองหรือผังงาน
    โดยทั่วไปการเขียนโปรแกรมจากรหัสลำลองหรือผังงานที่ได้ออกแบบไว้อย่างดีแล้ว นักเขียนโปรแกรมสามารถทำได้โดยง่ายและรวดเร็ว ซึ่งจะเป็นการแปลงจากแต่ละสัญลักษณ์ของผังงาน ไปเป็นคำสั่งที่สอดคล้องกันในภาษาโปรแกรมที่เลือกใช้ โดยโปรแกรมที่ดีจะต้องมีการตรวจสอบและแจ้งข้อผิดพลาดให้แก่ผู้ใช้งานโปรแกรมทราบ โดยที่การทำงานของโปรแกรมไม่สะดุดลงตัวอย่างเช่น ในการพัฒนาโปรแกรมเพื่อหาค่าของผลหาร ถ้าหากว่ามีการรับข้อมูลนำเข้าเป็นตัวหาร แต่ผู้ใช้ป้อนข้อมูลตัวหารเป็นศูนย์ โปรแกรมจะเกิดข้อผิดพลาดในการทำงานขึ้น ดังนั้นโปรแกรมควรต้องทำการตรวจสอบว่า ถ้าตัวหารเป็นศูนย์ต้องแจ้งข้อความผิดพลาดให้ผู้ใช้ทราบ
  7.1.3 การเตรียมข้อมูลสำหรับทดสอบโปรแกรม
ในระหว่างขั้นตอนการออกแบบวิธีการแก้ปัญหาให้อยู่ในรูปของรหัสลำลองหรือผังงานนั้น นักเขียนโปรแกรมควรพิจารณาถึงข้อมูลที่จะนำมาใช้ในการทดสอบโปรแกรมที่จะเขียนขึ้นด้วยความสมบูรณ์ของข้อมูลที่ใช้ในการทดสอบโปรแกรมมีความสำคัญมาก เนื่องจากจะเป็นสิ่งบ่งบอกถึงความถูกต้องของโปรแกรมที่พัฒนาขึ้น ว่ามีความถูกต้องครอบคลุมข้อมูลนำเข้าทุกรูปแบบ โดยตรวจสอบว่ามีข้อมูลนำเข้ารูปแบบใดที่โปรแกรมไม่สามารถรองรับได้ เช่น ข้อมูลไม่อยู่ในช่วงที่ถูกต้อง และข้อมูลที่รับเข้าเป็นตัวเลขแต่ผู้ใช้ป้อนตัวอักษร
7.1.4 การทดสอบโปรแกรม
หลังจากได้เขียนโปรแกรมและเตรียมข้อมูลสำหรับทดสอบอย่างครบถ้วนแล้ว ขั้นตอนทดสอบโปรแกรมก็จะสามารถดำเนินการได้ ถ้าหากว่าโปรแกรมที่พัฒนาขึ้นมีความซับซ้อนไม่มากนัก นักเขียนโปรแกรมสามารถทำการทดสอบโดยรันโปรแกรม ป้อนข้อมูลทีละชุด และตรวจสอบความถูกต้องของผลลัพธ์ที่ได้ ซึ่งเป็นวิธีที่ง่ายและเหมาะสมสำหรับผู้เริ่มต้นฝึกหัดการเขียนโปรแกรม เนื่องจากสามารถทดสอบโปรแกรมได้รวดเร็ว ในบางครั้งนักเขียนโปรแกรมอาจต้องใช้โปรแกรมเฉพาะเพื่อทำการรันโปรแกรมที่พัฒนาขึ้น และทดสอบกับชุดข้อมูลทดสอบอย่างอัตโนมัติ
7.1.5 การจัดทำเอกสารประกอบโปรแกรม
ขั้นตอนสุดท้ายหลังจากที่ได้ทดสอบจนแน่ใจว่าโปรแกรมทำงานได้ถูกต้องกับชุดข้อมูลทดสอบทั้งหมดแล้ว คือการจัดทำเอกสารประกอบ ในขั้นตอนนี้นักเขียนโปรแกรมจะต้องรวบรวมรายละเอียดทั้งหมดในระหว่างการพัฒนาโปรแกรม เช่น รายละเอียดของปัญหาที่ได้ทำการวิเคราะห์ไว้ ข้อมูลออกที่ต้องการ ข้อมูลเข้าที่เป็นไปได้ทั้งหมด วิธีการประเมินผลเพื่อแก้ปัญหา รหัสลำลองหรือผังงานที่ได้รับการปรับปรุงแล้วและสอดคล้องกับโปรแกรมที่ได้พัฒนาขึ้น ภาษาที่ใช้ คุณลักษณะของเครื่องคอมพิวเตอร์ และรุ่นของระบบ ปฏิบัติการที่โปรแกรมทำงานด้วย ชุดข้อมูลทดสอบ และผลการทดสอบโปรแกรม โดยนำรายละเอียดทั้งหมดนี้ มาจัดทำเป็นรายงานหรือเอกสาร เพื่อจัดเก็บควบคู่กับตัวโปรแกรมต้นฉบับที่พัฒนาขึ้น สำหรับใช้อ้างอิงในอนาคตเมื่อต้องการแก้ไข หรือพัฒนาโปรแกรมต่อไป นอกจากนี้ควรมีการจักทำคู่มือสำหรับผู้ใช้ ซึ่งอธิบายขั้นตอนในการใช้งานโปรแกรม เพื่อให้ผู้ใช้เข้าใจวิธีใช้งานอย่างถูกต้องและรวดเร็ว

7.2 ภาษาโปรแกรมคอมพิวเตอร์
       การแก้ปัญหาด้วยคอมพิวเตอร์นั้นหลังจากที่ได้วิเคราะห์ปัญหา หลังจากที่ได้วิเคราะห์ปัญหาจนได้ขั้นตอนวิธีในการแก้ปัญหา ซึ่งอาจอยู่ในรูปแบบรหัสลำลองหรือผังงาน ขั้นตอนต่อไปคือการเขียนโปรแกรมคอมพิวเตอร์ขึ้นเพื่อแก้ไขปัญหาตามขั้นตอนที่ได้วางแผนไว้ แต่เนื่องจากคอมพิวเตอร์จะรับรู้คำสั่งที่เป็นภาษาเครื่องเท่านั้นและมนุษย์ไม่สามารถเขียนโปรแกรมภาษาเครื่องได้โดยตรง เนื่องจากไม่สะดวก ยากต่อการทำความเข้าใจ จึงได้มีการสร้างภาษาคอมพิวเตอร์ระดับสูงขึ้นมาเพื่อให้ง่ายต่อการเขียนโปรแกรม ไม่จำเป็นต้องเรียนรู้การทำงาน และโครงสร้างภายในเครื่องคอมพิวเตอร์ ก็สามารถเขียนโปรแกรมได้โดยต้องผ่านการแปลให้เป็นภาษาเครื่องก่อนที่จะใช้สั่งงานคอมพิวเตอร์ได้
    การเลือกใช้ภาษาใดเพื่อแก้ปัญหานั้น จำเป็นต้องเลือกภาษาให้เหมาะสมกับลักษณะของปัญหา เนื่องจากภาษาของคอมพิวเตอร์มีมากมาย ในที่นี้จะได้กล่าวถึงลักษณะสำคัญ ความเหมาะสม และตัวอย่างของภาษาที่นิยมใช้กันทั่วไปซึ่งเป็นภาษาในกลุ่มเชิงกระบวนความ กลุ่มเชิงวัตถุและกลุ่มอื่นๆ
7.2.1 ภาษาเชิงกระบวนความ (procedural languages)
โปรแกรมคอมพิวเตอร์ที่เขียนด้วยภาษาเชิงกระบวนความมีลักษณะการทำงานตามลำดับของคำสั่ง จากคำสั่งแรกจนถึงคำสั่งสุดท้ายบางคำสั่งอาจจะถูกทำซ้ำ หรือบาคำสั่งอาจจะไม่ถูกกระทำเลย ขึ้นอยู่กับเงื่อนไขในโปรแกรม ภาษาในกลุ่มนี้เหมาะสำหรับการเริ่มต้นทำความเข้าใจกับการเขียนโปรแกรมคอมพิวเตอร์ เนื่องจากช่วยให้ผู้เรียนรู้จักการคิดอย่างเป็นระบบ อันเป็นพื้นฐานสำคัญในการเขียนโปรแกรมภาษาอื่น นอกจากนี้ในภาษาโปรแกรมประเภทอื่นก็จะยังมีรูปแบบการทำงานเชิงกระบวนความแฝงอยู่ภายในด้วยเสมอ
ในการเขียนโปรแกรมขนาดใหญ่และซับซ้อนด้วยภาษาโปรแกรมเชิงกระบวนความ ควรแบ่งแยกโปรแกรมออกเป็นส่วนย่อยหลายๆส่วน เรียกว่า โปรแกรมย่อย เนื่องจากจะทำให้การเขียนสะดวกขึ้น การตรวจสอบ และการแก้ไขข้อผิดพลาดของโปรแกรมทำได้ง่ายขึ้น ในแต่ละภาษาจะเรียกโปรแกรมย่อยด้วยชื่อที่แตกต่างกัน เช่น ภาษาซี เรียกโปรแกรมย่อยว่า ฟังก์ชัน (Function)
 7.2.2 ภาษาเชิงวัตถุ (Object oriented language)
ภาษาเชิงวัตถุจะอำนวยความสะดวกให้กับผู้เขียนโปรแกรมในการพัฒนาโปรแกรมที่ใหญ่และซับซ้อนได้เป็นอย่างดี อีกทั้งยังสามารถใช้เขียนโปรแกรมในลักษณะเดียวกับภาษาเชิงกระบวนความได้เช่นกัน ภาษากลุ่มนี้ เช่น ภาษาจาวา (Java) ภาษาซีชาร์ป (C#) และภาษาซีพลัสพลัส (C++)
                ปัจจุบันได้มีการคิดค้นเครื่องมือช่วยให้นักเรียนเขียนโปรแกรมสามารถพัฒนาโปรแกรมจะออกแบบหน้าจอสำหรับติดต่อกับผู้ใช้ก่อน แล้วเขียนโปรแกรมสำหรับแต่ละส่วนบนหน้าจอ ทำให้จัดสร้างโปรแกรมได้ง่ายและรวดเร็ว
7.2.3 ภาษาอื่นๆ
1)โฟร์ทจีแอล (Fourth – generation languages: 4GLs) เป็นกลุ่มของภาษาที่แตกต่างจากภาษาเชิงกระบวนความ ที่เน้นให้ผู้ใช้สามารถเข้าถึงข้อมูลในฐานข้อมูลได้โดยง่าย ภาษาจะมีความคล้ายคลึงกับภาษาอังกฤษที่ใช้กันอยู่ ตัวอย่างของภาษา 4GLs เช่น ภาษาเอสคิวแอล (SQL)
2) เอชทีเอ็มแอล (Hypertext Markup Languge: HTML) เป็นภาษาที่ใช้จัดรูปแบบการแสดงผลที่ใช้ในการเขียนโปรแกรมอย่างแท้จริง แต่เป็นการกำหนดวิธีการในการแสดง เอชทีแอลจะใช้แท็ก (tags) เป็นตัวกำหนดว่าส่วนใดเอกสารจะให้แสดงผลอย่างไร
7.3 การโปรแกรมด้วยภาษาซี
ในบทนี้จะได้แนะนำให้รู้จักกับภาษาซี ซึ่งเป็นภาษาที่เขียนเป็นแบบโครงสร้างและเป็นภาษาที่ใช้เป็นพื้นฐานในการเรียนรู้การเขียนโปรแกรมเชิงกระบวนความได้เป็นอย่างดี
7.3.1 โครงสร้างของภาษาซี
                โครงสร้างพื้นฐานของโปรแกรมภาษาซีจะต้องประกอบด้วยฟังก์ชันอย่างน้อย 1 ฟังก์ชันคือฟังก์ชัน Main()          
                ฟังก์ชัน Main () ประกอบด้วย 3 ส่วนหลัก คือ
1)ส่วนหัวของฟังก์ชัน ในบรรทัดที่ 1 ประกอบด้วย ชนิดข้อมูล ชื่อฟังก์ชัน Main ตามด้วยเครื่องหมาย () ตามลำดับ สำหรับชนิดข้อมูล เป็นการระบุว่าฟังก์ชันจะส่งค่ากลับไปให้กับฟังก์ชันผู้เรียกเป็นข้อมูลฟังก์ชัน main () จะส่งค่ากลับเป็นชนิดข้อมูลจำนวนเต็มหรือ int
2)ส่วนการประกาศตัวแปร ในบรรทัดที่ 2 ใช้สำหรับประกาศตัวแปรชนิดต่างๆเพื่อเก็บข้อมูลระหว่างการประมวล
3) ส่วนคำสั่ง ในบรรทัดที่ 3 ประกอบด้วยคำสั่งต่างๆ ซึ่งอาจรวมถึงการเรียกใช้ฟังก์ชันอื่นได้ด้วย
7.3.2 องค์ประกอบของภาษาซี
ในที่นี้จะได้อธิบายองค์ประกอบพื้นฐานของภาษาซี ซึ่งเป็นโปรแกรมที่พัฒนามาจากผังงาน โดยเพิ่มจำนวนครั้งของการทายทั้งหมดด้วย
-                   ในบรรทัดที่ 1 และ 2 เป็นการรวมเอาฟังก์ชันมาตรฐานของภาษาซีเข้ามาร่วมใช้งานกับโปรแกรมที่เขียนขึ้น นำให้นักเขียนโปรแกรมสามารถเรียกใช้ฟังก์ชันมาตรฐานที่ภาษาซีเตรียมไว้ได้ เช่น ฟังก์ชัน Printf () และ scanf () เป็นต้น
-                   ในบรรทัดที่ 6 ถึง 8 เป็นการประกาศตัวแปร ซึ่งเป็นข้อกำหนดของภาษาซีที่ต้องมีการประกาศตัวแปรไว้ที่ตอนต้นของฟังก์ชัน ก่อนที่จะสามารถใช้งานตัวแปรเหล่านี้ได้ ในที่นี้มีการประกาศตัวแปรtarget, number และ no_of_guesses เป็นจำนวนเต็ม
คำสั่ง While เป็นคำสั่งเพื่อควบคุมว่าชุดคำสั่งภายใต้คำสั่ง while จะถูกวนทำซ้ำอีกหรือไม่ โดยเมื่อโปรแกรมทำงานมาถึงบรรทัดที่ 13จะตรวจสอบก่อนว่าเงื่อนไขเป็นจริงหรือไม่
ภาษาซีถูกสร้างขึ้นในช่วงปี พ.ศ. 2510 โดยนักคอมพิวเตอร์ ชื่อ เดนนิส ริซซี่ จากห้องทดลองของเบลล์วัตถุประสงค์หลักอันหนึ่งในการพัฒนาภาษาซี คือ การใช้ในการสร้างระบบปฏิบัติการยูนิกซ์ ที่เป็นต้นแบบของระบบปฏิบัติการตระกูลลินุกซ์ทั้งหลายในปัจจุบัน
7.4การพัฒนาโครงงานคอมพิวเตอร์
                โครงงานคอมพิวเตอร์เป็นการนำเอาความรู้ในด้านการเขียนโปรแกรมมาใช้ร่วมกับอุปกรณ์คอมพิวเตอร์รวมถึงอุปกรณ์อื่นที่เกี่ยวข้อง เพื่อผลผลิตผลงานสำหรับแก้ปัญหา หรือนำผลงานมาประยุกต์ในงานจริง นักเรียนจะต้องใช้ความรู้และประสบการณ์ เพื่อวางแผนการพัฒนาโครงงาน โดยอาจขอคำปรึกษาจากอาจารย์ผู้สอน หรือผู้ทรงคุณวุฒิอื่น
                ในการเลือกหัวข้อโครงงานนั้นผู้พัฒนาอาจเริ่มจากการใช้ความคิดสร้างสรรค์ ร่วมกับประสบการณ์ในการคิดค้นถึงสิ่งที่เป็นปัญหา และความเป็นไปได้ในการนำเอาระบบคอมพิวเตอร์มาช่วยงาน โดยทั่วไปแล้วโครงงานคอมพิวเตอร์สามารถแบ่งออกได้เป็น 5 ประเภท
1.โครงงานพัฒนาสื่อเพื่อการศึกษา
2.โครงงานพัฒนาเครื่องมือ
3.โครงงานจำลองทฤษฎี
4.โครงงานประยุกต์
5.โครงงานพัฒนาเกม
                การพัฒนาโครงงานเป็นกิจกรรมที่มีกระบวนการย่อยหลายขั้นตอน อีกทั้งยังต้องใช้เวลาความคิดสร้างสรรค์ และอดทนเป็นอย่างสูง จำเป็นต้องวางแผนอย่างระบบ นักเรียนอาจยึดถือขั้นต่อไปนี้เป็นแนวทางในการพัฒนาโครงงาน คือ
1.การเลือกหัวข้อโครงงาน เรื่องทั่วไปหรือเรื่องที่เกี่ยวข้องกับการดำเนินชีวิตประจำวันสามารถนำมาเป็นหัวข้อพัฒนาโครงงานคอมพิวเตอร์ได้ทั้งสิ้น
2.การศึกษาค้นคว้าหาข้อมูลที่เกี่ยวข้องกับโครงงาน เมื่อได้หัวข้อโครงงานแล้ว นักเรียนจำเป็นต้องหาข้อมูลและความรู้เพิ่มเติมเกี่ยวกับงานที่จะต้องการจะจัดทำ
3.การจัดทำข้อเสนอโครงงาน เมื่อได้ข้อมูลเกี่ยวกับโครงงานและพบว่าโครงงานมีความเป็นไปได้แล้วนักเรียนควรเขียนข้อเสนอโครงงานเพื่อนำเสนอกับอาจารย์ผู้สอน
4.การจัดทำโครงงาน ในขั้นนี้ต้องมีการรวบรวมอุปกรณ์ที่ต้องใช้ให้ครบถ้วนมีการดำเนินงานตามตารางเวลาการทำงานอย่างเคร่งครัด เมื่อมีความก้าวหน้าในงาน จำเป็นต้องตรวจสอบความถูกต้องของผลที่ได้อย่างสม่ำเสมอ
5.การเขียนรายงาน ในขั้นตอนนี้เป็นการรวบรวมรายละเอียดทั้งหมดมาเขียนไว้เป็นลายลักษณ์อักษร เพื่อประโยชน์ในการพัฒนาโครงงานเดิมต่อไปอีก
6.การนำเสนอและแสดงผลของโครงงาน โดยทั่วไปเมื่อโครงงานเสร็จสิ้นแล้ว นักเรียนจำเป็นต้องมีการนำเสนอโครงงานให้กับผู้ที่ต้องการใช้งาน ผู้สนใจหรืออาจารย์ผู้รับผิดชอบโครงงาน ควรเตรียมเอกสารนำเสนอให้สมบูรณ์

ไม่มีความคิดเห็น:

แสดงความคิดเห็น