Categories
WEBSITE

การเขียนโปรแกรมเบื้องต้น

การเขียนโปรแกรมเบื้องต้น
1. การเขียนโปรแกรมเบื้องต้น
        โปรแกรมคอมพิวเตอร์ (Computer Programming) คือ ชุดคำสั่งที่สั่งให้คอมพิวเตอร์สามารถทำงานได้ตรงตามความต้องการและความถูกต้อง เช่น โปรแกรมคอมพิวเตอร์สำหรับสั่งให้คอมพิวเตอร์พิมพ์เอกสาร โปรแกรมสำหรับวาดภาพ เป็นต้น
        การเขียนโปรแกรม (Programming) คือ การเขียนชุดคำสั่งด้วยภาษาโปรแกรมที่สั่งให้คอมพิวเตอร์สามารถทำงานได้ตรงตามความต้องการ และสามารถทำงานได้อย่างถูกต้อง ซึ่งเป็นการกำหนดขั้นตอนให้กับคอมพิวเตอร์ทำงานตามลำดับและรูปแบบที่กำหนดไว้
1.1 หลักการเขียนโปรแกรม
        การเขียนโปรแกรมคอมพิวเตอร์นั้น ผู้เขียนโปรแกรมจะต้องเลือกใช้ภาษาโปรแกรมที่เหมาะสม รวมถึงต้องเข้าใจโครงสร้างและไวยากรณ์ของภาษาโปรแกรมนั้นๆ
        1. การกำหนดและวิเคราะห์ปัญหา (Analysis the problem) ผู้เขียนโปรแกรมต้องกำหนดปัญหาและต้องทำความเข้าใจปัญหา โดยการวิเคราะห์ปัญหาซึ่งเ้นสิ่งที่นักพัฒนาโปรแกรมคอมพิวเตอร์ควรกระทำก่อนเสมอ เพื่อทำความเข้าใจกับปัญหาที่เกิดขึ้น และค้นหาวัตถุประสงค์ในการเขียนโปรแกรมคอมพิวเตอร์ การวิเคราะห์ปัญหามีองค์ประกอบสำคัญ ดังนี้
                1) กำหนดวัตถุประสงค์ของโปรแกรมคอมพิวเตอร์
                2) กำหนดลักษณะข้อมูลนำเข้า โดยกำหนดว่ามีข้อมูลนำเข้าอะไร เป็นข้อมูลชนิดใด และนำเข้าอย่างไร พร้อมทั้งกำหนดตัวแปลและประเภทของตัวแปรสำหรับข้อมูลนั้นๆ
                3) กำหนดลักษณะข้อมูลนำออก โดยกำหนดว่ามีข้อมูลนำออกอะไรบ้าง เป็นข้อมูลประเภทใด และนำออกอย่างไร พร้อมกำหนดตัวแปลและประเภทของตัวแปลสำหรับข้อมูลนำออกนั้นๆ
                4) กำหนดวิธีการประมวลผลหรือวิธีการคำนวณ เพื่อใช้แก้ปัญหาตามวัตถุประสงค์ของโปรแกรมคอมพิวเตอร์ การแก้ปัญหานั่นมีวิธีการประมวลผลได้หลายวิธี โดยขึ้นอยู่กับความเหมาะสมและผู้วิเคราะห์
       
2. การออกแบบโปรแกรม (Design a program) เป็รการออกแบบการทำงานของโปรแกรมคอมพิวเตอร์ หรือขั้นตอนในการแก้ปัญหา รวมทั้งหน้าจอการทำงานของโปรแกรม ซึ่งผู้ออกแบบสามารถเลือกใช้เครื่องมือต่างๆ ที่เหมาะสมมาช่วยในการออกแบบได้ โดยแยกการออกแบบโปรแกรมคอมพิวเตอร์เป็น 2 ลักษณะ ดังนี้
                1) การออกแบบอัลกอริทึม (Algorithm) คือ การออกแบบลำดับขั้นตอนการทำงานก่อนและหลังของโปรแกรม โดยสามารถเลือกเขียนได้ 3 ลักษณะ ดังนี้
                    – ภาษาธรรมชาติ (Natural Language) คือ การบรรยายขั้นตอนการทำงานของอัลกอริทึมใดๆโดยใช้ภาษามนุษย์ เพื่ออธิบายถึงลำดับขั้นตอนการทำงานของอัลกอริทึมตามลำดับการทำงานก่อนหลัง
                    – รหัสจำลอง (Pseudo Code) รูปแบบภาษาที่มีโครงงสร้างชัดเจน กระชับ เพื่อใช้อธิบายขั้นตอนการทำงานของอัลกอริทึมใดๆโดยไม่ขึ้นกับภาษาโปรแกรมใดภาษาหนึ่งและสามารถแปลงรหัสจำลองเป็นภาษาคอมพิวเตอร์ได้ง่าย โดยรหัสจำลองสามารถใช้รูปแบบคำสั่งที่เป็นภาษาอังกฤษหรือภาษาไทยก็ได้ อีกทั้งสามารถใช้คำสั่งเฉพาะที่มีอยู่ในภาษาโปรแกรมคอมพิวเตอร์มาช่วยในการเขียนรหัสจำลองได้
                    – ผังงาน (Flowchart) เป็นการใช้แผนภาพสัญลักษณ์เพื่อแสดงลำดับขั้นตอนการทำงาน ซึ่งช่วยลำดับแนวคิดในการเขียนโปรแกรม เรียกว่า program flowchart เป็นวิธีที่นิยมใช้เพราะทำให้เห็นภาพในการทำงานของโปรแกรมซึ่งง่ายกว่าการใช้ข้อความ และเมื่อมีข้อผิดพลาด สามารถดูจากผังงานจะทำให้การแก้ไขหรือปรับปรุงโปรแกรมทำได้ง่ายขึ้น
            2) การออกแบบส่วนติดต่อผู้ใช้ (User Interface) การออกแบบหน้าจอการทำงานของโปรแกรมคอมพิวเตอร์ จะต้องออกแบบให้ใช้งานง่าย สะดวก ไม่ซับซ้อน และต้องคำนึงถึงความต้องการของผู้ใช้งานเป็นหลัก มีชื่อโปรแกรม ในกรณีที่ผู้ใช้งานต้องใส่ข้อมูลใดๆผ่านทางหน้าจอควรมีข้อความกำกับที่สั้น กระชับ และควรมีข้อความแสดงผลลัพธ์ที่ได้ออกมาหลังจากโปรแกรมประมวลผลแล้วทั้งนี้ การออกแบบส่วนติดต่อผู้ใช้ที่ดี คือ ก่ีที่ผู้ใช้งานสามารถใช้งานโปรแกรมคอมพิวเตอร์นั้นได้ทันที โดยใช้คู่มือการใช้งานน้อยที่สุด
            3) การเขียนโปรแกรม (Coding) เป็นขั้นตอนการเขียนชุดคำสั่งด้วยภาษาโปรแกรม เพื่อพัฒนาหรือสร้างโปรแกรมคอมพิวเตอร์ให้สามารถทำงานได้ตรงตามความต้องการ โดยเขียนโปรแกรมคอมพิวเตอร์นั้น ผู้เขียนจะต้องเขียนชุดคำสั่งตามโครงสร้าง (Structure) และไวยากรณ์ (Syntax) ของภาษาโปรแกรมคอมพิวเตอร์ที่เลือกใช้ โดยชุดคำสั่งที่ได้จากขั้นตอนการเขียนโปรแกรมนี้ เรียกว่า ซอร์สโค้ด (Source Code)
การเขียนโปรแกรมมีขั้นตอน ดังนี้
                1) เขียนคำสั่ง (Coding) คือ ขั้นตอนการเขียนชุดคำสั่งให้ถูกต้องตามโครงสร้างและไวยากรณ์ของแต่ละภาษาโปรแกรม
                2) แปลภาษา (Compile) คือขั้นตอนการแปลชุดคำสั่งจากคำสั่งที่เขียนขึ้นมาจาก 1) ให้เป็นภาษาคอมพิวเตอร์ โดยภาษาโปรแกรมแต่ละภาษาจะมีโปรแกรมสำหรับแปลชุดคำสั่งเรียกว่า คอมไพเลอร์ (Compiler) ติดตั้งอยู่ในภาษาโปรแกรมนั้นอยู่แล้ว และสิ่งที่ได้จากขั้นตอนการแปลภาษา คือ ไฟล์โปรแกรมที่พร้อมทำงาน
                 3) สั่งให้ไฟล์โปรแกรมทำงาน (Run) คือ การเรียกไฟล์โปรแกรมให้ทำงานตามความต้องการ
การเขียนโปรแกรมคอมพิวเตอร์พื้นฐานนั้นจะประกอบด้วยคำสั่งต่างๆ ดังนี้
                        – คำสั่งการประกาศตัวแปร เพื่อสร้างตัวแปรสำหรับเก็บค่าต่างๆ เช่น ข้อมูลนำเข้า ผลลัพธ์การประมวลผล เป็นต้น
                        – คำสั่งการรับค่า หรือรับข้อมูลนำเข้า เพื่อรับค่าข้อมูลไปประมวลผล
                        – คำสั่งการคำนวณ หรือประมวลผลข้อมูล เพื่อนำข้อมูลที่รับเข้ามาคำนวณหรือประมวลต่างๆ
                        – คำสั่งการแสดงผล หรือข้อมูลนำออก เพื่อแสดงผลลัพธ์ที่ได้จากการประมวลผล
            4) การทดสอบโปรแกรม (Testing) เป็นขั้นตอนการตรวจสอบความถูกต้องของโปรแกรมก่อนนำไใช้งานจริง เพื่อผู้เขียนโปรแกรมสามารถระบุความผิดพลาดของโปรแกรมได้ในกรณีที่โปรแกรมมีจุดผิดพลาดซ่อนอยู่ พร้อมทั้งดำเนินการแก้ไขจุดผิดพลาดของดังกล่าว โดยการเขียนโปรแกรมที่ดีนั้น ผู้เขียนควรทำการทดสอบโปรแกรมทุกครั้งเพื่อให้โปรแกรมคอมพิวเตอร์ทำงานได้อย่างถูกต้อง และตรงตามความต้องการของผู้ใช้งาน ซึ่งการทดสอบโปรแกรมเบื้องต้นนั้น ผู้เขียนโปรแกรมสามารถทดสอบได้ด้วยตนเองใน 2 ลักษณะ ดังนี้
                1) Black Box Testing คือ การทดสอบโปรแกรมโดยพิจารณาข้อมูลนำเข้า และความถูกต้องของผลลัพธ์ที่ได้จากการทำงานของโปรแกรมเป็นหลัก โดยยังไม่พิจารณาการประมวลผลภานในโปรแกรม เปรียบเสมือนกล่องดำที่ไม่สามารถมองเห็นสิ่งที่อยู่ภายในกล่อง
                2) White Box Testing คือ การทดสอบโปรแกรมโดยพิจารณาข้อมูลนำเข้า และความถูกต้องของผลลัพธ์ที่ได้จากการทำงานของโปรแกรม และความถูกต้องของการประมวลผลภายในโปรแกรม เปรียบเสมือนกล่องโปร่งใสที่สามารถมองเห็นสิ่งที่อยู่ภายในกล่องได้ ทำให้การทดสอบโปรแกรมลักษณะนี้มีความซับซ้อนมากกว่าการทดสอบ Black Box Testing
1.2 โปรแกรมภาษา C
            1) ประวัติและความเป็นมาของภาษา C
    ภาษา C พัฒนาขึ้นในช่วงระหว่างปี ค.ศ. 1969 – 1973 โดยเดนนิส ริตชี (Dennis Ritchie) แห่ง Bell Lab ซึ่ง ภาษา C มีต้นกำเนิดมาจากภาษา 2 ภาษา คือ ภาษา BCPL และภาษา B และได้รับการรับรองมาตรฐานโดย ANSI ซึ่งภาษา C เป็นโปรแกรมหนึ่งที่ได้รับความนิยมแพร่หลายมาจนถึงปัจจุบัน
            2) คำสั่งและไวยากรณ์พื้นฐาน
                1) จบคำสั่งด้วยเครื่องหมาย ; เสมอ
                2) คำสั่งการประกาศตัวแปร
                รูปแบบ : ชนิดข้อมูล ตัวแปร ; เช่น int width; ตัวแปร width เป็นตัวแปรประเภทเลขจำนวนเต็ม
                3) คำสั่งการรับข้อมูล
                รูปแบบ : scanf (ชนิดตัวแปร ,&ชื่อตัวแปร); เช่น scanf (“%d”, &width); โดย %d หมายถึง ชนิดเลขจำนวนเต็ม
                4) คำสั่งการแสดงผลข้อมูลออกมาทางหน้าจอ
                รูปแบบ : printf (“ข้อความ”) เช่น printf (“Square area is : %d\n”, area);
            3) โครงสร้างภาษา C เบื้องต้น
                1) Preprocessor Directiver : เป็นคำสั่งที่ถูกแปลภาษา (Compile) เป็นอันดับแรกโดยใช้สำหรับเรียกใช้คำสั่งมาตรฐานที่ติดตั้งอยู่ในภาษา C อยู่แล้ว จะต้องเขียนขึ้นต้นด้วยเครื่องหมาย
                2) Gobal Declaration : ใช้สำหรับประกาศตัวแปร หรือฟังก์ชั่นที่สามารถถูกเรียกใช้ได้จากทุกส่วนของโปรแกรม
                3) Main Function : เป็นส่วนที่มีความสำคัญ และจำเป็นต้องมี เนื่องจากเป็นส่วนการทำงานหลัก และเป็นจุดเริ่มต้นการทำงานของโปรแกรม
                4) User-Defined Function : เป็นส่วนของการเขียนคำสั่ง หรือฟังก์ชันต่างๆ สำหรับใช้ในโปรแกรม ซึ่งเขียนโดยผู้เขียนโปรแกรมเอง
1.3 โปรแกรมภาษา Scratch
            1) ประวัติและความเป็นมาของภาษา  Scratch
    Scratch เป็นเครื่องมือและโปรแกรมภาษาที่ถูกพัฒนาขึ้นมา เพื่อการเขียนโปรแกรมคอมพิวเตอร์ ในรูปแบบกราฟิก ทำให้สามารถสร้างชิ้นงานได้หลากหลายตามความต้องการ
            2) โครงสร้างของภาษา Scratch เบื้องต้น
ประกอบด้วย 3 ส่วน เป็นองค์ประกอบ ดังนี้
                1) เวที เป็นสถานที่ให้ตัวละครแสดง มีภาพฉากหลังเปลี่ยนแปลงได้ และมีขอบเขตที่แน่นอน เวทีจะมีขนาดความกว้าง 480 pixels สูง 360 pixels โดยในแต่ละโปรเจกต์จะมีเวทีเดียว ชื่อเดียว ไม่สามารถเปลี่ยนชื่อได้
                2) ตัวละคร ตัวละครแต่ละตัวจะมีข้อมูลที่แตกต่างกัน โดยสามารถคลิกที่ภาพตัวละครในพื้นที่แสดงรายการตัวละคร เพื่อจะดูข้อมูลของตัวละครนั้น เช่น ตัวละครปลาทองในโปรเจกต์ Aquarium มีข้อมูลดังตาราง
                3) สคริปต์ คือ ชุดคำสั่งสำหรับตัวละครหรือเวที เพื่อสั่งให้ตัวละครหรือเวทีทำงานตามวัตถุประสงค์ที่ต้องการ โดยการเลือกสคริปต์จากกลุ่มบล็อก ซึ่งแบ่งเป็น 8 กลุ่ม ดังนี้
ตารางแสดงกลุ่มบล็อกการทำงานในโปรแกรม Scratch
1.4 โปรแกรมภาษาไพทอน (Python)
            1) ประวัติและความเป็นมาของภาษาไพทอน
    Python ถูกพัฒนาครั้งแรกเมื่อปี 1989 โดยกิโด ฟาน รอสซัม (Guido van Rossum) โดยโครงสร้างของภาษานั้นจะไม่มีการยึดติดกับแพลตฟอร์มที่ใช้ ไม่ว่าจะเป็น Windows osx Linux ซึ่งการไม่ยึดติดกับแพลตฟอร์ม ทำให้ python เป็น Open Source เต็มรูปแบบที่ใช้พัฒนาได้อย่างอิสระ
            2) โครงสร้างของภาษาไพทอนเบื้องต้น
                1) คอมเมนต์หริอการประกาศตัวแปรภาษา
                2) การนำเข้าไลบรารี หรือคลาสของไพทอนมาใช้
                3) ประกาศตัวแปร ฟังก์ชัน และคำสั่งควบคุมการทำงาน
1.5 โปรแกรมภาษาจาวา (Java)
            1) ประวัติและความเป็นมาของภาษาจาวา

    ภาษาจาวา เป็นภาษาที่ถูกพัฒนาขึ้นในปี ค.ศ. 1991 เป็นภาษาที่พัฒนาขึ้นมาโดย เจมส์ กอสลิง (James Gosling) และวิศวกรคนอื่นๆ ที่บริษัทซันไมโครซิสเต็มส์ โดยเป็นส่วนหนึ่งของโครงการกรีน (the Green Project) ภาษาได้รับการออกแบบให้มีรูปแบบทางภาษาเหมือนภาษา C โดยมีคำกล่าวว่าเป็น “Write Once,Run Anywhere”เขียนเพียงครั้งเดียวและสามารถนำไปรันได้บนทุกแพลตฟอร์ม

            2) โครงสร้างของภาษาจาวาเบื้องต้น
                1) import คือ ส่วนของการเรียกใช้งานคลาสที่อยู่ต่างแพ็กเกจ
                2) package คือ ส่วนการระบุตำแหน่งหรือที่อยู่ของคลาส
                3) class คือ ส่วนของการเขียนคำสั่งการทำงานของโปรแกรม
            3) ข้อดีของภาษาจาวา
                1) ภาษาจาวา เป็นภาษาสนับสนุนการเขียนโปรแกรมเชิงวัตถุแบบสมบูรณ์ ซึ่งเหมาะสำหรับพัฒนาระบบที่มีความซับซ้อน การพัฒนาโปรแกรมแบบวัตถุจะช่วยให้เราสามารถใช้คำ หรือชื่อต่างๆ ที่มีอยู่ในระบบงานนั้นมาใช้ในการออกแบบโปรแกรมได้ ทำให้เข้าใจได้ง่ายขึ้น
                2) โปรแกรมที่เขียนขึ้นโดยใช้ภาษาจาวา จะมีความสามารถทำงานได้ในระบบปฏิบัติการที่แตกต่าง ไม่จำเป็นต้องดัดแปลงแก้ไขโปรแกรม
                3) ภาษาจาวา มีความซับซ้อนน้อยกว่าภาษา C++ เมื่อเปรียบเทียบ code ของโปรแกรมที่เขียนขึ้นโดยภาษาจาวากับ C++ พบว่า โปรแกรมที่เขียนโดยภาษาจาวา จะมีจำนวน code น้อยกว่าโปรแกรมที่เขียนโดยภาษา C++ ทำให้ใช้ง่ายได้ง่ายกว่าและลดความผิดพลาดได้มากขึ้น
                4) ภาษาจาวาถูกออกแบบมาให้มีความปลอดภัยสูงตั้งแต่แรก ทำให้โปรแกรมที่เขียนขึ้นด้วยจาวามีความปลอดภัยมากกว่าโปรแกรมที่เขียนขึ้น
                5) มี IDE application sever และ library ต่างๆมากมาย โดยสำหรับการใช้งานโปรแกรมภาษาจาวาสามารถใช้งานโดยไม่เสียค่าใช้จ่า
            4) ข้อเสียของภาษาจาวา
                1) ทำงานได้ช้ากว่า native code หรือโปรแกรมที่เขียนขึ้นด้วยภาษาอื่น เช่น C หรือ C++ ทั้งนี้ เพราะว่าโปรแกรมที่เขียนขึ้นด้วยภาษาจาวา จะถูกแปลงเป็นภาษากลางก่อน แล้วเมื่อโปรแกรมทำงาน คำสั่งของภาษากลางจะถูกเปลี่ยนเป็นภาษาเครื่องอีกทีหนึ่งครั่งละคำสั่ง (หรือกลุ่มของคำสั่ง) ทำให้ทำงานช้ากว่า native code ซึ่งอยู่ในรูปของภาษาเครื่องแล้วตั้งแต่ compile โปรแกรมที่ต้องการความเร็วในการทำงานจึงไม่นิยมเขียนด้วย JAVA
                2) tool ที่มีในการใช้พัฒนาโปรแกรมจาวา มักไม่ค่อยทันสมัย ทำให้หลายอย่างโปรแกรมเมอร์จะต้องเป็นคนทำเอง ทำให้เสียเวลาทำงานในส่วน tool ทำไม่ได้ ถ้าเราดู tool ของ Microsoft จะใช้งานง่ายกว่า และพัฒนาได้เร็วกว่า
1.6 รูปแบบการเขียนโปรแกรมคอมพิวเตอร์
    การเขียนโปรแกรมคอมพิวเตอร์ผู้เขียนโปรแกรมต้องเข้าใจหลักการในการเขียนแต่ละรูปแบบ ซึ่งจะทำให้สามารถเขียนโปรแกรมคอมพิวเตอร์ด้วยภาษาโปรแกรมต่างๆ ได้ง่ายขึ้น ภาษาโปรแกรมแต่ภาษาจะมีลักษณะหรือรูปแบบการเขียนที่แตกต่างกัน การเลือกภาษาโปรแกรมหรือภาษาคอมพิวเตอร์เพื่อนำมาเขียนโปรแกรมนั้นขึ้นอยู่กับปัจจัยต่างๆ เช่น ความเหมาะสมของโปรแกรมกับลักษณะงานที่จะนำไปใช้ การทำงานร่วมกันได้กับโปรแกรมอื่นๆ หรืออาจเป็นความถนัดของแต่ละคน เป็นต้น โดยภาษาโปรแกรมในปัจจุบันมีรูปแบบการเขียนโปรแกรมขั้นต้น 3 รูปแบบ แบ่งตามโครงสร้าง ดังนี้
            – โครงสร้างการทำงานแบบเรียงลำดับ (sequence structure) เป็นรูปแบบการเขียนโปรแกรมที่มีการทำงานเป็นลำดับขั้นตอน ไล่เรียงลำดับกันไปเหมือนเส้นตรง ไม่มีการข้ามขั้นตอน ไม่มีการย้อนกลับไปทำงานเดิมที่ทำซ้ำไปแล้ว หรือไม่มีการตัดสินใจเพื่อเลือกทำงานใดๆ
            – โครงสร้างการทำงานแบบเลือกทำหรือมีเงื่อนไข (condition structure) เป็นรูปแบบการเขียนโปรแกรมที่มีการตัดสินใจ มีทางเลือกให้เลือกกระทำ  โดยแต่ละทางเลือกจะมีเงื่อนไข ซึ่งจะต้องผ่านการตรวจสอบเงื่อนไขนั้นๆก่อน จึงจะสามารถทำงานในทางเลือกนั้นได้ ทั้งนี้ ภายในโปรแกรมคอมพิวเตอร์อาจมีการตัดสินใจเช่นนี้อยู่หลายจุด เรียกโครงสร้างการทำงานลักษณะนี้ว่า selection หรือ condition
            – โครงสร้างการทำงานแบบทำซ้ำ (iteration structure) เป็นรูปแบบการเขียนโปรแกรมที่มีการทำงานเดิมซ้ำๆ โดยมีเงื่อนไขเพื่อกำหนดจำนวนรอบในการทำงานซ้ำ ซึ่งการทำงานแบบทำซ้ำมี 3 ประเภท คือ การทำงานแบบทำซ้ำตามจำนวนรอบที่ระบุ การทำงานแบบทำซ้ำในขณะที่มีเงื่อนไขเป็นจริง การทำงานทำซ้ำจนกระทั่งเงื่อนไขเป็นจริง

รับทำเว็บ

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *