หน่วยที่ 1 ภาษาคอมพิวเตอร์

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

 โปรแกรมคอมพิวเตอร์ หมายถึง ชุดคำสั่งที่มีขั้นตอน ตามลำดับ หรือตามเงื่อนไขที่กำหนด ที่สั่งให้เครื่องคอมพิวเตอร์ทำงาน เพื่อให้ได้ผลลัพธ์ตามวัตถุประสงค์ แบ่งออกเป็น 2 ประเภท คือ โปรแกรมระบบหรือซอฟต์แวร์ระบบ (System Software) และ โปรแกรมประยุกต์หรือซอฟต์แวร์ประยุกต์ (Application Software)

1.  โปรแกรมระบบหรือซอฟต์แวร์ระบบ (System Software) คือ ชุดคำสั่งที่ทำหน้าที่ควบคุมการปฏิบัติงานของอุปกรณ์คอมพิวเตอร์ ตลอดจนทำหน้าที่ควบคุมด้านการสื่อสารข้อมูลในระบบเครือข่ายคอมพิวเตอร์ แบ่งออกเป็น 3 ประเภท คือ โปรแกรมระบบปฏิบัติการ (Operating System : OS) โปรแกรมแปลภาษาคอมพิวเตอร์ (Translator) และโปรแกรมอรรถประโยขน์ (Utility programs)

2. โปรแกรมระบบปฏิบัติการ (Operating System : OS) เป็นโปรแกรมที่ทำหน้าที่เป็นสื่อกลางในการประสานงานระหว่าง โปรแกรมต่าง ๆ กับ อุปกรณ์คอมพิวเตอร์ โดยมีวัตถุประสงค์ เพื่อให้ผู้ใช้สามารถสั่งงานคอมพิวเตอร์ได้ คอมพิวเตอร์ทุกเครื่องต้องถูกติดตั้งโปรแกรมระบบปฏิบัติการก่อนที่จะติดตั้งโปรแกรมใช้งานอื่น ๆ ระบบปฏิบัติการที่รู้จักกันทั่วไป เช่น วินโดวส์ (Wondows) , ลีนุกซ์ (linux) , ยูนิกซ์ (Unix) เป็นต้น

    1. โปรแกรมแปลภาษาคอมพิวเตอร์ (Translator) ทำหน้าที่แปลภาษาที่ผู้เขียนโปรแกรมเขียนขึ้นให้เป็นภาษาเครื่อง ที่คอมพิวเตอร์เข้าใจและสามารถปฏิบัติตามคำสั่งได้
    2. โปรแกรมอรรถประโยขน์ (Utility programs)คือ โปรแกรมที่ช่วยเพิ่มประสิทธิภาพให้กับโปรแกรมระบบปฏิบัติการ โดยให้ผู้ใช้สามารถดูแลความปลอดภัยของข้อมูล และตรวจสอบอุปกรณ์คอมพิวเตอร์ เช่น โปรแกรมตรวจสอบความถูกต้องของข้อมูลในฮาร์ดดิสก์ (Scandisk) โปรแกรมตรวจไวรัส (Virun Scan) โปรแกรมบีบอัดข้อมูล (Compression Utility) โปรแกรมช่วยจัดระเบียบข้อมูลในฮาร์ดดิสก์ (Disk Defragmenter) เป็นต้น

    3.  โปรแกรมประยุกต์หรือซอฟต์แวร์ประยุกต์ (Application Software) หมายถึง โปรแกรมคอมพิวเตอร์ที่ถูกพัฒนาขึ้น เพื่อให้ระบบคอมพิวเตอร์ทำงานด้านต่าง ๆ ตามวัตถุประสงค์ของผู้ใช้ แบ่งรูปแบบของการพัฒนาโปรแกรมออกเป็น 2 ประเภทใหญ่ ๆ คือ โปรแกรมสำเร็จรูป (Package Software) และโปรแกรมที่เขียนขึ้นเพื่อใช้งานเฉพาะด้าน (Application Specific)

    4.  โปรแกรมสำเร็จรูป (Package Software) เป็นโปรแกรมที่พัฒนาขึ้นมาโดยไม่เจาะจงสำหรับหน่วยงานใดหน่วยงานหนึ่ง แต่พัฒนาขึ้นสำหรับงานทั่ว ๆ ไป ที่ผู้ใช้สามารถเลือกโปรแกรมเหล่านั้นไปประยุกต์ใช้กับงานของตนได้ทันที เช่น โปรแกรมประมวลคำ (Word Processing) โปรแกรมตารางงาน (Spreadsheet) โปรแกรมการนำเสนอ (Presentation) โปรแกรมจัดการฐานข้อมูล (Database) โปรแกรมกราฟิก (Graphics Software) เป็นต้น

    5. โปรแกรมที่เขียนขึ้นเพื่อใช้งานเฉพาะด้าน (Application Specific) เป็นโปรแกรมที่ถูกพัฒนาขึ้นสำหรับการใช้งานเฉพาะภายในหน่วยงาน และพัฒนาตามความต้องการของหน่วยงาน แต่ละหน่วยงาน เช่น โปรแกรมข้อมูลนักเรียน-นักศึกษา โปรแกรมสหกรณ์ร้านค้า เป็นต้น โปรแกรมประเภทนี้มีค่าใช้จ่ายในการพัฒนาสูง และใช้เวลาในการพัฒนานาน

    ยุคของภาษาโปรแกรม
    ภาษาคอมพิวเตอร์ ได้ถูกพัฒนามาหลายยุคหลายสมัย ตั้งแต่ยุคแรก การใช้ภาษายังมีความใกล้เคียงกับภาษาเครื่องคอมพิวเตอร์มาก เรียกว่า ภาษาระดับต่ำ (Low-level Language) แต่มีโครงสร้างและรูปแบบที่ยากต่อความเข้าใจของมนุษย์ ต่อมาได้พัฒนารูปแบบภาษาที่มีความใกล้เคียงกับภาษามนุษย์ เรียกว่า ภาษาระดับสูง (High-level Language) สามารถจำแนกยุคของภาษาคอมพิวเตอร์ได้ 5 ยุค ดังนี้
    1. ภาษาคอมพิวเตอร์ยุคที่ 1 (First Generation Language) ในยุคนี้จะสั่งงานคอมพิวเตอร์ด้วยภาษาเครื่อง เป็นภาษาที่สื่อสารกับคอมพิวเตอร์ได้โดยตรง คำสั่งในภาษาเครื่องประกอบด้วยตัวเลขฐานสอง มี 0 กับ 1 เป็นสัญลักษณ์แทนสัญญาณไฟฟ้า เนื่องจากเป็นรูปแบบภาษาที่สื่อสารกับคอมพิวเตอร์ได้โดยตรง จึงไม่ต้องมีตัวแปลภาษา การเขียนชุดคำสั่งในยุคนี้นั้น จะมีความยุ่งยากในการเขียนเป็นอย่างยิ่ง ยุคนี้จัดอยู่ในกลุ่มภาษาระดับต่ำ

    2. ภาษาคอมพิวเตอร์ยุคที่ 2 (Second Generation Language) พัฒนามาจากยุคที่ 1 เมื่อการเขียนคำสั่งภาษาเครื่องทำได้ยาก จึงได้พัฒนาโดยนำสัญลักษณ์มาใช้แทนรูปแบบตัวเลขในภาษาเครื่อง เพื่อให้สามารถเขียนคำสั่งได้ง่ายขึ้น ภาษาในยุดนี้ได้แก่ ภาษาแอสเซมบลี แต่คอมพิวเตอร์ไม่เข้าใจความหมายของชุดคำสั่งที่เขียนขึ้นด้วยรูปแบบภาษาแอสเซมบลี จึงต้องมีตัวแปลภาษา เรียกว่า แอสเซมเบลอร์ เพื่อช่วยแปลคำสั่งภาษาแอสเซมบลีให้เป็นภาษาเครื่อง เพื่อให้คอมพิวเตอร์เข้าใจ ยุคนี้ก็ยังจัดอยู่ในกลุ่มภาษาระดับต่ำ
    3. ภาษาคอมพิวเตอร์ยุคที่ 3 (Third Generation Language) ในยุคนี้ได้พัฒนารูปแบบภาษาให้มีความใกล้เคียงกับภาษาของมนุษย์ยิ่งขึ้น เรียกว่า ภาษาระดับสูง โดยนำกลุ่มคำของภาษาอังกฤษมาใช้เป็นรูปแบบของการเขียน ช่วยให้โปรแกรมภาษาในยุคนี้มีรูปแบบคำสั่งที่ง่ายต่อการเรียนรู้และเข้าใจ การเขียนโปรแกรมคอมพิวเตอร์ในยุคนี้ เป็นรูปแบบเชิงกระบวนการ จะเขียนคำสั่งเป็นขั้นเป็นตอนเรียงลำดับ โดยผู้เขียนจะต้องจดจำรูปแบบคำสั่งต่าง ๆ จึงยังเป็นเรื่องที่ยุ่งยากสำหรับการเขียนโปรแกรม ตัวอย่างภาษาในยุคที่ 3 เช่น ภาษาซี ภาษาเบสิก ภาษาปาสกาล และภาษาฟอร์แทรน เป็นต้น ภาษาในยุคนี้จะมีตัวแปลภาษา 2 ประเภท คือ คอมไพเลอร์ (Compiler) และอินเทอร์พรีเตอร์ (Interpreter)
    4. ภาษาคอมพิวเตอร์ยุคที่ 4 (Fourth Generation Language) ภาษาในยุคที่ 3 มีความยุ่งยาก ซับซ้อน ในการออกแบบโปรแกรม จึงต้องการผู้ที่มีประสบการณ์สูงในการเขียนโปรแกรมเหล่านั้น เพื่อให้เกิดความผิดพลาดน้อยที่สุด ไม่เหมาะกับนักเขียนโปรแกรมมือใหม่ จึงมีการพัฒนาภาษาคอมพิวเตอร์ขึ้นมาใหม่ เป็นภาษาคอมพิวเตอร์ที่มีลักษณะการเขียนที่ไม่เป็นลำดับขั้นตอน หรือไม่มีรูปแบบที่แน่นอน เพียงหยิบเอาปุ่มคำสั่งต่าง ๆ มาวาง ผู้เขียนโปรแกรมรู้เพียงว่าจะให้คอมพิวเตอร์ทำอะไรบ้าง โดยไม่ต้องรู้ว่าทำได้อย่างไร แต่เป็นหน้าที่ของภาษาคอมพิวเตอร์เหล่านั้นมาจัดการแทน รูปแบบของภาษาคอมพิวเตอร์ยุคนี้ช่วยทำให้การเขียนโปรแกรมทำได้ง่าย สะดวก และรวดเร็วขึ้น เรียกว่า ภาษาระดับสูงมาก (Very-high-level Language) ภาษาคอมพิวเตอร์ในยุคที่ 4 นี้ ไม่ได้ถูกออกแบบมาเพื่อทำงานด้วยตนเอง แต่ได้ถูกออกแบบมาเพื่อนำไปใช้ทำงานร่วมกับภาษาอื่น เช่น นำภาษา SQL มาใช้ร่วมกับ ภาษา PHP เป็นต้น
    5. ภาษาคอมพิวเตอร์ยุคที่ 5 (Fifth Generation Language) ภาษาคอมพิวเตอร์ในยุคที่ 5 นี้ มีความใกล้เคียงกับภาษามนุษย์มากยิ่งขึ้น เรียกว่า ภาษาธรรมชาติ (Natural Language) ผู้ใช้สามารถสั่งงานด้วยเสียง เป็นการนำระบบฐานความรู้มาช่วย โดยจะแปลความของคำสั่งเพื่อทำให้คอมพิวเตอร์เข้าใจและจำโครงสร้างของคำสั่งเหล่านั้นไว้ ภาษาธรรมชาตินี้จะนำไปประยุกต์ใช้กับระบบผู้เชี่ยวชาญ และระบบปัญญาประดิษฐ์ เช่น การพัฒนาหุ่นยนต์ให้มีความสามารถในการทำงานเหมือนมนุษย์ และสามารถสื่อสารกับมนุษย์ได้ การใช้เสียงเป็นรหัสผ่านในการสั่งให้โปรแกรมที่กำหนดไว้เริ่มทำงาน เป็นต้น
    • ชนิดของภาษาคอมพิวเตอร์ 
    ภาษาเป็นตัวแทนการสื่อสารระหว่าง 2 สิ่งหรือหลาย ๆ สิ่ง เพื่อให้เกิดความหมายและความเข้าใจตรงกัน เช่น มนุษย์ใช้คำพูดสื่อสารกัน ก็ถือว่าคำพูดนั้นเป็นภาษา หรืออาจใช้มือในการสื่อสารระหว่างคนที่เป็นใบ้พูดไม่ได้หรือแม้แต่ดนตรีก็ถือว่าเป็นภาษาชนิดหนึ่งที่เป็นสากลเพราะคนชาติใดมาฟังก็จะให้ความรู้สึกเดียวกัน
    ในทางคอมพิวเตอร์นั้น ก็ต้องทำการพัฒนาภาษาที่จะสื่อสารระหว่างมนุษย์กับเครื่องคอมพิวเตอร์ แต่ด้วยเหตุที่เครื่องคอมพิวเตอร์เป็นอุปกรณ์อิเล็กทรอนิกส์ซึ่งมีเฉพาะวงจรการเปิดและปิด ทำให้เครื่องคอมพิวเตอร์สื่อสารโดยใช้เลขฐานสองเท่านั้น เรียกภาษาที่ใช้เฉพาะเลขฐานสองในคอมพิวเตอร์ว่า ภาษาเครื่อง (Machine Language) การที่มนุษย์จะเรียนรู้ภาษาเครื่องนั้นยากมาก เพราะนอกจากจะต้องศึกษาถึงอุปกรณ์นั้นอีกด้วย ซึ่งจะทำให้การใช้งานคอมพิวเตอร์เป็นเรื่องยุ่งยาก จึงมีผู้คิดค้นภาษาคอมพิวเตอร์ขึ้นเพื่อทำหน้าที่ในการติดต่อสื่อสารระหว่างเครื่องคอมพิวเตอร์กับมนุษย์ โดยผู้ใช้จะสามารถติดต่อกับเครื่องคอมพิวเตอร์โดยผ่านทาง ภาษาคอมพิวเตอร์ (Computer Programming Language) 
             จากการที่มีภาษาจำนวนมากมายนั้น ทำให้ต้องกำหนดระดับของภาษาคอมพิวเตอร์ เพื่อช่วยในการแบ่งประเภทของภาษาเหล่านั้น การกำหนดว่าเป็นภาษาระดับต่ำเหนือภาษาระดับสูง จะขึ้นอยู่กับภาษานั้นใกล้เคียงกับเครื่องคอมพิวเตอร์ (ใกล้เคียงกับรหัส 0 และ 1 เรียกว่า ภาษาระดับต่ำ) หรือว่าใกล้เคียงกับภาษาที่มนุษย์ใช้ (ใกล้เคียงกับภาษาอังกฤษ เรียกว่า ภาษาระดับสูง) 

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

    ข้อดี ของภาษาเครื่อง
    1. เมื่อคำสั่งเข้าสู่เครื่องจะสามารถทำงานได้ทันที
    2. สามารถสร้างคำสั่งใหม่ ๆ ได้ โดยที่ภาษาอื่นทำไม่ได้
    3. ต้องการหน่วยความจำเพียงเล็กน้อย

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

    2.   ภาษาแอสเซมบลี (Assembly Language) 
    ต่อมาในปีค.ศ. 1952 ได้มีการพัฒนาโปรแกรมภาษาระดับต่ำตัวใหม่ ชื่อภาษาแอสเซมบลี (Assembly Language) โดยที่ภาษาแอสเซมบลีใช้รหัสเป็นคำแทนคำสั่งภาษาเครื่อง ทำให้นักเขียนโปรแกรมสามารถเขียนโปรแกรมได้ง่ายขึ้น ถึงแม้ว่าการเขียนโปรแกรมจะยังไม่สะดวกเท่ากับการเขียนโปรแกรมภาษาอื่น ๆ ในสมัยนี้ แต่ถ้าเปรียบเทียบในสมัยนั้นก็ถือว่าเป็นการพัฒนาไปสู่ยุคของการเขียนโปรแกรมแบบใหม่ คือใช้สัญลักษณ์แทนเลข 0 และ 1 ของภาษาเครื่อง ซึ่งสัญลักษณ์ที่ใช้จะเป็นคำสั่งสั้น ๆ ที่จะได้ง่าย เรียกว่า นิมอนิกโคด (mnemonic code)

      
    สัญลักษณ์นิวมอนิกโคด 
    ความหมาย 
    A 
    C 
    MP
     STO 
    การบวก (Add) 
    การเปรียบเทียบ (Compare) 
    การคูณ (Muliply) 
    การเก็บข้อมูลในหน่วยความจำ(Store) 

    ถึงแม้ว่านิวมอนิกโคดที่ใช้จะไม่ใช้คำในภาษาอังกฤษ แต่ก็เป็นสัญลักษณ์ที่สื่อความหมายให้ผู้ใช้สามารถจดจำได้ง่ายกว่าสัญลักษณ์เลข 0 และ 1 ผู้เขียนโปรแกรมภาษาแอสเซมบลียังสามารถกำหนดชื่อของที่เก็บข้อมูลในหน่วยความจำเป็นคำในภาษาอังกฤษ แทนที่จะเป็นเลขที่ตำแหน่งในหน่วยความจำ เช่น TOTAL, INCOME เป็นต้น แต่ข้อจำกัดของภาษาภาษาแอสเซมบลี คือ จะแตกต่างกันไปในแต่ละเครื่องเช่นเดียวกับภาษาเครื่อง
              ผู้เขียนโปรแกรมภาษาแอสเซมบลีต้องใช้ แอสเซมเบลอ (Assembler) แปลภาษาแอสเซมบลีให้เป็นภาษาเครื่อง เพื่อให้คอมพิวเตอร์ทำงานตามต้องการ

    3.   ภาษาระดับสูง (High Level Language) 
    ในปีค.ศ. 1960 ได้มีการพัฒนา ภาษาระดับสูง (High Level Language) ขึ้น ภาษาระดับสูงจะใช้คำในภาษาอังกฤษแทนคำสั่งต่าง ๆ รวมทั้งสามารถใช้นิพจน์ทางคณิตศาสตร์ได้ด้วย ทำให้นักเขียนโปรแกรมสามารถใช้เวลามุ่งไปในการศึกษาถึงทางแก้ปัญหาเท่านั้น ไม่ต้องเป็นกังวลว่าคอมพิวเตอร์จะทำงานอย่างไรอีกต่อไป
    ภาษาระดับสูงนี้ถือว่าเป็น ภาษายุคที่สาม (third-generation language) ซึ่งทำให้เกิดการประมวลผลข้อมูลเพิ่มมากขึ้นอย่างมหาศาลระหว่างปี ค.ศ. 1960 ถึง ค.ศ. 1970 และมีผู้หันมาใช้คอมพิวเตอร์กันมากขึ้น โดยสังเกตได้จากเครื่องเมนเฟรมจากจำนวนร้อยเครื่องเพิ่มขึ้นเป็นหมื่นเครื่อง อย่างไรก็ตาม ภาษาระดับสูงก็ยังคงต้องการตัวแปลภาษาให้เป็นภาษาเครื่องเพื่อสั่งให้เครื่องทำงานต่อไป ตัวแปลภาษาที่นิยมใช้งานกันโดยทั่วไปจะเป็นแบบคอมไพเลอร์ ซึ่งแต่ละภาษาก็มีคอมไพเลอร์ไม่เหมือนกัน รวมทั้งคอมไพเลอร์แต่ละตัวก็จะต่างกันไปบนเครื่องแต่ละชนิดด้วย เช่น ถ้าเขียนโปรแกรมภาษา COBOL บนเครื่องไมโครคอมพิวเตอร์ ก็จะต้องเลือกใช้คอมไพเลอร์ภาษา COBOL ที่ทำงานบนเครื่องไมโครคอมพิวเตอร์ ซึ่งการเขียนโปรแกรมภาษาหนึ่งภาษาใดบนเครื่องที่ต่างกันอาจจะแตกต่างกันได้ เพราะคอมไพเลอร์ที่ใช้ต่างกันนั่นเอง 
    ภาษาคอมพิวเตอร์บางภาษาได้ถูกออกแบบมาให้ใช้แก้ปัญหางานเฉพาะบางอย่าง เช่น การควบคุมหุ่นยนต์ การสร้างภาพกราฟฟิก เป็นต้น แต่ภาษาคอมพิวเตอร์โดยมากจะมีความยืดหยุ่นให้ใช้งานทั่ว ๆ ไปได้ เช่น ภาษา BASIC ภาษา COBOL หรือภาษา FORTRAN เป็นต้น และนอกจากนี้ยังมีภาษา C ที่ได้รับความนิยมมากเช่นกัน

    4.   ภาษาระดับสูงมาก (Very high-level Language) 
    เป็นภาษายุคที่ 4 (fourth-generation language) หรือ 4GLs จะเป็นภาษาที่ใช้เขียนโปรแกรมได้สั้นกว่าภาษาในยุคก่อน ๆ การทำงานบางอย่างสามารถใช้เพียง 5 ถึง 10 บรรทัดเท่านั้น ในขณะที่ถ้าเขียนด้วยภาษา อาจต้องใช้ถึง100 บรรทัด โดยพื้นฐานแล้ว ภาษาในยุคที่ 4 นี้มีคุณสมบัติที่แยกจากภาษายุคก่อน ๆ อย่างชัดเจน กล่าวคือภาษาในยุคก่อนนั้นใช้หลักการของ การเขียนโปรแกรมแบบโพรซีเยอร์ (procedural language) ในขณะที่ภาษาในยุคที่ 4 จะเป็นแบบ ไม่ใช้โพรซีเยอร์ (nonprocedural language) ผู้เขียนโปรแกรมเพียงแต่กำหนดว่าต้องการให้โปรแกรมทำอะไรบ้างก็สามารถเขียนโปรแกรมได้ทันที โดยไม่ต้องทราบว่าทำได้อย่างไร ทำให้การเขียนโปรแกรมสามารถทำได้ง่ายและรวดเร็ว 
    มีนักเขียนโปรแกรมกล่าวว่า ถ้าใช้ภาษาในยุคที่ 4 นี้เขียนโปรแกรมจะทำให้ได้งานที่เพิ่มขึ้นถึงสิบเท่าตัว ตัวอย่างเช่น ถ้าต้องการพิมพ์รายงานแสดงจำนวนรายการสินค้าที่ขายให้ลูกค้าแต่ละคนในหนึ่งเดือน โดยให้แสดงยอดรวมของลูกค้าแต่ละคน และให้ขึ้นหน้าใหม่สำหรับการพิมพ์รายงานลูกค้าแต่ละคน จะเขียนโดยใช้ภาษาในยุคที่ 4 ได้ดังนี้
    TABLE FILE SALES 
    SUM UNIT BY MONTH BY CUSTOMER BY 
    PROJECT 
    ON CUSTOMER SUBTOTAL PAGE BREAK 
    END 
    จากตัวอย่างจะเห็นได้ว่าเป็นงานที่ซับซ้อน ซึ่งถ้าใช้ภาษา COBOL เขียนอาจจะต้องใช้ถึง 500 คำสั่ง แต่ถ้าใช้ภาษาในยุคที่ 4 นี้จะเป็นสิ่งที่ทำได้ไม่ยากเลย

    ข้อดีของภาษาในยุคที่ 4 
    1.    การเขียนโปรแกรมจะเน้นที่ผลของงานว่าต้องการอะไร ไม่สนใจว่าจะทำได้อย่างไร 
    2.    ช่วยพัฒนาเนื้องาน เพราะเขียนและแก้ไขโปรแกรมได้ง่าย
    3.    ไม่ต้องเสียเวลาอบรมผู้เขียนโปรแกรมมากนัก ไม่ว่าผู้ที่จะมาเขียนโปรแกรมนั้นมีความรู้ด้านการเขียนโปรแกรมหรือไม่ 
    4.    ผู้เขียนโปรแกรมไม่ต้องทราบถึงฮาร์ดแวร์ของเครื่องและโครงสร้างโปรแกรม
    ภาษาในยุคที่ 4 นี้ยังมีภาษาที่ใช้สำหรับเรียกดูข้อมูลจากฐานข้อมูลได้ เรียกว่า ภาษาเรียกค้นข้อมูล (query language) โดยปกติแล้วการเก็บข้อมูลลงในฐานข้อมูล และการแสดงรายงานจากฐานข้อมูล จะต้องมีการวางแผนไว้ล่วงหน้า แต่บางครั้งอาจมีการเรียกดูข้อมูลพิเศษที่ไม่ได้มีการวางแผนไว้ ถ้าผู้ใช้เรียนรู้ภาษาเรียกค้นข้อมูลก็จะขอดูรายงานต่าง ๆ นอกเหนือจากที่ได้มีการวางแผนไว้ได้โดยใช้เวลาไม่มากนัก ภาษาเรียกค้นข้อมูลที่เป็นมาตรฐานเรียกว่า SQL (Structured Query Language) และนอกจากนี้ยังมีภาษา Query Bu Example หรือ QBE ที่ได้รับความนิยมการใช้งานมากเช่นกัน

    5.   ภาษาธรรมชาติ (Nature Language) 
    เป็น ภาษายุคที่ 5 (fifth generation language) หรือ 5GLs ธรรมชาติหมายถึงธรรมชาติของมนุษย์ คือไม่ต้องสนใจถึงคำสั่งหรือลำดับของข้อมูลที่ถูกต้อง ผู้ใช้เพียงแต่พิมพ์สิ่งที่ต้องการลงในเครื่องคอมพิวเตอร์เป็นคำหรือประโยคตามที่ผู้ใช้เข้าใจ ซึ่งจะทำให้มีรูปแบบของคำสั่งหรือประโยคที่แตกต่างกันออกไปได้มากมาย เพราะผู้ใช้แต่ละคนอาจจะใช้ประโยคต่างกัน ใช้คำศัพท์ต่างกัน หรือแม้กระทั่งบางคนอาจจะใช้ศัพท์แสลงก็ได้ คอมพิวเตอร์จะพยายามแปลคำหรือประโยคเหล่านั้นตามคำสั่ง แต่ถ้าไม่สามารถแปลให้เข้าใจได้ ก็จะมีคำถามกลับมาถามผู้ใช้เพื่อยืนยันความถูกต้อง ภาษาธรรมชาติจะใช้ ระบบฐานความรู้ (knowledge base system) ช่วยในการแปลความหมายของคำสั่งต่าง ๆ

    ภาษาคอมพิวเตอร์ 
    การใช้งาน 
    BASIC (Beginner's All-purpose Symbolic Instruction Code) 
    สำหรับผู้เริ่มศึกษาการเขียนโปรแกรมภาษาคอมพิวเตอร์ 
    COBOL (Common Business Oriented Language) 
    นิยมใช้ในงานธุรกิจบนเครื่องขนาดใหญ่ 
    FORTRAN (FORmula TRANslator) 
    ใช้สำหรับงานด้านคณิตศาสตร์ วิทยาศาสตร์ วิศวกรรมศาสตร์ 
    Pascal (ชื่อของBlaise Pascal) 
    ใช้ในวิทยาลัย และมหาวิทยาลัย 
    C
    สำหรับนักเขียนโปรแกรม และใช้ในวิทยาลัย มหาวิทยาลัย 
    C++
    สำหรับผู้ผลิตซอฟต์แวร์ 
    ALGOL (ALGOrithmic Language) 
    เริ่มต้นได้รับการออกแบบให้เป็นภาษาสำหรับงานทางวิทยาศาสตร์ และต่อมามีการพัฒนาต่อเป็นภาษา PL/I และ Pascal 
    APL (A Programming Language) 
    ออกแบบโดยบริษัท IBM ในปีค.ศ. 1968 เป็นภาษาที่โต้ตอบกับผู้ใช้ทันที เหมาะสำหรับจัดการกับกลุ่มของข้อมูลที่สัมพันธ์กันในรูปแบบตาราง 
    LISP (LIST Processing) 
    ถูกออกแบบมาให้ใช้กับข้อมูลที่ไม่ใช้ตัวเลข ซึ่งอาจเป็นสัญลักษณ์พิเศษหรือตัวอักษรก็ได้ นิยมใช้ในด้านปัญญาประดิษฐ์(Artificial Intelligence) 
    LOGO
    นิยมใช้ในโรงเรียน เพื่อสอนทักษะการแก้ปัญหาให้กับนักเรียน 
    PL/I (Programming Language One) 
    ถูกออกแบบมาให้ใช้กับงานทั้งทางด้านวิทยาศาสตร์ และธุรกิจ 
    PROLOG (PROgramming LOGIC) 
    นิยมใช้มากในงานด้านปัญญาประดิษฐ์ จัดเป็นภาษาธรรมชาติภาษาหนึ่ง 
    RPG (Report Program Generator) 
    ถูกออกแบบมาให้ใช้กับงานทางธุรกิจ จะมีคุณสมบัติในการสร้างโปรแกรมสำหรับพิมพ์รายงานที่ยืดหยุ่นมาก 


               ภาษาซี ถือเป็นภาษาระดับสูง แต่ความสามารถของคำสั่งภาษาซีบางคำสั่งจะทำงานได้ดี ใกล้เคียงกับภาษาระดับต่ำ แถมเขียนได้ง่ายกว่าภาษาแอสเซมบลี และสามารถติดต่อกับฮาร์ดแวร์ได้อย่างมีประสิทธิภาพ



    ตัวแปลภาษา
               ในการเขียนโปรแกรมคอมพิวเตอร์ จะต้องทำการแปลภาษาเหล่านั้น ให้เป็นภาษาเครื่องที่คอมพิวเตอร์เข้าใจก่อน คอมพิวเตอร์จึงจะทำงานได้ เมื่อเราพัฒนาโปรแกรม จะต้องสร้างโปรแกรมด้วยการเขียนชุดคำสั่ง ซึ่งชุดคำสั่งที่เขียนด้วยภาษาคอมพิวเตอร์ภาษาใดก็ได้ จะเรียกว่าโปรแกรมต้นฉบับ (Source Program) หรือ รหัสต้นฉบับ (Source Code) จากนั้นจะนำโปรแกรมต้นฉบับไปแปลให้เป็นภาษาเครื่อง ที่คอมพิวเตอร์ทำงานได้ ที่เรียกว่า รหัสภาษาเครื่อง (Executable Program) ซึ่งตัวแปลภาษานี้สามารถแบ่งได้เป็น 2 ประเภท คือ อินเตอร์พรีเตอร์ (Interpreter) และคอมไพเลอร์ (Complier)
        1. อินเตอร์พรีเตอร์ (Interpreter)
               ตัวแปลภาษาชนิดประเภทอินเตอร์พรีเตอร์ จะทำการแปลคำสั่งทีละคำสั่ง ให้เครื่องทำงานทีละคำสั่ง หากไม่พบข้อผิดพลาดใดๆ จะทำแปลคำสั่งถัดไป โดยจะกระทำไปจนจบโปรแกรม หรือพบข้อผิดพลาด เครื่องจะหยุดทำงานทันที และแจ้งข้อผิดพลาดให้ทราบ
               ตัวอย่างภาษาที่แปลด้วยตัวแปลภาษาชนิดประเภทอินเตอร์พรีเตอร์ เช่น ภาษาเบสิก (Basic) ภาษาเพิร์ล (Perl), ภาษาพีเอชพี (PHP) เป็นต้น



        2. คอมไพเลอร์ (Complier)
               ตัวแปลภาษาชนิดประเภทคอมไพเลอร์ จะมีวิธีการแปลคำสั่งที่แตกต่างจากตัวแปลภาษาชนิดประเภทอินเตอร์พรีเตอร์ คือแปลโปรแกรมต้นฉบับทั้งหมดให้เป็นภาษาเครื่องในครั้งเดียว และในกรณีที่พบข้อผิดพลาด จะรายงานให้ทราบเมื่อจบการแปลโปรแกรม ซึ่งเป็นวิธีที่ทำให้โปรแกรมทำงานได้เร็วขึ้น เพราะไม่ต้องรอทำทีละคำสั่ง
               ตัวอย่างภาษาที่แปลด้วยตัวแปลภาษาชนิดประเภทอินเตอร์พรีเตอร์ เช่น ภาษาฟอร์แทรน (FORTRAN) ภาษาโคบอล (COBOL) ภาษาซี (C) และ ภาษาเบสิกรุ่นใหม่ ๆ เช่น เทอร์โบเบสิก หรือวิชวลเบสิก เป็นต้น


        
    ภาษาแอสแซมบลี
               ในการเขียนโปรแกรมด้วยภาษาแอสเซมบลี จะใช้ตัวแปลภาษาให้เป็นภาษาเครื่องที่เรียกว่า แอสเซมเบอร์ (Assembler)


    ภาษาคอมพิวเตอร์ที่ได้รับความนิยม

    1. Java

            Java (จาวา) เป็นหนึ่งในภาษาอันดับต้นๆ ที่ได้รับความนิยมในการสร้า Backend สำหรับเว็บแอพฯที่ต้องการความทันสมัยในการแสดงผล ด้วย Java และ Frameworks ที่มีให้ใช้ นักพัฒนาสามารถสร้างเว็บที่ปรับขนาดการแสดงผลให้เหมาะสมกับผู้ใช้ได้ทุกรูปแบบการเข้าชม ปัจจุบัน Java มักใช้พัฒนาแอพฯแอนดรอยส์สำหรับสมาร์ทโฟนและแท็บเล็ต

    2. JavaScript

            ปัจจุบันเกือบทุกเว็บไซต์มีการใช้งาน JavaScript หากเราต้องการสร้างเว็บที่สามารถตอบโต้กับผู้ใช้งานได้ มี User interfaces ที่สวยงาม JavaScript frameworks คือ สิ่งที่ตอบโจทย์ความต้องการของคุณ

    3. C#

            C# เป็นภาษาหลักในการพัฒนาโปรแกรมบนระบปฏิบัติการของ Microsoft เมื่อเราสร้างสร้างเว็บแอพพลิเคชั่น ด้วย Arure และ .NET สำหรับอุปกรณ์ที่ใช้ระบบปฏิบัติการวินโดว์ C# เป็นภาษาที่รวดเร็วที่สุดในการเขียนโปรแกรมควบคุมทรัพยากรที่ไมโครซอฟท์มีให้ใช้ หรือแม้แต่ภาษาเกมคอมพิวเตอร์ยอดนิยมอย่าง Unity Engine ก็ใช้ C# เป็นภาษาหลักในการทำงานด้วยเช่นกัน

    4. PHP

            ถ้าต้องการสร้างเว็บที่มีการใช้งานฐานข้อมูล PHP เป็นภาษาที่ทำงานร่วมกับ MySQL ในปัจจุบัน PHP เป็นภาษาที่นิยมอย่างมากในเว็บที่มีการจัดเก็บข้อมูลเนื้อหาบนเว็บไซต์ ตัวอย่างเว็บยอดนิยมประเภทนี้ก็อย่างเช่น WordPress นั่นเอง

    5. C++

            ภาษา C++ ต่อยอดมาจากภาษา C ออกแบบให้ทำงานง่ายขึ้นมีความเป็น Object มากกว่าเดิม จุดเด่น คือ การทำงานร่วมกับฮาร์ดแวร์ การเขียนโปรแกรมจำพวกจัดการหน่วยความจำ หรือเร่งประสิทธิภาพกราฟฟิค ต้องใช้ C++ ในการเขียน

    6. Python

            Python เป็นภาษาที่สามารถทำได้ทุกอย่างตั้งแต่ เว็บแอพพลิเคชั่น, User interfaces, Data analysis, Statistics และหากมีปัญหาอะไรก็ตาม มันมี Framework สำหรับแก้ไขปัญหาให้ใช้มากมาย Python นิยมใช้ในงานด้านวิทยาศาสตร์หรืออตสาหกรรมที่มีปริมาณข้อมูลขนาดใหญ่มาก

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

    8. SQL
            ข้อมูลบนอินเตอร์เน็ตมีขนาดใหญ่ขึ้นทุกวัน SQL มีความสามารถในการค้นหาข้อมูลที่ผู้ใช้ต้องการได้อย่างรวดเร็ว สามารถค้นข้อมูลซ้ำๆ ได้อย่างแม่นยำ ด้วย SQL การระบุตำแหน่งของข้อมูลที่ต้องการในฐานข้อมูลขนาดใหญ่ไม่ใช่เรื่องยาก

    9. RUBY
            ถ้าต้องการสร้างโปรเจคส์ภายในเวลาจำกัด หรือสร้างตัวโปรแกรมเวอร์ชั่นทดสอบออกมาลองใช้งาน Ruby เป็นภาษาที่ถูกหยิบขึ้นมาใช้ เนื่องจากใช้งานง่าย และไม่ซับซ้อน แต่ไม่ใช่ว่างานใหญ่จะใช้ RUBY ไม่ได้นะ Twitter เว็บนี้ก็เขียนด้วย RUBY นะเอ้อ แต่ด้านความเร็ว PYTHON ทำงานรวดเร็วกกว่า แต่แลกมาด้วยความซับซ้อนในการเขียนที่ยากกว่า

    10. Objective-C
            ถ้าสนใจที่จะเขียนแอพฯ iOS คุณจำเป็นต้องเรียนรู้ภาษานี้ แม้ว่าปลายปีที่แล้วทาง Apple จะเปิดตัวภาษาใหม่ "Swift" แต่ Objective-C ก็ยังไมีการใช้งานกันอยู่อย่างแพร่หลาย โดยทำงานร่วมกับ XCode ชุดพัฒนาซอฟท์แวร์ของ Apple ปัจจุบันตลาดแอพฯเป็นที่สนใจของผู้ลงทุน ดังนั้นใครเขียนเป็นหางานไม่ยากแน่นอน

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

    12. .NET
            ตัวมันเองไม่ใช่ภาษาสำหรับเขียนโปรแกรม แต่ก็เป็นกุญแจสำคัญจากไมโครซอฟท์สำหรับทำงานกับ Cloud, Service และ การพัฒนาแอพ และด้วยความที่มันเป็น Open-Source มันกำลังเข้ามามีบทบาทบนแพลตฟอร์มของ Google และ Apple ทำให้ตัว .NET จะเป็นเครื่องมือสำคัญในการสร้างแอพที่รองรับหลายแพลตฟอร์ม

    13. Visual Basic
            ภาษาสำคัญที่ประสบความสำเร็จในวงการธุรกิจ เป็นหนึ่งในภาษาหลักของ .NET สามารถสร้างแอพพลิเคชั่นขึ้นมารองรับภาคธุรกิจ และสร้างเอกสารอัตโนมัติอย่าง Excel ได้อัตโนมัติ ทำให้งานต่างๆ ดำเนินไปได้อย่างราบรื่น

    14. R
            R เป็นภาษาที่ทรงพลังและปฏิวัติข้อมูลครั้งใหญ่ เป็นภาษาที่นักพัฒนาจำเป็นต้องรู้จักในปี 2015 หากต้องการทำ Data analysis ทั้งจากด้านวิทยาศาสตร์, ธุรกิจ, บันเทิง และ Social Media

    15. Swift
            เป็นภาษาใหม่ที่มีอายุไม่ถึงปีด้วยซ้ำ Swift สร้างขึ้นโดยบริษัท Apple และเป็นจับตาของนักพัฒนาทันที เนื่องจากถูกออกแบบมาให้ทำงานได้รวดเร็ว และง่ายดาย ทำให้การพัฒนาแอพฯสำหรับ Mac และ iOS มีความง่ายขึ้น