หน่วยที่ 1 เริ่มต้นเข้าใจเกี่ยวกับการเขียนโปรแกรมแบบ GUI

GUI คืออะไร

GUI ย่อมาจาก Graphical User Interface GUI (อ่านว่า จียูไอ หรือ กุย)คือ การติดต่อกับผู้ใช้โดยใช้ภาพสัญลักษณ์ เป็นการออกแบบส่วนของโปรแกรมคอมพิวเตอร์ให้มีการโต้ตอบกับผู้ใช้ โดยการใช้ Icon ,รูปภาพ และสัญลักษณ์อื่นๆ เพื่อแทนลักษณะต่างๆ ของโปรแกรม แทนที่ผู้ใช้จะพิมพ์คำสั่งต่างๆในการทำงาน ช่วยทำให้ผู้ใช้งานสามารถทำงานได้ง่าย และรวดเร็วขึ้น ไม่จำเป็นต้องจดจำคำสั่งต่างๆ ของโปรแกรมมากนัก ถือเป็นวิธีการให้ความสะดวกแก่ผู้ใช้คอมพิวเตอร์ ให้ติดต่อสื่อสารกับระบบโดยผ่านทางภาพ เช่น ใช้เมาส์กดเลือก icon แทนการพิมพ์คำสั่งดังแต่ก่อน โดยเฉพาะในบางโปรแกรมที่มีคำสั่งมากๆ เช่น โปรแกรม Autocad ที่ใช้ในการวาดแบบ ซึ่งจะมี คำสั่งต่างๆ ที่ใช้ในการสร้างรูปมากมาย ผู้ใช้สามารถใช้เม้าซ์ (mouse) เลือกคำสั่งที่ต้องการจะวาดจาก Icons ที่ปรากฏในโปรแกรมและใช้งานได้เลย โดยไม่ต้องพิมพ์คำสั่งต่างๆ ทางแป้นพิมพ์ ช่วยทำให้เกิดความรวดเร็วในการทำงาน และไม่ต้องเสียเวลาในการเรียนรู้และจดจำคำสั่งที่ต้องการมากนัก เพียงดูจาก Icons ที่ปรากฏในโปรแกรมก็สามารถใช้งานได้ทันที ตัวอย่างโปรแกรมที่ช่วยออกแบบโปรแกรมที่ใช้ GUI เช่น Microsoft Visual Basic เป็นต้น


ระดับของภาษา(Level of Languages)

  1. ภาษาเครื่อง(Machine Languages)

  2. ภาษาแอสแซมบลี(Assembly Languages)

  3. ภาษาระดับสูง(High-level Languages)

  4. ภาษาระดับสูงมาก(Very High-level Languages)

  5. ภาษาธรรมชาติ(Natural Languages)


ภาษาเครื่อง : เป็นภาษาที่มีระดับต่ำที่สุด โดยจะเขียนด้วยระบบฐานสอง ซึ่งมีเพียง 0 กับ 1 เท่านั้น


ภาษาแอสแซมบลี : จัดเป็นภาษาระดับต่ำมาก ใช้ตัวย่อ หรือรหัสย่อในการเขียนโปรแกรม เช่น A คือรหัสของ Add , C คือ Compare เป็นต้น และตัวแปลภาษา Assembly คือ Assembler


คอมพิวเตอร์สามารถกระทำการ (Excute) ได้เฉพาะภาษาเครื่องเท่านั้น ดังนั้นหากเราเขียนด้วยภาษาใดๆ ก็ตามที่มิใช่ภาษาเครื่อง จะต้องใช้ตัวแปลภาษา(Translator) เพื่อแปลภาษาโปรแกรมที่เขียนให้เป็นภาษาที่เครื่อง เข้าใจ


ภาษาระดับสูง : เป็นภาษาโปรแกรมยุคที่ 3 ที่เป็นภาษาระดับสูงโปรแกรมจะเขียนในลักษณะคล้ายภาษาอังกฤษ ทำให้เขียนได้ง่ายขึ้น และสำหรับตัวแปลภาษาโปรแกรมเหล่านี้คือ คอมไพเลอร์ (Compiler) โดยคอมไพเลอร์จะทำหน้าที่แปล Souce Program ให้เป็น Oject Program โดยแปลครั้งเดียว ยกตัวอย่างภาษาโปรแกรมระดับสูงเช่น Fortran , Basic, pascal, C, Cobol


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


ภาษาธรรมชาติ : เป็นภาษาโปรแกรมยุคที่ 5 ซึ่งคล้ายกับภาษาพูดตามธรรมชาติของคน การเขียนโปรแกรมง่ายที่สุด คือการเขียนคำพูดของเราเองว่าเราต้องการอะไร ไม่ต้องใช้คำสั่งงานใดๆ เลย


ตัวอย่างภาษาในยุคต่างๆ ดังนี้


Fortran : ภาษาระดับสูงภาษาแรก เป็นภาษาโปรแกรมที่ใช้งานด้านวิทยาศาสตร์ วิศวกรรมศาสตร์ และด้านคณิตศาสตร์ ภาษาฟอร์เทนจะประกอบด้วยข้อความ คำสั่ง ทีละบรรทัด


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


Basic : ภาษาโปรแกรมสำหรับผู้เริ่มต้น เป็นภาษาโปรแกรมที่เรียนรู้ง่าย ไม่ซับซ้อน เหมาะสำหรับใช้ในวงการศึกษา


Pascal : เป็นภาษาสำหรับการเรียนการสอนโดยเฉพาะ เป็นภาษาที่เขียนง่าย ใช้ถ้อยคำน้อย


Ada : ภาษามาตรฐาน ซึ่งพัฒนาขึ้นโดย โปรแกรมเมอร์คนแรก คือ เคาต์ Add Lovelace เป็นภาษาที่ประสบความเร็จกับงานด้านธุรกิจ


C : ภาษาสมับใหม่ เป็นภาษาที่ใช้สำหรับเขียนโปรแกรมระบบปฎิบัติการ เหมาะสำหรับโปรแกรมเมอร์ที่มีความสามารถสูง


ALGOL : เป็นภาษาที่ใช้เขียนโปรแกรมด้านวิทยาศาสตร์


LISP : เป็นภาษาที่ใช้เมื่อประมวลผลด้านสัญลักษณ์, อักขระ,หรือคำต่างๆ ซึ่งเป็นการได้ตอบระหว่างคนกับคอมพิวเตอร์ ภาษานี้นิยมใช้เขียนโปรแกรมด้านปัญญาประดิษฐ์


Prolog : เป็นภาษาโปรแกรมสำหรับงานด้านปัญญาประดิษฐ์ ซึ่งแทนการใช้ภาษาLISP


PL/1 : เป็นภาษาที่เรียนรู้ง่าย ใช้งานทั้งด้านวิทยาศาสตร์ และด้านธุรกิจ ดังนั้นภาษานี้จะมีขนาดใหญ่ มี option มาก


ALP : เป็นภาษที่เหมาะสมกับการทำตาราง มีสัญลักษณ์ต่างๆ มาก


Logo : เป็นภาษาย่อยของ lisp เป็นโปรแกรมสำหรับเด็ก มีการสนทนาโต้ตอบกับคอมพิวเตอร์ โดยใช้ "เต่า" เป็นสัญลักษณ์โต้ตอบกับคำสั่งง่ายเช่น forward, left


Pilot : เป็นภาษาโปรแกรมที่นิยมใช้มากที่สุดในการเขียนโปรแกรมบทเรียนคอมพิวเตอร์ช่วยสอน(CAI) เช่น งานเกี่ยวกับคำสั่ง ฝึกหัด การทดสอบ เป็นต้น


Smalltalk : เป็นภาษาเชิงโต้ตอบกับเครื่องคอมพิวเตอร์ประกอบด้วยการจำ และการพิมพ์ เป็นภาษาที่สนับสนุนระบบคอมพิวเตอร์ภาพ เป็นภาษาเชิงวัตถุไม่ใช่เชิงกระบวนการ


Forth : เป็นภาษาสำหรับงานควบคุมแบบทันที เช่นการแนะนำกล้องดาราศาสตร์ และเป็นภาษาโปรแกรมที่มีความเร็วสูง


Modula-2 : คล้ายคลึงกับภาษาปาสคาล ออกแบบมาเพื่อให้เขียนซอฟต์แวร์ระบบ


RPG : เป็นภาษาเชิงปัญหา ออกแบบมาเพื่อใช้แก้ปัญหาการทำรายงานเชิงธุรกิจ เช่น การปรับปรุงแฟ้มข้อมูล