แนวคิดการเขียนโปรแกรม (Programming Paradigms)
Functional Programming
มุ่งเน้นที่ฟังก์ชันบริสุทธิ์และความไม่เปลี่ยนแปลงของข้อมูล
- ลักษณะสำคัญ: หลีกเลี่ยงผลข้างเคียง ใช้การเรียกซ้ำ ฟังก์ชันระดับสูง
- ภาษาตัวอย่าง: Haskell, Lisp, Erlang
- จุดเด่น: เน้นความบริสุทธิ์ของฟังก์ชัน
- การใช้งานทั่วไป: การประมวลผลข้อมูล, การคำนวณทางคณิตศาสตร์
Dynamic Programming
อนุญาตให้กำหนดประเภทและโครงสร้างข้อมูลในขณะรันไทม์
- ลักษณะสำคัญ: ยืดหยุ่น มีการตรวจสอบประเภทที่น้อยกว่า ประเมินผลในขณะรันไทม์
- ภาษาตัวอย่าง: Python, Ruby, JavaScript
- จุดเด่น: เน้นความยืดหยุ่นในการกำหนดประเภท
- การใช้งานทั่วไป: สคริปต์, การพัฒนาเว็บ, การทดสอบ
Object-Oriented Programming
จัดระเบียบโค้ดรอบวัตถุและข้อมูลแทนที่จะเป็นตรรกะ
- ลักษณะสำคัญ: การห่อหุ้ม การสืบทอด ความหลากหลายรูป
- ภาษาตัวอย่าง: Java, C++, Python
- จุดเด่น: เน้นการจัดระเบียบโค้ดรอบวัตถุ
- การใช้งานทั่วไป: การพัฒนาแอปพลิเคชันขนาดใหญ่, เกม
Imperative Programming
มุ่งเน้นที่วิธีการทำงานโดยใช้คำสั่งที่เปลี่ยนสถานะของโปรแกรม
- ลักษณะสำคัญ: ใช้ลูป เงื่อนไข และตัวแปรเพื่อควบคุมการไหลของโปรแกรม
- ภาษาตัวอย่าง: C, Pascal, Fortran
- จุดเด่น: เน้นการควบคุมการไหลของโปรแกรม
- การใช้งานทั่วไป: การเขียนโปรแกรมระบบ, การพัฒนาแอปพลิเคชันทั่วไป
Declarative Programming
มุ่งเน้นที่สิ่งที่โปรแกรมควรบรรลุโดยไม่ระบุวิธีการ
- ลักษณะสำคัญ: อธิบายตรรกะโดยไม่ควบคุมการไหล มักใช้นิพจน์
- ภาษาตัวอย่าง: SQL, Prolog, HTML
- จุดเด่น: เน้นการอธิบายผลลัพธ์
- การใช้งานทั่วไป: การจัดการฐานข้อมูล, การเขียนกฎเกณฑ์
Event-Driven Programming
เน้นที่เหตุการณ์และตัวจัดการเหตุการณ์เพื่อควบคุมการไหลของโปรแกรม
- ลักษณะสำคัญ: แบบอะซิงโครนัส
- ภาษาตัวอย่าง: JavaScript (Node.js), GUI frameworks
- จุดเด่น: เน้นการตอบสนองต่อเหตุการณ์
- การใช้งานทั่วไป: การพัฒนาเว็บแอปพลิเคชัน, การสร้างอินเทอร์เฟซผู้ใช้