หน่วยการเรียนรู้ที่ 1 หลักการเขียนโปรแกรม เเนวคิด เครื่องคอมพิวเตอร์เริ่มเข้ามามีบทบาทในชีวิตและการ ทำ งานของคนต่างประเทศไทยตั้งแต่ปีพ.ศ 2524 ตอน นั้นเรื่องคอมพิวเตอร์ทำ งานโดยใช้หน่วยประมวลผลก ลาง CPU 8088 คอมพิวเตอร์ไม่สามารถทำ งานด้วย ตนเองได้ ต้องมีโปรแกรมคำ สั่ง หรือชุดคำ สั่งที่ช่วยให้ คอมพิวเตอร์ทำ งานได้หรือเรียกว่าง โปรแกรม คอมพิวเตอร์ นั่นเริ่มตั้งแต่ชุดคำ สั่งของระบบปฏิบัติการ โดยทำ หน้าที่เป็นตัวกลางในการติดต่อผู้ใช้กับการ ทำ งานของคอมพิวเตอร์ โปรแกรมสำ เร็จรูปต่างๆเป็น ทุกคำ สั่งที่ใช้ในการทำ งานเฉพาะงาน ซึ่งแตกต่างกันไป แล้วแต่งานนั้นๆ การพัฒนาโปรแกรมให้คอมพิวเตอร์ สามารถทำ งานได้ตามความต้องการถือเป็นหัวใจหลักใน การพัฒนาคอมพิวเตอร์ให้ทำ งานตามความต้องการของ ผู้ใช้ได้มากที่สุด หลักการเขียนโปรเเกรม หน่วยกา ร เ รียนรู้ที่1
สาระการเรียนรู้ 1.ความหมายการเขียนโปรแกรมคอมพิวเตอร์ 2.ระดับของภาษาคอมพิวเตอร์ 3.โครงสร้างของข้อมูล 4.หลักการพัฒนาคอมพิวเตอร์ สมรรถนะประจำ หน่วย เเสดงความรู้เกี่ยวกับโปรเเกรมคอมพิวเตอร์ ผลการเรียนรู้ที่คาดหวัง 1 อธิบายความหมายของการเขียนโปรแกรมได้ 2 อธิบายระดับของภาษาคอมพิวเตอร์ได้ 3 บอกโครงสร้างของข้อมูลได้ 4 บอกหลักการพัฒนาของการเขียนโปรแกรมได้
ความหมายของการเขียนโปรแกรมคอมพิวเตอร์ โปรแกรมคอมพิวเตอร์คือคำ สั่งคอมพิวเตอร์ชุดหนึ่งๆ ที่เขียน ขึ้น เป็นภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่งเช่น ภาษาซี C ภาษาปาสกาล PASCAL ภาษาโคบอล COBOL ภาษาเบสิก BASIC หรือภาษาเเอสเซมบลี ASSEBBLY หรือภาษอื่นๆ โปร เเกรม นี้ อาจจะเรียกเป็นชื่ออื่นได้เช่น ซอฟต์เเวร์ SOFTWARE หรือเเอปพลิเคชั่น APPLICATION โปรเเกรมนั้นเเบ่งได้หลาย ประเภทดังนี้ 1.ซอฟต์เเวร์ระบบ SYSTEM SOFTWARE หมายถึง ชุดของคำ สั่งที่เขียนไว้เป็นคำ สั่งสำ เร็จรูปเนื่องจากทำ งานใกล้ชิดกับ คอมพิวเตอร์มากที่สุดเพื่อควบคุมการทำ งานและทำ หน้าที่ในการ ติดต่ออุปกรณ์ฮาร์ดแวร์ทุกอย่างคอมพิวเตอร์และอำ นวยความ สะดวกให้กับผู้ใช้ในการทำ งาน เช่น MICROSOFT WINDOES 7 หรือ MICROSOFT WINDOWS 8 ของบริษัท MICROSOFT หรือ MAC OS บนเครื่อง MICINTOSH ของบริษัท APPLE ซอฟต์เเวร์ระบบนี้ยังสามารถเเบ่งออกได้อีกดังนี้ ซอฟต์แวร์ควบคุมระบบปฏิบัติการ ซอฟต์แวร์จัดการอุปกรณ์ต่อพ่วง ซอฟต์แวร์การสื่อสาร ซอฟต์แวร์ช่วยพัฒนาโปรแกรม ซอฟต์แวร์อำ นวยความสะดวก
ความหมายของการเขียนโปรแกรมคอมพิวเตอร์ 2.ซอฟต์แวร์ประยุกต์ APPLICATION SOFTWARE คือ ซอฟต์แวร์หรือโปรแกรมขึ้นเพื่อการทำ งานสำ หรับงานเฉพาะ อย่างที่ต้องการ เช่น งานส่วนตัว งานทางด้านธุรกิจ หรืองาน ทางด้านวิทยาศาสตร์ บางครั้งอาจเรียกโปรเเกรมประเภทนี้ ว่า USER’S PROGRAM ซอฟต์แวร์ประเภทนี้โดยส่วนใหญ่ มักใช้ภาษาระดับสูงในการพัฒนา เช่น ภาษาซี โคบอล ปาส กาล วิชวลเบสิก เป็นต้น ตัวอย่างของโปรเเกรมที่พัฒนาขึ้น ใช้ในทางธุรกิจเช่นโปรแกรมการทำ บัญชีของบริษัทโปรแกรม การทำ สินค้าคงคลังเฉพาะโปรแกรมรับออเดอร์ในร้านอาหาร และอื่นๆซึ่งแต่ละโปรแกรมก็อาจมีเงื่อนไขหรือแบบฟอร์มที่ แตกต่างกันไปตามความต้องการหรือกฎเกณฑ์ของแต่ละ หน่วยงานที่ใช้โปรแกรมประเภทนี้จะสามารถดัดแปลงแก้ไข เพิ่มเติมในบางส่วนของโปรแกรมเองได้เพื่อให้ตรงกับความ ต้องการของผู้ใช้งานโปรแกรม
ความหมายของการเขียนโปรแกรมคอมพิวเตอร์ 3.ซอฟต์แวร์สำ เร็จรูป PACKAGE SOFTWARE ซอฟต์แวร์ สำ เร็จรูปเป็นซอฟต์แวร์ที่มีบริษัทผู้ผลิตได้สร้างขึ้นและวางขาย ทั่วไปผู้ใช้สามารถหาซื้อมาประยุกต์ใช้งานทั่วไปได้ซอฟต์แวร์ ประเภทนี้ไม่ได้มุ่งเน้นเฉพาะสำ หรับงานใดงานนี้ผู้ใช้งานจะต้อง เป็นผู้นำ ไปประยุกต์กับงานของตนเองด้วยตนเองเช่นผู้นำ มาใช้ ในการผลิตสื่อการสอนนักศึกษานำ มาใช้ในการทำ รายงานเป็นต้น หรือผู้ใช้อาจต้องสร้างหรือพัฒนาชิ้นงานภายในซอฟต์แวร์ต่อไป อีกราคาของซอฟต์แวร์ใช้งานทั่วไปนี้จะไม่สื่อซอฟต์แวร์ที่นิยมใช้ งานทั่วไปนี้เรียกว่าซอฟต์แวร์สำ เร็จรูปสามารถแบ่งออกเป็น หลายกลุ่มตามลักษณะการใช้งานเช่น ด้านประมวลผลคำ ด้านการวิเคราะห์ข้อมูลหรือตารางทำ งาน ด้านการผลิตและเลือกข้อมูลเป็นระบบฐานข้อมูล ด้านกราฟิกแนะนำ เสนอข้อมูล ด้านการติดต่อสื่อสารทางไกล ด้านการลงทุนและการเงิน ด้านวิทยาศาสตร์และวิศวกรรม กลุ่มซอฟต์แวร์ที่มีการใช้งานมากและจำ เป็นต้องมีประจำ สำ หรับ คอมพิวเตอร์แทบทุกเครื่องคือซอฟต์แวร์ด้านการประมวลผลคำ ด้านตารางทำ งานด้านระบบฐานข้อมูลและด้านกราฟิกและการ เชื่อมต่อสื่อสารในอินเทอร์เน็ต
USER APPLICATION OPERATING SYTEM (OS) HARDWARE ความหมายของการเขียนโปรแกรมคอมพิวเตอร์
ระดับของภาษาคอมพิวเตอร์ ภาษาคอมพิวเตอร์มีการพัฒนาหรือวิวัฒนาการมาโดยลำ ดับจะ สามารถแบ่งออกเป็นยุคของภาษา GENERATION ซึ่งในยุคหลังๆจะ มีการพัฒนาภาษาให้มีความสะดวกในการอ่านและเขียนง่ายขึ้นกว่า ภาษาในยุคแรกๆเนื่องจากจะมีโครงสร้างภาษาใกล้เคียงกับภาษา อังกฤษหรือทักษะที่มนุษย์เข้าใจได้ ภาษาคอมพิวเตอร์สามารถแบ่งออกได้เป็น 5 ยุคดังนี้ 1.ภาษาเครื่อง MACHINE LANGUAGE เป็นภาษาที่มนุษย์เข้าใจได้ ยากพอใช้เลขฐานสองแทนข้อมูล (คือ 0 และ 1 ) แทนลักษณะของการปิด (OFF) เเละเปิด (ON)และ คำ สั่งต่างๆทั้งหมดจะเป็นภาษาที่ขึ้นอยู่กับชนิดของเครื่อง คอมพิวเตอร์หรือหน่วยประมวลผลที่ใช้คือแต่ละเครื่องก็จะมีรูปแบบ ของคำ สั่งเฉพาะของตนเองซึ่งนักเขียนโปรแกรมในอดีตต้องรู้จักวิธีที่ จะรวมตัวเลขเพื่อแทนคำ สั่งต่างๆเป็นภาษาที่มีความยุ่งยากในการ พัฒนามากภาษาชนิดนี้ ได้แก่ ภาษาเเอสเซมบลี 2.ภาษาเเอสเซมบลี ASSEMBLY LANGUAGE เป็นภาษาที่มีการใช้ ตัวอักษรในภาษาอังกฤษมาแทนคำ สั่งที่เป็นเลขฐานสอง (0 ,1) และ เลือกอักษรสัญลักษณ์ที่เป็นคำ สั่งนี้ว่าสัญลักษณ์ข้อความ (MNEMONIC CODES) เพื่อให้ง่ายต่อการเขียนและการจดจำ มากกว่าภาษาเครื่องภาษาเเอสเซมบลียังจัดเป็นภาษาระดับต่ำ (LOW-LEVEL LANGUAGE) มีการนำ สัญลักษณ์มาใช้ในการเขียน โปรแกรม ระดับของภาษาคอมพิวเตอร์
สัญลักษณ์ คือ หมายถึง A ADD การบวก S SUBTRACT การลบ C COMPARE การเปรียบเทียบ MP MULTIPLY การคูณ ST STORE การเก็บข้อมูลไว้ในความจำ ระดับของภาษาคอมพิวเตอร์
ระดับของภาษาคอมพิวเตอร์ สัญลักษณ์เหล่านี้ จะไม่ใช่คำ ที่มีความหมายในภาษาอังกฤษแต่ สามารถทำ ให้นักเขียนโปรแกรมสามารถเขียนโปรแกรมได้ สะดวกสบายมากขึ้นเนื่องจากไม่ต้องจดจำ เลข 0 เเละ 1 ของ เลขฐาน 2 ขีดนอกจากนี้ภาษาเเอสเซมบลียังให้ผู้เขียนใช้ ตัวแปรที่ตั้งขึ้นมาเพื่อการผิดพลาดข้อมูลใดๆเช่น X,Y ,RATE หรือ TOTALแผนการอ้ายถึงตำ แหน่งที่เก็บข้อมูลจริงๆภายใน หน่วยความจำ ด้วย การเขียนโปรแกรมด้วยภาษาเเอสเซมบลีนั้น เมื่อนำ มาใช้ ในเครื่องคอมพิวเตอร์ เครื่องคอมพิวเตอร์จะไม่สามารถที่จะ เข้าไปภาษาเเอสเซมบลีได้จึงต้องมีการแปลภาษาเเอสเซมบลี นั้นให้กลายเป็นภาษาเครื่องก่อนโดยใช้ตัวเเปลภาษาเเอส เซมบลีที่เรียกว่า เเอสเซมเบลอร์ (ASSEMBLER) เป็นตัวเเป ลนอกจากนี้ผู้ที่จะเขียนโปรแกรมภาษาแอสเศมบลีได้จะต้องมี ความรู้ความเข้าใจในเรื่องของฮาร์ดแวร์เป็นอย่างดี เนื่องจาก จะต้องควบคุมการทำ งานของหน่วยความจำ หรืออุปกรณ์ ภายในเครื่องคอมพิวเตอร์อื่นๆ ดังนั้นภาษาเเอสเซมบลี จึง เหมาะที่จะใช้เขียนงานที่ต้องการความเร็วในการทำ งานสูง เช่นงานทางด้านการผลิตอยู่งานพัฒนาซอฟต์แวร์ในระบบ ต่างๆ
ระดับของภาษาคอมพิวเตอร์ ดังที่ได้กล่าวมาเเล้ว ภาษาเเอสเซมบลีจะเป็นภาษาที่ ง่ายกว่าการเขียนด้วยภาษาเพื่อนแต่ก็ยังถือว่าเป็นภาษา ระดับต่ำ ที่ยากต่อการเขียนของนักพัฒนาโปรแกรมมาก จึงไม่เต็มที่นิยมในการนำ มาพัฒนาโปรแกรมมากจุดหนึ่ง ภาษาเเอสเซมบลี ตัวเเปลภาษา (ASSEMBLE LANGUAGE) (ASSEMBLER) ภาษาเครื่อง (MACHINE LANGUAGE)
ระดับของภาษาคอมพิวเตอร์ 3.ภาษาระดับสูง (HIGH -LEVEL LANGUAGE) เป็นภาษารุ่น ที่3 (3RD GENERTION LANGUAGE หรือ 3GLS) เป็นภาษาที่สร้างขึ้นมาเพื่อให้สามารถเขียนและอ่านโปรแกรม ได้ง่ายขึ้น เนื่องจากมีลักษณะเหมือนภาษาอังกฤษ และที่ สำ คัญคือ ผู้เขียนโปรแกรมไม่จำ เป็นต้องมีความรู้เกี่ยวกับ ระบบฮาร์ดตัวเองแต่อย่างใดแก่ภาษา ภาษาฟอร์เเทรน (FORTRAN),โคบอล (COBAL), เบสิก (BASIC), ปาสกาล (PASCAL), ซี ( C ) เป็นต้น โปรแกรมที่ถูกเขียนด้วยภาษาประเภทนี้จะทำ งานได้เมื่อมี การเเปลงให้เป็นภาษาเรื่องก่อน ซึ่งวิธีการแปลงจากภาษา ระดับสูงให้เป็นภาษาเครื่องทำ ได้โดยที่เรียกว่า คอมไพเลอร์ (COMPILER) หรืออินเทอร์พรีเทอร์ (INTERPRETER) อย่าง ใดอย่างหนึ่งในการแปลภาษา โดยภาษาระดับสูงแต่ละภาษา จะมีตัวแปลภาษาเฉพาะของตัวเอง ดังนั้นจึงไม่สามารถนำ ตัว แปลของภาษาหนึ่งไปใช้กับอีกภาษาหนึ่งได้ เช่น ภาษาโคบอล จะมีตัวแปลภาษาที่เรียกว่า โคบอลคอมไพเลอร์ ไม่สามารถนำ คอมไพเลอร์ของภาษาโคบอลนี้ไปใช้เเปลภาษาปาสกาลได้ เป็นต้น
ระดับของภาษาคอมพิวเตอร์ การเขียนโปรแกรมด้วยภาษาระดับสูงนั้นนอกจากจะให้ ความสะดวกแก่ผู้เขียนแล้วผู้เขียนยังไม่จำ เป็นต้องมีความรู้ เกี่ยวกับการทำ งานของระบบฮาร์ดแวร์มาก ก็สามารถเขียน โปรแกรมสั่งให้เครื่องคอมพิวเตอร์ทำ งานได้ นอกจากนี้ยังมี ข้อดีอีกอย่างคือ สามารถนำ โปรแกรมที่เขียนนี้ไปใช้งานบน เครื่องคอมพิวเตอร์แบบใดๆได้ไม่จำ กัดเครื่องคอมพิวเตอร์ (HARDWARE INDEPENDENT) แต่ต้องทำ งานการแปล โปรแกรมใหม่เท่านั้นอย่างไรก็ตาม ภาษาเครื่องที่ได้จากการ แปลภาษาระดับสูงนี้ประสิทธิภาพของการทำ งานยังไม่เท่ากับ การเขียนด้วยภาษาเครื่องหรือแอสเซมบลีโดยตรง ภาษาระดับสูงจากเป็นภาษามีแบบแผน (PROCEDURAL LANGUAGE) ลักษณะการเขียนโปรแกรมจะมีโครงสร้าง แบบแผนที่เป็นระเบียบ คือ งานทุกอย่างผู้เขียนจริงๆต้อง เขียนโปรแกรมควบคุมการทำ งานทั้งหมด และต้องเขียนคำ สั่ง การทำ งานที่เป็นขั้นเป็นตอนทุกอย่างไม่ว่าจะเป็นการ สร้างแบบฟอร์ม กรอกข้อมูล การประมวลผล หรือการสร้าง รายงาน โปรแกรมที่เขียนจะทับซ้อนและใช้เวลาในการ พัฒนามานาน
ภาษาระดับสูง ตัวเเปลภาษา ภาษาคอมพิวเตอร์ (COMPILER/INTERPRETER) 4.ภาษาระดับสูงมาก (VERYHIGH-LEVEL LANGUAGE) เป็น ภาษารุ่นที่4 (4GLS: FOURTH-GENERATION LANGUAGE) ลักษณะของภาษาเป็นภาษาธรรมชาติ คล้ายกับภาษาพูดของ มนุษย์ จะช่วยในการสร้างแบบฟอร์มบนหน้าจอเพื่อจัดการเกี่ยว กับข้อมูลรวมถึงการออกรายงานซึ่งมีการจัดการที่ง่ายมากไม่ยุ่ง ยากเหมือนภาษารุ่นที่ 3 ตัวอย่างของภาษาในรุ่นที่ 4 ได้แก่ INFORMIX-4GL, FOCUS, SYBASE,INGRES เป็นต้น ระดับของภาษาคอมพิวเตอร์
ระดับของภาษาคอมพิวเตอร์ ลักษณะของภาษาระดับสูงมาก(4GL) มีดังนี้ 1.เป็นภาษาเเบบ NOPROCEDURAL คือผู้พัฒนาโปรแกรมไม่ จำ ปีจะต้องเขียนโปรแกรมในทุกส่วนเองเพียงแต่กำ หนดสิ่ง ต่างๆตามที่ต้องการแล้วให้คอมพิวเตอร์เป็นผู้กำ หนดราย ละเอียดต่างๆให้เข้มการสร้างแบบฟอร์มการรับข้อมูลจากผู้ใช้ งาน ผู้เขียนโปรแกรมเพียงแต่ทำ การออกแบบรูปร่างของเเบบ ฟอร์มนั้นบนโปรเเกรมเอดิเตอร์แล้ว (EDITOR) นั้น เเละเก็บ เป็นไฟล์ไว้ เมื่อจะเรียกใช้งานแบบฟอร์มต้องเตรียมเปิดใช้คำ สั่ง เปิดไฟล์ใหม่ขึ้นมาแสดงบนหน้าจอคอมพิวเตอร์ได้ทันทีซึ่งต่าง จากภาษาระดับที่ 3 ที่เป็นเเบบ PROCEDURAL ไม่เขียน โปรแกรมจะต้องเขียนรายละเอียดทั้งหมดว่าที่บรรทัดนี้ คอลัมน์ จะให้แสดงข้อความหรือข้อมูลอะไรออกมา ซึ่งถ้าต่อไปนี้จะมี การปรับเปลี่ยนหน้าตาของแบบฟอร์มก็จะเป็นเรื่องที่ยุ่งยาก มากในการสร้างไฟล์รายงานด้วย 4GLS ก็สามารถทำ ได้อย่าง ง่าย เพียงเเต่ระบุลงไปว่าต้องการรายงานอะไร มีข้อมูลใดที่จะ นำ มาเเสดงบ้าง โดยไม่ต้องบอกถึงวิธีการสร้าง หรือการดึงข้อ มูลเเต่อย่างใด โดยการเขียนโปรเเกรมภาษา 4GLS จัดการคำ สั่งนั้นให้ตรงความต้องการของผู้เขียนโปรเเกรม
ระดับของภาษาคอมพิวเตอร์ ดังนั้นจะเห็นว่า ภาษาระดับที่4 เป็นภาษาที่ผู้เขียนโปรเเก รมบอกว่าต้องการอะไร (WHAT) โดยไม่ต้องบอก คอมพิวเตอร์ว่าให้ทำ อย่างไร (HOW) เเต่เป็นภาษาในรุ่นที่3 ผู้เขียนโปรเเกรมต้องบอกคอมพิวเตอร์ทั้งหมดว่าต้องการทำ อะไร เเละต้องบอกด้วยว่าทำ อย่างไร ซึ่งจะต้องสั่งให้ คอมพิวเตอร์ทำ งานเป็นขั้นตอน เเละคอมพิวเตอร์ก็จะมีหน้าที่ ทำ งานตามที่ผู้เขียนโปรเเกรมสั่ง อย่างไรก็ตาม4GLS ก็สามารถมีรูปเเบบเป็น PROCEDURAL ได้ด้วย เนื่องจากงานบางชนิดอาจจะมีความ ซับซ้อน จึงต้องอาศัยการเขียนโปรเเกรมที่เป็นเเบบ PROCEDURAL เข้าช่วยด้วย จึงสรุปได้ว่า 4GLS จะมีรูป เเบบผสมระหว่าง PROCEDURAL เเละ NONPROCEDURAL 2 การเขียนโปรเเกรมระดับสูงมาก 4GLS ส่วนมากจะเขียน โปรเเกรมเพื่อควบคู่กับระบบฐานข้อมูลโดยใช้ระบบฐาน ข้อมูลจะสามารถจัดการฐานข้อมูลได้โดยผ่านทาง 4GLS นี้ ส่วนประกอบของภาษาระดับสูงมาก 4GLS โดยทั่วไปจะมี ส่วนสำ คัญ 3 ส่วนดังนี้
ส่วนประกอบของภาษาระดับสูงมาก 4GLS โดยทั่วไปจะมีส่วนสำ คัญ 3 ส่วนดังนี้ 1.เครื่องมือช่วยสร้างรายงาน (REPORT GENERATORS) เป็นโปรเเกรมสำ หรับผู้ใช้ (END-USERS) ที่สามารถเขียน รายงานอย่างง่ายได้ด้วยตนเอง โดยผู้ใช้สามารถกำ หนดเงื่อนไข และข้อมูลที่นำ ออกมาพิมพ์ในรายงาน รวมถึงรูปแบบของการ พิมพ์ ไว้โปรแกรมช่วยสร้างรายงานนี้ จะทำ การพิมพ์รายงาน ตามรูปแบบที่กำ หนดไว้ให้ 2.ภาษาช่วยค้นหาข้อมูล (QUERY LANGUAGES) เป็นภาษาที่ ช่วยในการค้นหาหรือดึงข้อมูลจากฐานข้อมูลความคิดเห็นง่าย ต่อการพัฒนามากอยู่ในรูปแบบที่ใกล้เคียงกับภาษาอังกฤษมาก ตัวอย่างเช่น ภาษา SQL (STRUCTURED QUERY LANGUAGE) 3.เครื่องมือช่วยสร้างโปรเเกรม (APPLICATION GENERATORS) จะมีรูปแบบการเขียนโปรแกรมเฉพาะตัว และ สามารถใช้เครื่องมือช่วยสร้างโปรเเกรมนี้ทำ การเเปลง 4GLS ให้กลายเป็นภาษารุ่นที่ 3 ได้ เช่น ภาษาโคบอล หรือภาษาซี ซึ่งอาจนำ ภาษาโคบอล หรือภาษาซีที่เเปลงเเล้วไปพัฒนาต่อ เพื่อใช้กับงานที่ซับซ้อนมากๆต่อไปได้
5ภาษาธรรมชาติ (NATIONAL LANGUAGE) เป็นภาษาในยุค ที่5 ที่มีรูปเเบบ NONPROCEDURAL เช่นเดียวกับภาษาระดับที่ 4 ที่เรียกว่าภาษาธรรมชาติ เพราะสามารถสั่งงานคอมพิวเตอร์ โดยใช้ภาษามนุษย์ได้โดยตรงโดยทั่วไปคำ สั่งที่มนุษย์ป้อนเข้าไป ในคอมพิวเตอร์ จะอยู่ในรูปแบบของภาษามนุษย์ซึ่งอาจมีรูป แบบที่ไม่แน่นอนตายตัว แต่คอมพิวเตอร์สามารถแปลคำ สั่งนั้น ให้อยู่ในรูปแบบที่คอมพิวเตอร์สามารถเข้าใจได้ ภาษาธรรมชาตินี้สร้างขึ้นมาจากเทคโนโลยีผู้เชี่ยวชาญทาง ด้านระบบ (EXPERT SYSTERM) ซึ่งเป็นงานที่อยู่ในสาขา ปัญญาประดิษฐ์ (ARTIFICIAL INTELLIGENCE) ในการที่ พยายามทำ ให้คอมพิวเตอร์เปรียบเสมือนกับเป็นผู้เชี่ยวชาญคน หนึ่งที่สามารถคิดหรือตัดสินใจได้เช่นเดียวกับมนุษย์ คอมพิวเตอร์สามารถตอบคำ ถามของมนุษย์ได้อย่างถูกต้อง พร้อมทั้งมีข้อแนะนำ ต่างๆ เพื่อช่วยในการตัดสินใจของมนุษย์ได้ ด้วย ระบบผู้เชี่ยวชาญนี้จะใช้งานกับเฉพาะด้านใดด้านหนึ่งเช่น ในด้านการแพทย์ การพยากรณ์อากาศ การวิเคราะห์ทางเคมี การลงทุน ซึ่งจะต้องมีการรวบรวมข้อมูลและข่าวสารผู้ เชี่ยวชาญเฉพาะด้านเหล่านั้น ส่วนประกอบของภาษาระดับสูงมาก 4GLS โดยทั่วไปจะมีส่วนสำ คัญ 3 ส่วนดังนี้
โครงสร้างของข้อมูล และแปลงข้อมูล เพื่อเก็บไว้ในรูปแบบของระบบฐานข้อมูลของผู้ เชี่ยวชาญที่เรียกว่าฐานความรู้ (KNOWLEDGE BASE) ซึ่งจะ ต้องเก็บข้อมูลที่มีอยู่เป็นจำ นวนมาก และให้ผู้ใช้สามารถใช้กับ ภาษาธรรมชาติในการดึงข้อมูลจากผ่านความรู้ให้ได้ ดังนั้นจึง อาจเรียกระบบผู้เชี่ยวชาญนี้ได้อีกอย่างคือระบบฐานความรู้ (KNOWLEDGE BASE SYSTEM) โครงสร้างของข้อมูล ข้อมูลเป็นองค์ประกอบที่สำ คัญอย่างหนึ่งในระบบคอมพิวเตอร์ เป็นสิ่งที่ต้องป้อนเข้าไปในเครื่องคอมพิวเตอร์โดยผู้พัฒนาตนเอง จำ เป็นต้องรู้จักข้อมูลและความสำ คัญของข้อมูลแต่ละประเภทที่ นำ มาใช้ในการเขียนโปรแกรม ข้อมูลที่สามารถนำ มาใช้กับ คอมพิวเตอร์ได้มี 5 ประเภท คือ ข้อมูลตัวเลข (NUMERIC DATA) ข้อมูลตัวอักษร (TEXT DATA) ข้อมูลเสียง(AUDIO DATA)ข้อมูลภาพ(IMGES DATA) เเละข้อมูลภาพ เคลื่อนไหว(VIDEO DATA)
ข้อมูลตัวเลข ข้อมูลตัวอักษร ข้อมูลเสียง (NUMERIC DATA) (TEXT DATA) (AUDIO DATA) ข้อมูลภาพ ข้อมูลภาพเคลื่อนไหว (IMAGES DATA) (VIDEO DATA) โครงสร้างของข้อมูล
ระดับโครงสร้างข้อมูล (DATA STRUCTURE ระดับโครงสร้างข้อมูล (DATA STRUCTURE) ในการนำ ข้อมูลไปใช้นั้นมีระดับโครงสร้างข้อมูลดังนี้ 1.บิต(BIT) ข้อมูลที่มีขนาดเล็กที่สุด เป็นข้อมูลที่เครื่อง คอมพิวเตอร์สามารถเข้าใจและนำ ไปใช้งานได้ซึ่งได้แก่เลข 0 หรือเลข 1 เท่านั้น 2.ไบต์ (BYTE) คือเป็นการนำ บิตหลายๆบิตมาเรียงต่อกันเพื่อ กำ หนดค่าได้มากขึ้นเช่น 3 บิต มาต่อเรียงกันจะทำ ให้เกิด สถานะที่ต่างกันคือ 000,001,010,100,011,010 เเละ 111 ก็ จะได้เป็น 8 สถานะ เมื่อนำ บิตมาเรียงต่อรวมกันเป็น 8 บิต เรียกว่าไบต์ มี 256 สถานะ เเละกำ หนดเป็นโครงสร้างข้อมูลที่มี ขนาดเล็กที่สุดที่ใช้งานได้ มีค่าตั้งเเต่0-255 (00000000- 11111111)เช่น 0,1ถึง 9,A,BถึงZ เเละเครื่องหมายต่างๆซึ่ง 1 ไบต์จะเท่ากับ8บิตหรือตัวอักขระ 1 ตัว เป็นต้น 3.ฟิลด์(FIELD) คือไบต์ หรืออักขระตั้งเเต่1 ตัวขึ้นไปรวมกัน เป็นฟิลด์ เช่น เลขประจำ ตัวชื่อนักเรียน นามสกุล ที่อยู่ เป็นต้น 4.เรคคอร์ด (RECORD) คือ ฟิลด์ตั้งเเต่1 ฟิลด์ขึ้นไปที่มีความ สัมพันธ์เกี่ยวข้องรวมกันเป็นเรคคอร์ด เช่น ชื่อนักเรียน นามสกุล ที่อยู่ ห้องเรียน ครูประจำ ชั้น เลขประจำ ตัวนักเรียน ข้อมูลของนักเรียน 1 คน เป็น 1 เรคคอร์ด
ระดับโครงสร้างข้อมูล (DATA STRUCTURE 5.ไฟล์ (FILS) หรือเเฟ้มข้อมูล คือเรคคอร์ดหลายๆ เรคคอร์ด รวมกัน ซึ่งเป็นเรื่องเดียวกัน เช่น ข้อมูลประวัติของนักเรียนเเต่ ละคนรวมกันทั้งหมดเป็นไฟล์หรือเเฟ้มข้อมูลเกี่ยวกับประวัติของ โรงเรียน เป็นต้น 6.ฐานข้อมูล (DATABASE) การเก็บรวบรวมไฟล?ข้อมูลหลายๆ ไฟล?ที่เกี่ยวข้องกันมารวมเข้าด้วยกัน เช่น ไฟล์ข้อมูลนักเรียนที่ ในเเผนกต่างๆ ข้อมูลครูผู้สอน ข้อมูลวิชาที่เรียน ข้อมูลผลการ เรียน มารวมกันเป็นฐานข้อมูลของโรงเรียน เป็นต้น บิต(BITE) ไบต์(BYTE) ฟิลด์(FIELD) เรคคอร์ด(RECORD) ไฟล์หรือเเฟ้มข้อมูล(FILES) ฐานข้อมูล(DATABASE)
หลักการพัฒนาการเขียนโปรเเกรม หลักการพัฒนาการเขียนโปรเเกรม ขั้นตอนหรือวิธีการพัฒนาโปรแกรมประกอบด้วย 6 ขั้นตอนดังนี้ 1 การวิเคราะห์ปัญหา (PROBLEM ANALYSIS) คือ การ วิเคราะห์ปัญหาประกอบด้วยขั้นตอนดังนี้ 1.1กำ หนดวัตถุประสงค์ของงาน เพื่อพิจารณาว่าโปรแกรมต้อง ทำ การประมวลผลอะไรบ้าง 1.2พิจารณาข้อมูลนำ เข้า (INPUT) เพื่อให้ทราบว่าจะต้องนำ ข้อมูลอะไรเข้าคอมพิวเตอร์ (INPUT)ข้อมูลมีคุณสมบัติเป็น อย่างไร ตลอดจนถึงลักษณะและรูปแบบของข้อมูลที่จะนำ เข้า 1.3พิจารณาการประมวลผล (PROCESS) เพื่อให้ทราบว่า โปรแกรมมีขั้นตอนการประมวลผลอย่างไรสื่อที่จะใช้ เช่น การ แสดงออกทางจอภาพ การแสดงออกทางเครื่องพิมพ์ 2 การออกเเบบโปรเเกรม (DESIGN) คือ การออกแบบขั้นตอน การทำ งานของโปรแกรมเป็นขั้นตอนที่ใช้เป็นแนวทางในการลง รหัสโปรแกรม อาจใช้เครื่องมือต่างๆช่วยในการออกแบบ เช่นคำ สั่งจำ ลอง (PSEUDO CODE) หรือผังงาน (FLOW CHART) การ ออกแบบโปรแกรมนั้นไม่ต้องกังวลกับรูปแบบคำ สั่งภาษา คอมพิวเตอร์แต่มุ่งความสนใจไปที่ลำ ดับขั้นตอนในการประมวล ผลของโปรแกรมเท่านั้น
หลักการพัฒนาการเขียนโปรเเกรม 3 การเขียนโปรเเกรมด้วยภาษาคอมพิวเตอร์ (PROGRAMMING) คือ การเขียนโปรแกรมเป็นการนำ เอา ผลลัพธ์ของการออกแบบโปรแกรมมาเปลี่ยนเป็นโปรแกรมภาษา คอมพิวเตอร์ภาษาใดภาษาหนึ่งผู้เขียนโปรแกรมจะต้องให้ความ สนใจของรูปแบบทั้งสองและกฎเกณฑ์ของภาษาที่ใช้เพื่อให้การ ประเมินผลเป็นไปตามผลลัพธ์ที่ได้ออกแบบไว้ 4 การทดสอบเเละเเก้ไขโปรเเกรม (TESTING) การทดสอบโปร เเกรมเป็นการนำ โปรแกรมที่ลงรหัสหรือเข้าคอมพิวเตอร์หรือการ ติดตั้งโปรแกรมเพื่อตรวจสอบการทำ งานของโปรแกรมว่าถูกต้อง หรือไม่โปรเเกรมที่เขียนมี ERROR หรือไม่ หรือทำ งานได้ตามที่ ต้องการหรือไม่ถ้าพบว่ายังไม่ถูกก็แก้ไขให้ถูกต้องต่อไป 5 การทำ เอกสารประกอบโปรเเกรม (DOCUMENTATION) การทำ เอกสารประกอบโปรแกรมหรือคู่มือการใช้งานโปรแกรม เป็นงานที่สำ คัญของการพัฒนาโปรแกรม เอกสารประกอบ โปรแกรมช่วยให้ผู้ใช้โปรแกรมเข้าใจวัตถุประสงค์ ข้อมูลที่จะ ต้องใช้กับโปรแกรม ตลอดจนผลลัพธ์ที่จะได้จากโปรแกรมการ ทำ โปรแกรมทุกโปรแกรมจึงควรต้องทำ เอกสาร
หลักการพัฒนาการเขียนโปรเเกรม 6 การบำ รุงรักษาโปรเเกรม(MAINTENANCE) ต้องมีที่คอย ควบคุมดูแลและคอยตรวจสอบการทำ งานการบำ รุงรักษาไม เกรดจึงเป็นขั้นตอนที่ถามเขียนโปรแกรมต้องควรเฝ้าดูและหาก ข้อผิดพลาดของตนเองในระหว่างที่ผู้ใช้ใช้งานและปรับปรุง โปรแกรมเมื่อเกิดข้อผิดพลาด การวิเคราะห์ปัญหา การออกเเบบโปรเเกรม การเขียนโปรเเกรมด้วยภาษาคอมพิวเตอร์ การทดสอบเเละเเก้ไขโปรเเกรม การทำ เอกสารประกอบโปรเเกรม การบำ รุงรักษาโปรเเกรม