วันพฤหัสบดีที่ 18 กรกฎาคม พ.ศ. 2562

ม.3 ภาษาคอมพิวเตอร์


ภาษาคอมพิวเตอร์เบื้องต้น




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

ภาษาคอมพิวเตอร์

การใช้งานคอมพิวเตอร์ซึ่งเป็นเครื่องมือทางอิเล็กทรอนิกส์ให้ทำงานตามที่ต้องการจำเป็นต้องมีการกำหนดภาษาสำหรับใช้ติดต่อสั่งงานกับคอมพิวเตอร์ ภาษาคอมพิวเตอร์จะเป็นภาษาประดิษฐ์ ( artificial language ) ที่มนุษย์สร้างขึ้นมาเอง เป็นภาษาที่มีจุดมุ่งหมายเฉพาะ มีกฏเกณฑ์ที่ตายตัวและจำกัด คืออยู่ในกรอบให้ใช้คำและไวยากรณ์ที่กำหนดและมีการตีความหมายที่ชัดเจน จึงจัดภาษาคอมพิวเตอร์เป็นภาษาที่มีรูปแบบเป็นทางการ( formal language ) ต่างกับภาษาธรรมชาติที่มีขอบเขตกว้างมาก ไม่มีรูปแบบตายตัวที่แน่นอน กฏเกณฑ์ของภาษาจะขึ้นกับหลักไวยากรณ์และการยอมรับของกลุ่มผู้ใช้นั้น ๆ
ภาษาคอมพิวเตอร์ อาจแบ่งได้เป็น 3 ระดับ คือภาษาเครื่อง ภาษาระดับต่ำ และภาษาระดับสูง

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

     2. ภาษาระดับต่ำ
เนื่องจากภาษาเครื่องเป็นภาษาที่มีความยุ่งยากในการเขียนดังได้กล่าวมาแล้ว จึงไม่มีผู้นิยมและมีการใช้น้อย ดังนั้นได้มีการพัฒนาภาษาคอมพิวเตอร์ขึ้นอีกระดับหนึ่งโดยการใช้ตัวอักษรภาษาอังกฤษเป็นรหัสแทนการทำงาน และใช้การตั้งชื่อตัวแปรแทนตำแหน่งที่ใช้เก็บจำนวนต่าง ๆ ซึ่งเป็นค่าของตัวแปรนั้น ๆ การใช้สัญลักษณ์ช่วยให้การเขียนโปรแกรมนี้เรียกว่าภาษาระดับต่ำ
ภาษาระดับต่ำ เป็นภาษาที่มีความใกล้เคียงกับภาษาเครื่องมาก ดังนั้นบางครั้งจึงเรียกภาษานี้ว่า ภาษาอิงเครื่อง ( machine – oriented language ) ตัวอย่างของภาษาระดับต่ำได้แก่ ภาษาแอสเซมบลี เป็นภาษาที่ใช้คำในอักษรภาษาอังกฤษเป็นคำสั่งให้เครื่องทำงาน เช่น ADD หมายถึง บวก SUB หมายถึง ลบ เป็นต้น การใช้คำเหล่านี้ช่วยให้การเขียนโปรแกรมง่ายขึ้นกว่าการใช้ภาษาเครื่องซึ่งเป็นตัวเลขล้วน ๆ
การใช้โปรแกรมที่เขียนด้วยภาษาแอสเซมบลีนั้น เครื่องคอมพิวเตอร์ไม่สามารถทำงาน ได้ทันที จำต้องมีตัวแปลโปรแกรมจากภาษาแอสเซมบลีให้เป็นภาษาเครื่องก่อนโดยอาศัยโปรแกรมในการแปลที่มีชื่อว่าแอสเซมเบลอร์ ( assembler ) ซึ่งแตกต่างไปตามเครื่องคอมพิวเตอร์แต่ละชนิด ดังนั้น แอสเซมเบลอร์ของเครื่องชนิดหนึ่งจะไม่สามารถใช้แปลโปรแกรมภาษาแอสเซมบลีของชนิดอื่น ๆ ได้
ภาษาแอสเซมบลีนี้ยังคงใช้ยาก เพราะผู้เขียนโปรแกรมจะต้องเข้าใจการทำงานของเครื่องคอมพิวเตอร์อย่างละเอียด ต้องรู้ว่าจำนวนที่จะนำมาคำนวณนั้นอยู่ ณ ตำแหน่งใดในหน่วยความจำ ในทำนองเดียวกับการเขียนโปรแกรมเป็นภาษาเครื่อง ภาษาแอสเซมบลีจึงมีผู้ใช้น้อยและมักจะใช้ในกรณี ที่ต้องการควบคุมการทำงานภายในของตัวเครื่องคอมพิวเตอร์

     3. ภาษาระดับสูง
เป็นภาษาที่สร้างขึ้นเพื่อช่วยอำนวยความสะดวกในการเขียนโปรแกรม ลักษณะของคำสั่งต่าง ๆ ในภาษาอังกฤษซึ่งผู้อ่านสามารถเข้าใจความหมายได้ทันที ผู้เขียนโปรแกรมจึงสามารถเขียนโปรแกรมด้วยภาษาระดับสูงได้ง่ายกว่าเขียนด้วยภาษาแอสเซมบลีหรือภาษาเครื่อง ภาษาระดับสูงมีหลายภาษา เช่น ภาษาฟอร์แทรน ภาษาโคบอล ภาษาปาสคาล ภาษาเบสิก ภาษาวิชวลเบสิก ภาษาซี ภาษาจาวา เป็นต้น โปรแกรมที่เขียนด้วยภาษาระดับสูงแต่ละภาษาจะต้องมีโปรแกรมที่ทำหน้าที่แปลภาษาระดับสูงให้เป็นภาษาเครื่อง เช่น โปรแกรมแปลภาษาฟอร์แทรนเป็นภาษาเครื่อง โปรแกรมแปลภาษาปาสคาลเป็นภาษาเครื่อง คำสั่งหนึ่งคำสั่งในภาษาระดับสูงจะถูกแปลเป็นภาษาเครื่องหลายคำสั่ง
ภาษาระดับสูง ได้แก่
1) ภาษาฟอร์แทรน เป็นภาษาระดับสูงที่เก่าแก่ที่สุด เป็นภาษาที่เหมาะสมกับงานที่ต้องการคำนวณ เช่น งานทางด้านวิทยาศาสตร์ วิศวกรรมศาสตร์และงานวิจัยต่าง ๆ
2 ) ภาษาโคบอล เป็นภาษาที่เหมาะสำหรับงานด้านธุรกิจ เครื่องคอมพิวเตอร์ขนาดใหญ่ส่วนมากมีโปรแกรมแปลภาษาโคบอล
3) ภาษาเบสิก เป็นภาษาที่สร้างขึ้นมาโดยมีจุดประสงค์เพื่อใช้สอนเขียนโปรแกรม แทนภาษาคอมพิวเตอร์ภาษาอื่น เช่น ภาษาฟอร์แทรน ซึ่งมีขนาดใหญ่และต้องใช้หน่วยความจำสูงในการทำงาน ซึ่งไม่เหมาะกับเครื่องคอมพิวเตอร์ในสมัยนั้น ภาษาเบสิกเป็นภาษาที่มีขนาดเล็ก เป็นตัวแปลภาษาชนิดที่เรียกว่าอินเทอร์พรีเตอร์
4) ภาษาปาสคาล เป็นภาษาที่ได้รับการออกแบบให้ใช้ง่ายและมีโครงสร้างที่ดีจึงเหมาะกับการช้าอนหลักการเขียนโปรแกรม
5) ภาษาซีและซีพลัสพลัส เป็นภาษาที่มีใช้กับเครื่องคอมพิวเตอร์ทุกระดับ เนื่องจากภาษาซีได้รวมเอาข้อมูลของภาษาระดับสูงและภาษาระดับต่ำเข้าไว้ด้วยกัน กล่าวคือ เป็นภาษาที่มีไวยากรณ์ที่เข้าใจง่ายทำให้เขียนโปรแกรมได้ง่ายเช่นเดียวกับภาษาระดับสูงทั่วไป แต่ประสิทธิภาพและความเร็ว ในการทำงานดีกว่ามาก เนื่องจากมีการทำงานเหมือนภาษาระดับต่ำ สามารถทำงานได้ในระดับที่เป็นการควบคุมฮาร์ดแวร์ได้มากกว่าภาษาระดับสูงอื่น ๆ ดังจะเห็นได้ว่าภาษาซีเป็นภาษาที่สามารถพัฒนาระบบปฏิบัติการได้ เช่น ระบบปฏิบัติการยูนิกซ์
นอกจากนี้เมื่อมีแนวคิดของการเขียนโปรแกรมแบบเชิงวัตถุได้เข้ามามีบทบาทในวงการคอมพิวเตอร์มากขึ้น ภาษาซีก็ยังได้รับการพัฒนาโดยประยุกต์ใช้กับการเขียนโปรแกรมดังกล่าว เกิดเป็นภาษาใหม่ชื่อว่า ภาษาซีพลัสพลัส
6) ภาษาวิชวลเบสิก เป็นภาษาที่พัฒนาต่อมาจากภาษาเบสิก เป็นภาษาที่ใช้ไวยากรณ์บางส่วนของภาษาเบสิกในการเขียนโปรแกรม แต่มีแนวคิดและวิธีการพัฒนาโปรแกรมที่แตกต่างจากภาษาเบสิกโดยสิ้นเชิง รวมทั้งการใช้เนื้อที่ในหน่วยความจำก็แตกต่างกันมาก ทั้งนี้ เนื่องจากภาษาวิชวลเบสิก เป็นภาษาที่ใช้แนวคิด
7) การเขียนโปรแกรมแบบจินตภาพ ในการพัฒนาโปรแกรมภาษานี้พัฒนาขึ้นโดยบริษัทไมโครซอฟต์ ออกแบบเพื่อเขียนโปรแกรมที่สามารถใช้งานได้บนระบบปฏิบัติการแบบจียูโอ เช่น ระบบปฏิบัติการไมโครซอฟต์วินโดวส์ มีการติดต่อกับผู้ใช้โดยใช้รูปภาพ การเขียนโปรแกรมทำได้ง่ายกว่าการเขียนโปรแกรมแบบเก่ามาก
8) ภาษาจาวา เป็นภาษาที่มีความยืดหยุ่นสูง สามารถเขียนโปรแกรมและใช้งานได้ บนเครื่องคอมพิวเตอร์ทุกประเภทและระบบปฏิบัติการทุกรูปแบบ ในช่วงแรกที่มีการนำภาษาจาวามาใช้งาน จะเป็นการใช้งานบนอินเทอร์เน็ต เป็นภาษาที่เน้นการทำงานบนเว็บ แต่ปัจจุบันสามารถนำมาประยุกต์สร้างโปรแกรมใช้งานทั่วไปได้
นอกจากนี้ เมื่อเทคโนโลยีของการสื่อสารก้าวหน้าขึ้น จนกระทั่งเครื่องคอมพิวเตอร์ ปาล์มท็อป หรือแม้แต่โทรศัพท์เคลื่อนที่ที่สามารถเชื่อมต่อเข้าสู่ระบบอินเทอร์เน็ตและใช้งานระบบเวิลด์ไวด์เว็บได้ ภาษาจาวาก็สามารถสร้างส่วนที่เรียกว่าแอปเพลต( applet ) ให้อุปกรณ์อิเล็กทรอนิกส์ที่กล่าวข้างต้นเรียกใช้งานจากเครื่องที่เป็นแม่ข่าย( server ) ได้
9) ภาษาเดลฟาย แนวคิดการเขียนโปรแกรมของภาษาเดลฟายเหมือนกับแนวคิดของภาษาวิชวลเบสิก คือเป็นการเขียนโปรแกรมเชิงจินตภาพแต่ภาษาพื้นฐานที่ใช้ในการเขียนโปรแกรมจะเป็นภาษาปาสคาล ในการเขียนโปรแกรมเชิงจินตภาพนี้มีคอมโพเนนต์( component ) ที่สามารถใช้เป็นส่วนประกอบเพื่อสร้างส่วนติดต่อผู้ใช้ที่เป็นแบบกราฟิก ทำให้ซอฟต์แวร์ที่พัฒนามีความน่าสนใจและใช้งานง่ายขึ้น การเขียนโปรแกรมด้วยภาษาเดลฟายจึงเป็นที่นิยมในการนำไปพัฒนาเป็นโปรแกรมใช้งานมากรวมทั้งภาษาปาสคาลเป็นภาษาที่เข้าใจง่ายเหมาะแก่การนำมาใช้สอนเขียนโปรแกรม

4. การทำงานของโปรแกรมแปลภาษา
ในการประมวลผลโปรแกรมที่เขียนขึ้นด้วยภาษาระดับสูงจำเป็นต้องอาศัย โปรแกรม ที่ทำหน้าที่ช่วยในการแปลโปรแกรมภาษาระดับสูงให้เป็นภาษาเครื่อง โปรแกรมภาษาที่ใช้ แบ่งออกเป็น 2 ลักษณะ ได้แก่
1) คอมไพเลอร์ ( compiler ) เป็นโปรแกรมที่ทำหน้าที่ในการแปลโปรแกรมที่เขียนด้วยภาษาระดับสูงที่เรียกกันว่า โปรแกรมต้นฉบับ ( source program ) ให้เป็นโปรแกรมภาษาเครื่อง ( object program ) ถ้ามีข้อผิดพลาดเครื่องจะพิมพ์รหัสหรือข้อผิดพลาดออกมาด้วย ภายหลังการแปลถ้าไม่มีข้อผิดพลาด ผู้ใช้สามารถสั่งประมวลผลโปรแกรมและสามารถเก็บโปรแกรมที่แปลภาษาเครื่องไว้ใช้งานต่อไปได้อีกโดยไม่ต้องทำการแปลโปรแกรมซ้ำอีก ตัวอย่างโปรแกรมแปลภาษาแบบนี้ ได้แก่ โปรแกรมแปลภาษาฟอร์แทรน โปรแกรมแปลภาษาโคบอล โปรแกรมแปลภาษาปาสคาล โปรแกรมแปลภาษาซี
2) อินเทอร์พรีเตอร์ ( interpreter ) เป็นโปรแกรมที่ทำหน้าที่ในการแปลโปรแกรมที่เขียนด้วยภาษาระดับสูงให้เป็นภาษาเครื่องเช่นเดียวกับคอมไพเลอร์ ความแตกต่างจะอยู่ที่ อินเทอร์พรีเตอร์ จะทำการแปลและประมวลผลทีละคำสั่ง ข้อเสียของอินเทอร์พรีเตอร์ก็คือ ถ้านำโปรแกรมนี้มาใช้งานอีกจะต้องทำการแปลโปรแกรมทุกครั้ง ภาษาบางภาษามีโปรแกรมแปลทั้งสองลักษณะ เช่น ภาษาเบสิก เป็นต้น
ระบบติดต่อใช้งานคอมพิวเตอร์
ตามปกติเมื่อซื้อเครื่องไมโครคอมพิวเตอร์มาใช้งาน มักจะได้ระบบปฏิบัติการมาพร้อมกับเครื่อง ซึ่งสามารถช่วยจัดการให้ผู้ใช้เรียกใช้หรือติดต่อกับเครื่องได้ทันที โดยรูปแบบของการติดต่อ กับเครื่องจะขึ้นกับระบบปฏิบัติการที่ติดตั้ง และซอฟต์แวร์เสริมสภาพแวดล้อมการใช้งาน ซึ่งเป็นซอฟต์แวร์ปรับปรุงเปลี่ยนแปลงระบบติดต่อระหว่างเครื่องกับผู้ใช้ให้ง่ายและทำงานได้รวดเร็วขึ้น
ระบบติดต่อใช้งานคอมพิวเตอร์ อาจแบ่งได้เป็นสามกลุ่มด้วยกัน ได้แก่ กลุ่มพิมพ์คำสั่งเข้าไปทีละบรรทัด กลุ่มเลือกรายการเมนู และกลุ่มเลือกสัญรูป
1. กลุ่มพิมพ์คำสั่งเข้าไปทีละบรรทัด
ระบบการติดต่อแบบนี้เป็นระบบติดต่อแบบแรก ที่พัฒนามาพร้อม ๆ กับคอมพิวเตอร์ก่อนที่จะมีการพัฒนาระบบอื่น ๆ เป็นการป้อนคำสั่งทีละบรรทัด ซึ่ง ไม่เอื้อต่อการใช้งานคอมพิวเตอร์เท่าใดนัก เพราะผู้ใช้จะต้องเรียนรู้หรือจดจำคำสั่งต่าง ๆ ไว้ให้ได้เสียก่อน เช่นการเรียกใช้คำสั่งของดอส ระบบนี้ผู้ใช้จะมีความสับสนในระยะแรก เพราะจะต้องเรียนรู้คำสั่งว่าใช้งานอย่างไร ซึ่งการป้อนหรือพิมพ์คำสั่งเข้าไปจะต้องพิมพ์ไม่ผิดเลย ระบบติดต่อนี้จะใช้ยากและเสียเวลาบ้าง ถ้าจำคำสั่งไม่ได้ แต่ถ้าใช้ไปนาน ๆ จนคุ้นเคยอาจมีข้อดีที่สามารถเรียกโปรแกรมมาทำงานได้รวดเร็วที่สุด ใช้พื้นที่หน่วยความจำน้อยเพราะลดการแสดงผลในส่วนของกราฟิก


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



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

ระบบติดต่อที่สมบูรณ์แบบควรมีองค์ประกอบดังนี้
1) มีระบบที่ใช้รูปกราฟิกและสัญรูป
2) มีการแสดงรายการบนจอที่สวยงาม น่าดู และให้ความสนุกสนานเพลิดเพลิน กับการใช้งาน
3) สามารถพิมพ์ผลลัพธ์ที่ปรากฏบนจอได้เหมือนกับที่เห็น
4) สนับสนุนการใช้เครื่องพิมพ์หลายรุ่น
5) แสดงองค์ประกอบของระบบไม่ว่าจะเป็นช่องหน้าต่าง หรือรายการเมนูเป็นมาตรฐาน เดียวกัน จนทำให้แยกไม่ออกว่ากำลังทำงานอยู่กับเครื่องต่างระบบ หรือทำงานต่างโปรแกรม เป็นต้น
6) มีลักษณะการใช้งานแบบเลือกรายการ เลือกชิ้นวัตถุที่สามารถชี้และเลือกด้วยเมาส์
7) มีระบบที่ติดตั้งได้ง่ายและสามารถปรับเปลี่ยนระบบภายในได้ง่าย
8) สามารถทำงานเข้ากันได้กับฮาร์ดแวร์และซอฟต์แวร์รุ่นเก่า
9) สนับสนุนการแลกเปลี่ยนข้อมูลระหว่างโปรแกรม

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

              ในการเขียนโปรแกรมเพื่อแก้ปัญหาต่างๆจำเป็นต้องมีการวางแผน และออกแบบโปรแกรมไว้ล่วงหน้า โดยกำหนดขั้นตอนวิธีการทำงานให้ชัดเจน ซึ่งกระบวนการวิเคราะห์ และออกแบบโปรแกรมเรียกว่า วัฏจักรการพัฒนาระบบงาน 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) คือ การใช้สัญลักษณ์รูปภาพ หรือกล่องข้อความบรรยายรายละเอียดการทำงาน และใช้ลูกศรบอกทิศทางลำดับ ของการทำงาน ซึ่งมีข้อดีดังนี้ คือ
•  สามารถอ่านและเข้าใจการทำงานได้ง่าย เพราะมองเห็นภาพรวมขั้นตอนการทำงานทั้งหมดได้ชัดเจน
•  สามารถออกแบบโครงสร้างการทำงานได้หลากหลายโดยใช้ลูกศรแสดงทิศทางการทำงาน ทำให้แก้ปัญหาที่มีหลายเลือกและซับซ้อนได้
•  คำสั่งหรือคำบรรยายรายละเอียดในกล่องข้อความสามารถนำไปเขียนเป็นคำสั่งของโปรแกรมได้
การเขียนโปรแกรม (Program Coding)
เป็นขั้นตอนสำคัญหลังจากได้ผ่านการออกแบบโปรแกรมแล้ว โดยการนำแนวคิดจากอัลกอริธึ่ม หรือผังงานมาแปลงให้อยู่ในรูปคำสั่งคอมพิวเตอร์ โดยอาศัยความรู้และทักษะการเขียนโปรแกรมและใช้ภาษาคอมพิวเตอร์รวมทั้งเครื่องมือช่วยในการเขียนโปรแกรมต่างๆ เพื่อให้เกิดผลลัพธ์ถุกต้อง และทำงานตามที่เราต้องการ สรุปการเขียนโปรแกรม ต้องพิจารณาองค์ประกอบดังนี้
•  เลือกภาษาที่เหมาะสม
•  ลงมือเขียนโปรแกรม โดยการแปลงขั้นตอนการทำงาน (ประมวลผล) ที่ได้จากการออกแบบ ให้อยู่ในรูปของคำสั่งที่ถูกต้อง ตรงตามรูปแบบของภาษาที่เลือกนั้น
การทดสอบและแก้ไขโปรแกรม ( Program Testing & Verification)
การทดสอบและแก้ไขโปรแกรม เป็นขั้นตอนการตรวจสอบโปรแกรมที่เขียนได้ ว่าทำงานถูกต้องตรงตามความต้องการของผู้ใช้ หรือตรงตามลักษณะงานของโปรแกรมนั้นหรอไม่ ความผิดพลาด ( Errors) ที่สามารถเกิดขึ้นได้จากการเขียนโปรแกรม มีดังนี้
•  Syntax Error ความผิดพลาดที่เกิดจากการใช้คำสั่งผิดรูปแบบที่ภาษานั้นกำหนด เช่น การลืมประกาศตัวแปร การเขียนคำสั่งผิอด เช่น คำสั่ง while( ) เป็น WHILE( )
•  Logic Error ความผิดพลาดที่เกิดจากการที่โปรแกรมทำงานผิดไปจากขั้นตอนที่ควรจะเป็น เช่น การตรวจสอบเงื่อนไขผิดไม่ตรงตามวัตถุประสงค์ คำนวณค่าได้คำตอบไม่ถูกต้อง หรือ ทำงานผิดลำดับขั้นตอน เป็นต้น
•  System Design Error ความผิดพลาดที่เกิดจากการที่โปรแกรมทำงานได้ไม่ตรงตามความต้องการของลูกค้า
ขั้นตอนการทดสอบและแก้ไขโปรแกรม
•  Desk-Checking ผู้เขียนโปรแกรมตรวจสอบโปรแกรมด้วยตนเอง ถ้าให้ผู้อื่นช่วยดูจะเรียกว่า Structured-Walkthrough
•  Translating ตรวจสอบรูปแบบคำสั่งต่างๆที่ใช้ในโปรแกรมโดยตัวแปลภาษา ( Translator) เป็นผู้ตรวจ
•  Debugging เป็นการทดลองใช้โปรแกรมจริง เพื่อค้นหาข้อบกพร่อง เช่น ผลลัพธ์ที่ไม่ตรงตามความต้องการ ซึ่งอาจมีสาเหตุจาก Logic Errors และถ้าได้ทดสอบกับผู้ใช้จริงก็จะสามารถตรวจสอบ System Design Errors ได้
การจัดทำเอกสารและคู่มือการใช้งาน (Program Documentation)
การจัดทำเอกสารและคู่มือการใช้งานจัดทำเอกสารต่างๆ ที่เกี่ยวข้องกับระบบหรือการเขียนโปรแกรม ได้แก่
•  คู่มือสำหรับผู้ใช้โปรแกรม (User's Manual or User's Guide) คือเอกสารที่อธิบายวิธีการใช้ระบบหรือโปรแกรม เรียกว่า User Manual ใช้สำหรับผู้ใช้งานโปรแกรม แนะนำวิธีการใช้งานโปรแกรม แนะนำคุณสมบัติ และองค์ประกอบของโปรแกรมต่างๆ วิธีการติดตั้งโปรแกรม สามารถทำควบคู่ไปกับการเขียนโปรแกรม อาจทำเป็นคู่มือเอกสารที่อยู่ในรูปแบบโปรแกรมออนไลน์ก็ได้ (Online Manual)
•  คู่มือสำหรับผู้เขียนโปรแกรม (Programmer's Manual or Programmer's Guide) เป็นคู่มือที่จัดทำขึ้น เพื่อให้ผู้พัฒนาโปรแกรม รวมทั้งเทคนิคพิเศษต่างๆ ของโปรแกรม เพื่อให้สะดวกต่อการปรับปรุงแก้ไขโปรแกรมที่มีอยู่เดิม โดยทั่วไปจะเป็นเอกสารแสดงการวิเคราะห์ และออกแบบระบบ เรียกว่า System Manual ใช้สำหรับผู้พัฒนาระบบหรือโปรแกรม เท่านั้น
การใช้งานจริง (Program Implement)
การใช้งานจริง เป็นขั้นตอนสำคัญหลังจากทำการทดสอบและแก้ไขโปรแกรมให้มีความถูกต้องเรียบร้อยแล้ว โดยการนำโปรแกรมไปใช้งานจริงด้วยการป้อนข้อมูลต่างๆ สภาวะแวดล้อม และสถานการณ์ต่างๆโดยผู้ใช้งานโปรแกรมสามารถทำงานตามฟังก์ชั่น และทำตามจุดประสงค์ของโปรแกรมที่เขียนไว้ ขั้นตอนการใช้งานจริงของโปรแกรมหากพบข้อผิดพลาด ก็สามารถปรับปรุง แก้ไข โปรแกรมให้ถูกต้องได้
การปรับปรุงและพัฒนาโปรแกรม (Program Maintenance)
การเขียนโปรแกรมที่ดีต้องมีขั้นตอนการปรับปรุงและพัฒนาโปรแกรมให้มีความถูกต้อง ทันสมัย และตรงกับความต้องการของผู้ใช้มากที่สุด โดยทั่วไปโปรแกรมที่ใช้งานจะประกอบด้วยหลายๆรุ่น เช่นรุ่นทดสอบ (Beta Version) และ รุ่นที่ใช้งานจริง (Release Version) และต้องมีการปรับเปลี่ยนโปรแกรมให้ดีขึ้น ดังตัวอย่างเช่นโปรแกรมเวอร์ชัน 1 มีการเพิ่มเติม ปรับปรุง แก้ไขโปรแกรมเป็นเวอร์ชัน 1.2 เป็นต้นการพัฒนาโปรแกรมให้ดีขึ้นมีประโยชน์ต่อผู้ใช้งาน และผู้เขียนโปรแกรมต้องอาศัยคู่มือการใช้งาน และเอกสารประกอบของโปรแกรม เพื่อเป็นแนวทางในการแก้ไข และให้ผู้อื่นๆสามารถพัฒนาต่อได้

ผังงาน

 ตารางแสดงสัญลักษณ์ที่ใช้ในการเขียนผังงาน





  โครงสร้างของผังงาน  (Sequence  Structure) โครงสร้างพื้นฐานของผังงานแบ่งเป็น  3 ประเภท  ดังนี้

1. โครงสร้างแบบลำดับ (Sequential Structure)  หมายถึง โครงสร้างที่แสดงขั้นตอนการทำงานเป็นไปตามลำดับก่อนหลัง 

C 1. โครงสร้างแบบลำดับ
ตัวอย่าง  ลำดับขั้นตอนการวางแผนไปโรงเรียน
เริ่มต้น
ตื่นนอน
อาบน้ำแต่งตัว
ไปโรงเรียน
จบ
J  การจำลองความคิดเป็นผังงาน (แบบลำดับ)

2. โครงสร้างแบบมีทางเลือก (Selection Structure) หมายถึง โครงสร้างที่มีเงื่อนไข ขั้นตอนการทำงานบางขั้นตอน ต้องมีการตัดสินใจ
C 2. โครงสร้างแบบทางเลือก
ตัวอย่าง  ลำดับขั้นตอนการประเมินผลสอบ
เริ่มต้น
ทดสอบ
ตรวจผลการสอบและคิดคะแนนที่ได้
ตรวจสอบคะแนนที่ได้ว่าน้อยกว่าร้อยล่ะ 50 หรือไม่
ถ้าน้อยกว่า ให้สอบแก้ตัว
ถ้าไม่น้อยกว่า ให้สอบผ่าน
จบ
J  การจำลองความคิดเป็นผังงาน (แบบทางเลือก)

3. โครงสร้างแบบทำซ้ำ (Repetition Structure)  หมายถึง โครงสร้างที่ขั้นตอนการทำงานบางขั้นตอนได้รับการประมวลผลมากกว่า 1 ครั้ง
C 3. โครงสร้างแบบทำซ้ำ
ตัวอย่าง  ลำดับการตักน้ำจากตุ่มครั้งล่ะ 1 ขันใส่จนถังน้ำเต็ม
เริ่มต้น
ตักน้ำจากตุ่ม 1 ขัน
เทน้ำใส่ถัง
ตรวจสอบน้ำเต็มถัง หรือไม่
ถ้าไม่เต็ม ให้ตักน้ำต่อไป
ถ้าเต็ม ให้หยุดตักน้ำ
จบ
J          การจำลองความคิดเป็นผังงาน (แบบทำซ้ำ)


อ้างอิง : https://pajareeblog.wordpress.com/home

     แบบทดสอบ Quizizz โปรแกรมภาษา


สอบ Online




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

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