ทักษะด้านโปรแกรมเมอร์ใกล้ตัวเรามากขึ้นเรื่อยๆ จากการผุดขึ้นของธุรกิจน้องใหม่มากมาย ตามมาด้วยตำแหน่งงานที่เกี่ยวข้อง ซึ่งจากการสำรวจเมื่อเร็วๆ นี้พบว่ามีคนหันมาเรียนรู้การเขียนโปรแกรมใหม่ปีละหลายล้านคน ดังนั้นเพื่อรับน้องใหม่ในวงการ จึงได้รวบรวมคำศัพท์พื้นฐาน 15 คำต่อไปนี้ที่ต้องเจอในสายอาชีพ อันได้แก่
1. ตัวแปร (Variable)
เป็นตัวกลางที่ไปจับคู่กับข้อมูลที่ต้องการหรือ Identifier แล้วเก็บไว้ในหน่วยความจำ โดยกำหนดให้เป็นได้หลายประเภททั้งตัวเลข (Integer), ข้อความ (String), Character, Array, Object เป็นต้น ถือเป็นรากฐานของทุกโปรแกรมหรือซอฟต์แวร์เนื่องจากเป็นกุญแจสู่การรับค่าที่มีการเปลี่ยนแปลงอยู่ตลอดเวลาได้ หรือการทำงานแบบไดนามิก
2. ประเภทข้อมูล (Data Type)
ทุกข้อมูลต้องการมีการกำหนดประเภทให้ตัวแปลงหรือตัวแปลภาษาเข้าใจ และจัดสรรหน่วยความจำได้อย่างเหมาะสม โดยทั่วไปแบ่งเป็น Int (Interger), Char (Character), Boolean (True หรือ False) เป็นต้น
3. ค่าคงที่ (Constant)
มีลักษณะคล้ายตัวแปร สิ่งที่ต่างคือค่ามันคงที่ตลอดไม่ได้ผันแปรโดยทั่วไปแบ่งเป็นสองกลุ่มคือ Compile-Time (กำหนดค่าแบบคงที่) และ Run-Time (กำหนดแบบไดนามิก)
4. การร่างโค้ดก่อนเขียนจริง (Pseudocode)
แม้มือใหม่ทั้งหลายไม่ค่อยได้วางแผนร่างโค้ดไว้ก่อน แต่การร่างด้วยภาษาที่เข้าใจง่ายก่อนแปลงเป็นโค้ดคำสั่งของภาษานั้นๆ ถือเป็นแนวทางปฏิบัติที่ดีในการเขียนโปรแกรม ส่วนใหญ่แล้วมักใช้ข้อความภาษาอังกฤษร่างเป็นบรรทัดๆ ไว้ให้ครอบคลุมตรรกะและจุดสำคัญของโปรแกรมทั้งหมดก่อน
5. เงื่อนไข (Conditional)
เป็นชุดคำสั่งที่ทำให้คอมพิวเตอร์รู้ว่าต้องทำอะไรบ้างในแต่ละกรณี รวมไปถึงการทำให้โปรแกรมรองรับการเปลี่ยนแปลงที่ไม่คาดคิด หรือการทำงานแบบไดนามิกได้ด้วยเงื่อนไขแบบ If – Else
6. การสั่งวนลูป (Loop)
ใช้เมื่อต้องการให้โค้ดส่วนหนึ่งทำซ้ำตามจำนวนครั้งที่ต้องการ หรือเมื่อตรงตามเงื่อนไข แทนที่จะเขียนโค้ดบรรทัดเดิมๆ ซ้ำหลายๆ ครั้งให้เหนื่อย โดยมีหลายรูปแบบไม่ว่าจะเป็น For … Loop, While … Loop, หรือ Do While … Loop เป็นต้น
7. ฟังก์ชั่น (Function)
เป็นการเขียนโค้ดลอยไว้เป็นหมวดหมู่อิสระ เพื่อเอาไว้เรียกใช้ในจุดต่างๆ ของโค้ดหลัก แทนที่จะเขียนโค้ดชุดนั้นซ้ำแล้วซ้ำอีก ถือเป็นพื้นฐานของการเขียนโปรแกรมในลักษณะโมดูลที่โปรแกรมเมอร์ทุกคนควรปฏิบัติให้เป็นนิสัย
8. โครงสร้างข้อมูล (Data Structure)
เป็นรูปแบบของการจัดเรียงและจัดเก็บข้อมูลให้ตรงตามวัตถุประสงค์การใช้งาน เพื่อให้โปรแกรมสามารถเข้าถึงและนำมาใช้งานได้อย่างเหมาะสม เช่น การตั้งค่าให้ข้อมูลจัดเรียงในรูปของ Array, Record, Tree, List, Stack, Queue เป็นต้น
9. อ๊อพเจ็กต์ (Object)
เป็น “สิ่ง” ต่างๆ ที่จัดเก็บไว้ในหน่วยความจำสำหรับอ้างอิง ซึ่งสิ่งนั้นๆ เป็นได้ทั้งตัวแปร, โครงสร้างข้อมูล, หรือฟังก์ชั่นก็ได้ โดยในภาษาระดับสูงที่มีการแบ่งคลาสหลายคลาส จะมีการดึงอ๊อพเจ็กต์ขึ้นมาอยู่ในรูปของตัวแปรในแต่ละคลาสอย่างยืดหยุ่น เรียกว่าเป็นการเขียนโปรแกรมแบบอิงอ๊อพเจ็กต์หรือ Object-Oriented
10. บริเวณบังคับใช้ตัวแปรที่ครอบคลุม (Scope)
เช่น กำหนดให้ใช้เฉพาะในแต่ละโค้ด(Local) หรือเปิดบังคับใช้แบบสากลทั่วทั้งโปรแกรมหรือ Globalซึ่งทำให้ใช้หน่วยความจำได้อย่างคุ้มค่า
11. กลไกหรือวิธีการ (Algorithm)
เป็นการพูดถึงโฟลว์การทำงานเพื่อแก้ไขปัญหาต่างๆ ของโปรแกรมในแต่ละขั้นๆ เช่น งานคำนวณ, ประมวลผลข้อมูล, งานที่ทำงานได้โดยอัตโนมัติ
12. ทูลแก้ไขโค้ด (IDE)
ย่อมาจาก Integrated Development Environmentถือเป็นหัวใจของชาวโปรแกรมเมอร์ทีเดียว นอกจากตัวแก้ไขโค้ดปกติแล้ว มักพ่วงมากับทูลที่ช่วยสร้างโค้ดแบบอัตโนมัติ และตัวแก้ไขบั๊กด้วย ส่วนฟีเจอร์ที่พบบ่อยและเป็นประโยชน์ก็เช่น การขึ้นออโต้คอมพลีทเวลาเขียนคำสั่งต่างๆ เป็นต้น
13. API
หรือ Application programming Interfaceเป็นชุดของโปรโตคอลและทูลที่ช่วยในการพัฒนาซอฟต์แวร์ หรือพูดง่ายๆ คือชุดโค้ดสำเร็จรูปที่คอยสื่อสารระหว่างองค์ประกอบหลายๆ ส่วน อย่างเช่น API ที่ใช้คุยกับแพลตฟอร์มดังอย่างเฟซบุ๊ก, กูเกิ้ล, ฯลฯ
14. โมดูล (Module)
การทำโค้ดให้อยู่ในรูปโมดูลย่อยๆ จะสามารถนำโค้ดแต่ละโมดูลมาเลือกใช้หลายๆ ครั้งได้ ซึ่งถือเป็นแนวทางการเขียนโค้ดที่ดี เพราะนอกจากจะสะดวกต่อการนำโค้ดเดิมมาใช้ใหม่แล้ว ยังสามารถแก้ไขโค้ดในโมดูลย่อยได้โดยลดความเสี่ยงที่จะกระทบส่วนอื่นของโค้ดด้วย อย่างการเขียนโปรแกรมแบบ Object-Oriented ก็ช่วยแบ่งงานหลักออกเป็นคลาสย่อยๆ ได้
15. ภาษาที่ต้องแปลงก่อนใช้ (Compiled Language)
กับภาษาที่ต้องมีตัวแปล (Interpreted Language) บางภาษาต้องเขียนโค้ดในรูปแอพที่ใช้ไฟล์ไบนารี ซึ่งเมื่อรันแอพก็จะมีการตรวจสอบความผิดพลาดของโค้ดก่อนแปลงอยู่ในรูปที่พร้อมทำงาน เช่นภาษา C, C++, Java, Swiftส่วนบางภาษาก็ต้องมีตัวแปลโค้ดที่อยู่แยกต่างหากบนเครื่องที่รัน เช่น PHP, Python, JS
ที่มา : Technotification