Please enable JavaScript.
Coggle requires JavaScript to display documents.
เเนวคิดเชิงคำนวณ - Coggle Diagram
เเนวคิดเชิงคำนวณ
2.การพิจารณารูปแบบ
(Pattern recognition)
เป็นการวิเคราะห์หาความเหมือน ปัญหาย่อยที่แตกออกมา หรือความคล้ายคลึงกับปัญหาอื่น ๆ ที่มี
ผู้ออกแบบวิธีการแก้ไขไว้ก่อนแล้ว
ตัวอย่างการพิจารณารูปแบบ
ในชีวิตประจำวัน
1.หาพฤติกรรมการไปสงขลาของ
นักท่องเที่ยว ว่านิยม ช่วงเวลาไหน มีรูปแบบ
พฤติกรรมซ้ำๆ การเดินทางที่นิยม อะไรบ้าง
ตัวอย่างการพิจารณารูปแบบ
ในการเขียนโปรแกรม
เมื่อมีการทำงานของโปรแกรมที่หลากหลายแบบ แต่มีรูปแบบที่แน่นอนซ้ำๆ
เราสามารถยุบโค้ดมาอยู่ในฟังก์ชั่น เดียวกันได้หรือไม่ หรือเขียนเป็น
โปรแกรมวนลูป ให้อยู่ในลูปเดียวกัน
1.การแบ่งปัญหาใหญ่
เป็นปัญหาย่อย (Decomposition)
เป็นการแตกปัญหาที่ขับซ้อนให้เป็น
ปัญหาย่อย เพื่อช่วยการวิเคราะห์ และออกแบบวิธีการแก้ปัญหาทำได้ง่ายขึ้น
ตัวอย่างการย่อยปัญหาใน
ชีวิตประจำวัน
1.การไปสงขลา ไป อย่างไร ได้บ้าง อาจเดินทางไปด้วยอะไร
เเล้วย่อยปัญหา ข้อดี ข้อเสียอะไรบ้าง
ตัวอย่างการย่อยปัญหาในการเขียนโปรแกรม
การเขียนโปรแกรมแยกเป็นส่วนๆ
แยกเป็นแพ็กเกจ แยกเป็นโมดูล หรือทำระบบเป็น services ย่อยๆ หรือ
มองเป็น layer
4.การคิดเชิงนามธรรม
(Abstract thinking)
เป็นการแยกรายละเอียดที่สำคัญ
และจำเป็นต่อการแก้ปัญหาออกจาก
รายละเอียดที่ไม่จำเป็น
ตัวอย่างการคิดเชิงนามธรรม
ในชีวิตประจำวัน
1.เราจะดูแผนที่ในจังหวัดสงขลา เพื่อเที่ยว ถ้าดูเต็มรูปแบบ จะยุ่งยาก มีหลายเส้นทางเยอะไปหมด แต่เราสามารถแก้ปัญหา โดยตัดรายละเอียดส่วนเกินทิ้ง เอาสถานที่และเส้นทางที่สำคัญที่จะใช้
ตัวอย่างการคิดเชิงนามธรรม
ในการเขียนโปรแกรม
โจทย์ปัญหาเขียนโปรแกรมที่ยุ่งยาก สามารถทำให้ง่ายขึ้นด้วยการสกัดเอาลักษณะ สำคัญออกมาวาดเป็น Object ใช้ Class diagram ลากเส้นแสดง
ความสัมพันธ์กัน จากนั้นก็เริ่ม
เขียนโปรแกรมเป็นแบบเชิงวัตถุ
3.แนวคิดการออกแบบ
ขั้นตอนวิธี
(Algorithm)
เป็นการพัฒนากระบวนการหา
คำตอบให้เป็นขั้นตอนที่บุคคล
ตัวอย่างการออกเเบบขั้นตอนวิธี
ในชีวิตประจำวัน
1.จะไปเที่ยวสงขลา ต้องวางแผนว่าใน แต่ละวันทำอะไรบ้าง เที่ยวที่ไหน กินข้าวที่ไหน มีลำดับตามช่วงเวลา?
ตัวอย่างการออกเเบบขั้นตอน
ในการเขียนโปรแกรม
จะหาเส้นทางที่ใกล้สุดในกราฟ ด้วยวิธี
Dijkstra จะมีขั้นตอน อย่างไรบ้าง