วันพฤหัสบดีที่ 5 ธันวาคม พ.ศ. 2556
วันพฤหัสบดีที่ 12 กันยายน พ.ศ. 2556
ความรู้เกี่ยวกับภาษาจาวา
ความรู้เกี่ยวกับภาษาจาวา
ภาษาจาวาถือกำเนิดขึ้นจากความต้องการที่จะสร้างคอมไพเลอร์ภาษาคอมพิวเตอร์ซึ่งเป็นอิสระจาก Hardware รุ่นใดรุ่นหนึ่ง หรือยี่ห้อใดยี่ห้อหนึ่ง โดยจุดประสงค์แรกนั้นต้องการที่จะใช้เขียนโปรแกรม เพื่อควบคุมอุปกรณ์เครื่องใช้ไฟฟ้า และอุปกรณ์อิเล็กทรอนิคส์ต่างๆ เช่น เตาอบ, เครื่องซักผ้า, โทรศัพท์, มือถือ, Set Top Box ของเคเบิ้ลทีวี ฯลฯ ด้วยเหตุนี้ โดยการนำของ James Gosling หัวหน้า กลุ่ม Green Group แห่งบริษัท Sun Microsystems จึงได้เริ่มโครงการพัฒนาภาษาดังกล่าวอย่างจริงจัง ในปี 1991 โดยขั้นแรกชื่อว่า ภาษา Oak แต่หลังจากที่ไม่ประสบความสำเร็จในการนำไปใช้งานตามความคิดริเริ่มดังกล่าว ประกอบกับบริษัท Sun Microsystems เริ่มมองเห็นความจำเป็นที่ต้องมีภาษาที่สร้างโปรแกรมบนเครื่องหนึ่งแต่สามารถนำไปใช้งานบนเครื่องใดๆ ก็ได้ (Write Once Run Anywhere) บริษัทจึงได้นำเอาภาษา Oak มาพัฒนาต่อให้เป็นภาษาแบบ Object Oriented จนได้ภาษา จาวาขึ้นในปี 1995 และปัจจุบันได้มีหลายบริษัทพัฒนาภาษา จาวาขึ้นมาเป็นผลิตภัณฑ์ของตัวเองทั้ง Visual J++ (Microsoft) Visual Cafe (Sysmantec) และ Jbuilder (Borland) เป็นต้น จาวาเป็นภาษา Object Oriented ในอดีตที่ผ่านมาหลายภาษาได้อ้างตัวว่าเป็น Object Oriented เช่น C++ แต่แท้จริงแล้วยังไม่มีภาระใดที่ทำให้ผู้ใช้ได้รับประโยชน์จากคุณสมบัติที่เป็น Object Oriented ของภาษาได้อย่างแท้จริง โดยเฉพาะอย่างยิ่งคุณสมบัติความเข้ากันได้ หรือทำงานได้ทุก Plateform ของภาษาแบบ Object Oriented ทั้งนี้เพราะแต่ละภาษามี Object Model ที่ไม่เอื้ออำนวยให้เกิดประสิทธิภาพสูงสุดดังกล่าวได้ แต่ภาษาจาวาได้ถูกออกแบบให้เป็นภาษาแบบ Object Oriented โดยแท้จริงโดยทุกส่วนของจาวา จะถือเป็น Object ทั้งหมด ไม่ว่า class, function หรือว่า array ล้วนแล้วแต่เป็นออบเจ็กต์ทั้งสิ้น จะมียกเว้นอยู่อย่างเดียวคือชนิดของข้อมูล ซึ่งถือเป็นออบเจ็กต์โดยรายละเอียดของชนิดของข้อมูล ภาษา จาวาไม่ยึดติดกับ Platform (Platform Independent) source code จาวาจะถูกคอมไพล์เป็น .class หรือชุดคำสัง JVM(Java Vitual Machine) ก่อน เมื่อมีการเรียกใช้จึงจะถูกดาวน์โหลดลงบนเครื่องลูกข่ายแล้วถูกแปลด้วย Interpreter อีกทีหนึ่งเพื่อให้มันทำงาน ดังนั้นเครื่องลูกข่ายใดๆ ก็ตามที่มี Virtual Processer ซึ่งเป็น Interpreter ที่ใช้แปลภาษา JVM อยู่จะสามารถเรียกใช้งานภาษาจาวาได้เลยไม่ต้องมีการคอมไพล์โปรแกรมภาษา จาวาอีกครั้ง ข้อดีของภาษาเชิงวัตถุ ภาษาเชิงวัตถุนั้นเราสามารถสร้างเพื่อเลียนแบบการทำงานของสิ่งต่างๆในโลกนี้ได้ดีกว่าและง่ายกว่ามาก โดยภาษา จาวานั้นสร้างขึ้นมาโดยใช้หลักการเขียนโปรแกรมแบบเดียวกับภาษา C ทำให้ผู้เขียนภาษา จาวายิ่งมีพื้นฐาน C มาก่อน จะสามารถเขียน จาวาได้อย่างรวดเร็ว ภาษาเชิงวัตถุนั้นมีความสามารถในการนำกลับมาใช้ใหม่ได้ดีกว่าภาษาเชิงกระบวนการ เพราะผู้ใช้ไม่ต้องรู้กระบวนการ และโครงสร้างของข้อมูลในการผ่าน Parameter ในแต่ละฟังก์ชันเหมือนภาษาเชิงกระบวนการ จาวาไม่ใช้ Pointer และ จาวาไม่ให้ผู้เขียนโปรแกรมจับจองหรือปล่อยให้เนื้อที่หน่วยความจำ (Allocate/Deallocate) ด้วยตัวเองเพื่อป้องกันปัญหาที่จะเกิดขึ้นกับระบบคอมพิวเตอร์เมื่อมีการจอง (Allocate) หรือคืน (Deallocate) หน่วยความจำบ่อยๆ โดย จาวาจะจัดการเรื่องนี้ให้เอง โปรแกรมภาษาเชิงวัตถุ นั้นมีความกระทัดรัดเหมาะสมที่จะใช้งานบนอินเตอร์เน็ต เพราะใช้เวลาในการดาวน์โหลดโปรแกรมน้อยกว่า ภาษา จาวานั้นปลอดภัยจากการนำภาษาไปเขียนเป็นโปรแกรมไวรัสเพื่อเล่นงานเครือข่ายคอมพิวเตอร์ จาวาแอพเพลต แอพเพลต คือโปรแกรมขนาดเล็กที่สร้างขึ้นด้วยภาษา จาวาสามารถถูกเรียกใช้งานบน เว็บบราวเซอร์ โดยผ่านทาง HTML Page โปรแกรมภาษา จาวาที่เป็น แอพพลิเคชั่นได้ จะเป็น Standalone โปรแกรมที่สามารถทำงานได้โดยไม่ต้องอาศัยโปรแกรมอื่นสามารถควบคุมการดำเนินการของตัวเองได้แต่โปรแกรมที่เป็น แอพเพลต จะทำงานภายใต้ เว็บบราวเซอร์ โดยไม่สามารถควบคุมการดำเนินการของตัวเองได้ทั้งหมด โปรแกรมของ แอพเพลต เมื่อถูกคอมไพล์แล้วจะได้เป็นไฟล์ .class แต่จะไม่สามารถทำงานได้โดย จาวาinterpreter (Java.exe) เหมือนโปรแกรมที่เป็น แอพพลิเคชั่นได้ การเรียกให้ แอพเพลต ทำงานนั้นจะต้องทำภายใน HTML Page เท่านั้นโดยใช้ แอพเพลต Tag และ แอพเพลต นั้นจะต้องทำงานภายใต้สภาพแวดล้อมของ บราวเซอร์ เช่น Netscape Navigator, Microsoft Internet Exporler หรือ HotJavaซึ่งทั้งหมดเป็น บราวเซอร์ ที่มี จาวาinterpreter อยู่ภายใน
ภาษาจาวาถือกำเนิดขึ้นจากความต้องการที่จะสร้างคอมไพเลอร์ภาษาคอมพิวเตอร์ซึ่งเป็นอิสระจาก Hardware รุ่นใดรุ่นหนึ่ง หรือยี่ห้อใดยี่ห้อหนึ่ง โดยจุดประสงค์แรกนั้นต้องการที่จะใช้เขียนโปรแกรม เพื่อควบคุมอุปกรณ์เครื่องใช้ไฟฟ้า และอุปกรณ์อิเล็กทรอนิคส์ต่างๆ เช่น เตาอบ, เครื่องซักผ้า, โทรศัพท์, มือถือ, Set Top Box ของเคเบิ้ลทีวี ฯลฯ ด้วยเหตุนี้ โดยการนำของ James Gosling หัวหน้า กลุ่ม Green Group แห่งบริษัท Sun Microsystems จึงได้เริ่มโครงการพัฒนาภาษาดังกล่าวอย่างจริงจัง ในปี 1991 โดยขั้นแรกชื่อว่า ภาษา Oak แต่หลังจากที่ไม่ประสบความสำเร็จในการนำไปใช้งานตามความคิดริเริ่มดังกล่าว ประกอบกับบริษัท Sun Microsystems เริ่มมองเห็นความจำเป็นที่ต้องมีภาษาที่สร้างโปรแกรมบนเครื่องหนึ่งแต่สามารถนำไปใช้งานบนเครื่องใดๆ ก็ได้ (Write Once Run Anywhere) บริษัทจึงได้นำเอาภาษา Oak มาพัฒนาต่อให้เป็นภาษาแบบ Object Oriented จนได้ภาษา จาวาขึ้นในปี 1995 และปัจจุบันได้มีหลายบริษัทพัฒนาภาษา จาวาขึ้นมาเป็นผลิตภัณฑ์ของตัวเองทั้ง Visual J++ (Microsoft) Visual Cafe (Sysmantec) และ Jbuilder (Borland) เป็นต้น จาวาเป็นภาษา Object Oriented ในอดีตที่ผ่านมาหลายภาษาได้อ้างตัวว่าเป็น Object Oriented เช่น C++ แต่แท้จริงแล้วยังไม่มีภาระใดที่ทำให้ผู้ใช้ได้รับประโยชน์จากคุณสมบัติที่เป็น Object Oriented ของภาษาได้อย่างแท้จริง โดยเฉพาะอย่างยิ่งคุณสมบัติความเข้ากันได้ หรือทำงานได้ทุก Plateform ของภาษาแบบ Object Oriented ทั้งนี้เพราะแต่ละภาษามี Object Model ที่ไม่เอื้ออำนวยให้เกิดประสิทธิภาพสูงสุดดังกล่าวได้ แต่ภาษาจาวาได้ถูกออกแบบให้เป็นภาษาแบบ Object Oriented โดยแท้จริงโดยทุกส่วนของจาวา จะถือเป็น Object ทั้งหมด ไม่ว่า class, function หรือว่า array ล้วนแล้วแต่เป็นออบเจ็กต์ทั้งสิ้น จะมียกเว้นอยู่อย่างเดียวคือชนิดของข้อมูล ซึ่งถือเป็นออบเจ็กต์โดยรายละเอียดของชนิดของข้อมูล ภาษา จาวาไม่ยึดติดกับ Platform (Platform Independent) source code จาวาจะถูกคอมไพล์เป็น .class หรือชุดคำสัง JVM(Java Vitual Machine) ก่อน เมื่อมีการเรียกใช้จึงจะถูกดาวน์โหลดลงบนเครื่องลูกข่ายแล้วถูกแปลด้วย Interpreter อีกทีหนึ่งเพื่อให้มันทำงาน ดังนั้นเครื่องลูกข่ายใดๆ ก็ตามที่มี Virtual Processer ซึ่งเป็น Interpreter ที่ใช้แปลภาษา JVM อยู่จะสามารถเรียกใช้งานภาษาจาวาได้เลยไม่ต้องมีการคอมไพล์โปรแกรมภาษา จาวาอีกครั้ง ข้อดีของภาษาเชิงวัตถุ ภาษาเชิงวัตถุนั้นเราสามารถสร้างเพื่อเลียนแบบการทำงานของสิ่งต่างๆในโลกนี้ได้ดีกว่าและง่ายกว่ามาก โดยภาษา จาวานั้นสร้างขึ้นมาโดยใช้หลักการเขียนโปรแกรมแบบเดียวกับภาษา C ทำให้ผู้เขียนภาษา จาวายิ่งมีพื้นฐาน C มาก่อน จะสามารถเขียน จาวาได้อย่างรวดเร็ว ภาษาเชิงวัตถุนั้นมีความสามารถในการนำกลับมาใช้ใหม่ได้ดีกว่าภาษาเชิงกระบวนการ เพราะผู้ใช้ไม่ต้องรู้กระบวนการ และโครงสร้างของข้อมูลในการผ่าน Parameter ในแต่ละฟังก์ชันเหมือนภาษาเชิงกระบวนการ จาวาไม่ใช้ Pointer และ จาวาไม่ให้ผู้เขียนโปรแกรมจับจองหรือปล่อยให้เนื้อที่หน่วยความจำ (Allocate/Deallocate) ด้วยตัวเองเพื่อป้องกันปัญหาที่จะเกิดขึ้นกับระบบคอมพิวเตอร์เมื่อมีการจอง (Allocate) หรือคืน (Deallocate) หน่วยความจำบ่อยๆ โดย จาวาจะจัดการเรื่องนี้ให้เอง โปรแกรมภาษาเชิงวัตถุ นั้นมีความกระทัดรัดเหมาะสมที่จะใช้งานบนอินเตอร์เน็ต เพราะใช้เวลาในการดาวน์โหลดโปรแกรมน้อยกว่า ภาษา จาวานั้นปลอดภัยจากการนำภาษาไปเขียนเป็นโปรแกรมไวรัสเพื่อเล่นงานเครือข่ายคอมพิวเตอร์ จาวาแอพเพลต แอพเพลต คือโปรแกรมขนาดเล็กที่สร้างขึ้นด้วยภาษา จาวาสามารถถูกเรียกใช้งานบน เว็บบราวเซอร์ โดยผ่านทาง HTML Page โปรแกรมภาษา จาวาที่เป็น แอพพลิเคชั่นได้ จะเป็น Standalone โปรแกรมที่สามารถทำงานได้โดยไม่ต้องอาศัยโปรแกรมอื่นสามารถควบคุมการดำเนินการของตัวเองได้แต่โปรแกรมที่เป็น แอพเพลต จะทำงานภายใต้ เว็บบราวเซอร์ โดยไม่สามารถควบคุมการดำเนินการของตัวเองได้ทั้งหมด โปรแกรมของ แอพเพลต เมื่อถูกคอมไพล์แล้วจะได้เป็นไฟล์ .class แต่จะไม่สามารถทำงานได้โดย จาวาinterpreter (Java.exe) เหมือนโปรแกรมที่เป็น แอพพลิเคชั่นได้ การเรียกให้ แอพเพลต ทำงานนั้นจะต้องทำภายใน HTML Page เท่านั้นโดยใช้ แอพเพลต Tag และ แอพเพลต นั้นจะต้องทำงานภายใต้สภาพแวดล้อมของ บราวเซอร์ เช่น Netscape Navigator, Microsoft Internet Exporler หรือ HotJavaซึ่งทั้งหมดเป็น บราวเซอร์ ที่มี จาวาinterpreter อยู่ภายใน
วันพฤหัสบดีที่ 29 สิงหาคม พ.ศ. 2556
ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์หมายถึง ภาษาใดๆ ที่ผู้ใช้งานใช้สื่อสารกับคอมพิ
ภาษาคอมพิวเตอร์สามารถแบ่งออกเป
ภาษาคอมพิวเตอร์อาจแบ่งกลุ่มได้
ประเถทของภาษาคอมพิวเตอร์
เเบ่งตามลักษณะการใช้งาน มี4 ประเภท ภาษาเครื่อง (Machine Language)
เป็นภาษาหรือคำสั่งที่ใช้ในการส
ของภาษาเครื่องจะประกอบด้วยรหัส
ก. รหัสบอกประเภทของคำสั่ง (Operation Code หรือ Op-Code) เป็นส่วนที่บอกคำสั่งให้เครื่อง
ข. รหัสบอกตำแหน่งข้อมูล (Operand) เป็นส่วนที่บอกว่าข้อมูลที่จะนำ
ลักษณะของโปรแกรมจะประกอบด้วยกล
ฐานสองเรียงต่อกัน ซึ่งผู้เขียนโปรแกรมจะต้องทราบถ
ข้อดี ของภาษาเครื่อง
1. เมื่อคำสั่งเข้าสู่เครื่องจะสาม
2. สามารถสร้างคำสั่งใหม่ ๆ ได้ โดยที่ภาษาอื่นทำไม่ได้
3. ต้องการหน่วยความจำเพียงเล็กน้อ
ข้อเสีย ของภาษาเครื่อง
1. ต้องเขียนโปรแกรมคำสั่งยาวทำให้
2. ผู้เขียนโปรแกรมจะต้องรู้ระบบกา
ภาษาแอสแซมบลี (Assembly Language)
จัดเป็นภาษาสัญลักษณ์ (Symbolic Language) เป็นภาษาที่พัฒนามาจาก
ภาษาเครื่องโดยใช้สัญลักษณ์ข้อค
ข้อดี ของภาษาแอสแซมบลี
- การเขียนโปรแกรมเขียนง่ายกว่าภา
ข้อเสีย ของภาษาแอสแซมบลี
- ขั้นตอนการเขียนโปรแกรมมีลักษณะ
2. ภาษาระดับสูง (High Level Language)
เป็นภาษาคอมพิวเตอร์ที่ได้รับกา
ภาษาไม่ขึ้นกับฮาร์ดแวร์หรือลัก
แต่อย่างไรก็ตามภาษาระดับสูงเคร
ภาษาระดับสูง (High Level Language)
ในปีค.ศ. 1960 ได้มีการพัฒนา ภาษาระดับสูง (High Level Language) ขึ้น ภาษาระดับสูงจะใช้คำในภาษาอังกฤ
ภาษาระดับสูงนี้ถือว่าเป็น ภาษายุคที่สาม (third-generation language) ซึ่งทำให้เกิดการประมวลผลข้อมูล
ภาษาคอมพิวเตอร์บางภาษาได้ถูออแ
ภาษาระดับสูงมาก (Very high-level Language)
เป็นภาษายุคที่ 4 (fourth-generation language) หรือ 4GLs จะเป็นภาษาที่ใช้เขียนโปรแกรมได
ประเถทของภาษาคอมพิวเตอร์เเบ่งตามลักษณะการใช้งาน มี4 ประเภทภาษาเครื่อง (Machine Language)เป็นภาษาหรือคำสั่งที่ใช้ในการส
ภาษาแอสแซมบลี (Assembly Language)จัดเป็นภาษาสัญลักษณ์ (Symbolic Language) เป็นภาษาที่พัฒนามาจากภาษาเครื่องโดยใช้สัญลักษณ์ข้อค
ข้อดี ของภาษาแอสแซมบลี- การเขียนโปรแกรมเขียนง่ายกว่าภา
ข้อเสีย ของภาษาแอสแซมบลี- ขั้นตอนการเขียนโปรแกรมมีลักษณะ
ภาษาระดับสูง (High Level Language)ในปีค.ศ. 1960 ได้มีการพัฒนา ภาษาระดับสูง (High Level Language) ขึ้น ภาษาระดับสูงจะใช้คำในภาษาอังกฤ
วันพฤหัสบดีที่ 18 กรกฎาคม พ.ศ. 2556
การถ่ายทอดความคิดในการแก้ปัญหา "อัลกอริทึม"
การเขียนรหัสจำลอง (Pseudo Code) หมายถึง การเขียนอัลกอริทึมโดยใช้ประโยคภาษาอังกฤษที่สื่อความหมายง่าย ๆ สามารถอ่านแล้วเข้าใจได้โดยทันที แต่ก็สามารถใช้รูปแบบที่เป็นภาษาพูดด้วย ภาษาไทยและภาษาอังกฤษ โครงสร้างของรหัสจำลองเริ่มต้นด้วยข้อความ Begin แล้วอธิบายขั้นตอนการทำงานโดยใช้คำสั่งต่าง ๆ ที่ใกล้เคียงกับภาษาคอมพิวเตอร์ในการเขียนโปรแกรม เช่น คำสั่ง read หมายถึง การอ่านค่าหรือรับค่าข้อมูลตัวแปรตามที่กำหนดไว้ คำสั่ง print หมายถึง การแสดงผลลัพธ์ที่ได้จากการคำนวณและพิมพ์ข้อความ End เมื่อจบการทำงาน การเขียนรหัสจำลองจะต้องมีการวางแผนสำหรับการอ้างอิงถึงข้อมูลที่จะต้องนำไปใช้ภายในโปรแกรมด้วย
การสร้างตัวแปร โดยใช้เครื่องหมายเท่ากับ (= ) แทนการกำหนดค่าตัวแปร
การเขียนผังงาน (Flowchart) หมายถึง แผนภาพที่มีการใช้สัญลักษณ์รูปภาพและลูกศรที่แสดงถึงขั้นตอนการทำงานของโปรแกรมหรือระบบทีละขั้นตอน รวมไปถึงทิศทางการไหลของข้อมูลตั้งแต่แรกจนได้ผลลัพธ์ตามที่ต้องการ มี 2 ประเภท คือ ผังงานระบบ และผังงานโปรแกรม
การสร้างตัวแปร โดยใช้เครื่องหมายเท่ากับ (= ) แทนการกำหนดค่าตัวแปร
การเขียนผังงาน (Flowchart) หมายถึง แผนภาพที่มีการใช้สัญลักษณ์รูปภาพและลูกศรที่แสดงถึงขั้นตอนการทำงานของโปรแกรมหรือระบบทีละขั้นตอน รวมไปถึงทิศทางการไหลของข้อมูลตั้งแต่แรกจนได้ผลลัพธ์ตามที่ต้องการ มี 2 ประเภท คือ ผังงานระบบ และผังงานโปรแกรม
วันพฤหัสบดีที่ 11 กรกฎาคม พ.ศ. 2556
กระบวนการเทคโนโลยีสารสนเทศ
กระบวนการเทคโนโลยีสารสนเทศ
กระบวนการเทคโนโลยีสารสนเทศมี 4 ขั้นตอน ดังนี้
ขั้นตอนนี้เป็นขั้นตอนแรกสุดก่อนที่จะลงมือแก้ปัญหา แต่ผู้แก้ปัญหามักจะมองข้ามความสำคัญของขั้นตอนนี้
อยู่เสมอ จุดประสงค์ของขั้นตอนนี้ คือการทำความเข้าใจกับปัญหาเพื่อแยกให้ออกว่าข้อมูลที่กำหนดมาในปัญหาหรือเงื่อนไขของปัญหาคืออะไร และสิ่งที่ต้องการคืออะไร อีกทั้งวิธีการที่ใช้ประมวลผล ในการวิเคราะห์ปัญหาใด กล่าวโดยสรุปมีองค์ประกอบในการวิเคราะห์ ดังนี้
1. การระบุข้อมูลเข้า ได้แก่ การพิจารณาข้อมูลและเงื่อนไขที่กำหนดมาในปัญหา
2. การระบุข้อมูลออก ได้แก่ การพิจารณาเป้าหมายหรือสิ่งที่ต้องหาคำตอบ
3 การกำหนดวิธีประมวลผล ได้แก่ การพิจารณาขั้นตอนวิธีหาคำตอบหรือข้อมูลออก
2. การเลือกเครื่องมือและออกแบบขั้นตอนวิธี (Tools and Algorithm development)
ขั้นตอนนี้เป็นขั้นตอนของการวางแผนในการแก้ปัญหาอย่างละเอียดถี่ถ้วน หลังจากที่เราทำความเข้าใจกับปัญหา พิจารณาข้อมูลและเงื่อนไขที่มีอยู่ และสิ่งที่ต้องการหาในขั้นตอนที่ 1 แล้ว เราสามารถคาดคะเนวิธีการที่จะใช้ในการแก้ปัญหา ขั้นตอนนี้จำเป็นต้องอาศัยประสบการณ์ของผู้แก้ปัญหาเป็นหลัก หากผู้แก้ปัญหาเคยพบกับปัญหาทำนองนี้มาแล้วก็สามารถดำเนินการตามแนวทางที่เคยปฏิบัติมา
ขั้นตอนนี้จะเริ่มจากการเลือกเครื่องมือที่ใช้ในการแก้ปัญหา โดยพิจารณาความเหมาะสมระหว่างเครื่องมือกับเงื่อนไขต่างๆ ของปัญหาซึ่งหมายรวมถึงความสามารถของเครื่องมือในการแก้ปัญหาดังกล่าว และสิ่งที่สำคัญคือความคุ้นเคยในการใช้งานเครื่องมือนั้นๆ ของผู้แก้ปัญหา
อีกสิ่งหนึ่งที่สำคัญในการแก้ปัญหา คือยุทธวิธีที่ใช้ในการแก้ปัญหาหรือที่เราเรียกว่า
ขั้นตอนวิธี (algorithm) ในการแก้ปัญหา หลังจากที่เราได้เครื่องมือช่วยแก้ปัญหาแล้ว ผู้แก้ปัญหาต้องวางแผนว่าจะใช้เครื่องมือดังกล่าวเพื่อให้ได้ผลลัพธ์ที่ถูกต้องและดีที่สุด การออกแบบขั้นตอนวิธีในการแก้ปัญหา ผู้แก้ปัญหาควรใช้แผนภาพหรือเครื่องมือในการแสดงขั้นตอนการทำงานเพื่อให้ง่ายต่อความเข้าใจ เช่น ผังงาน (flowchart) ที่จำลองขั้นตอนวิธีการแก้ปัญหาในรูปของสัญลักษณ์ รหัสลำลอง (pseudo code) ซึ่งเป็นการจำลองขั้นตอนวิธีการแก้ปัญหาในรูปของคำบรรยาย การใช้เครื่องมือช่วยออกแบบดังกล่าวนอกจากแสดงกระบวนการที่ชัดเจนแล้ว ยังช่วยให้ผู้แก้ปัญหาสามารถหาข้อผิดพลาดของวิธีการที่ใช้ได้ง่ายและแก้ไขได้อย่างรวดเร็ว
ขั้นตอนนี้จะเริ่มจากการเลือกเครื่องมือที่ใช้ในการแก้ปัญหา โดยพิจารณาความเหมาะสมระหว่างเครื่องมือกับเงื่อนไขต่างๆ ของปัญหาซึ่งหมายรวมถึงความสามารถของเครื่องมือในการแก้ปัญหาดังกล่าว และสิ่งที่สำคัญคือความคุ้นเคยในการใช้งานเครื่องมือนั้นๆ ของผู้แก้ปัญหา
อีกสิ่งหนึ่งที่สำคัญในการแก้ปัญหา คือยุทธวิธีที่ใช้ในการแก้ปัญหาหรือที่เราเรียกว่า
ขั้นตอนวิธี (algorithm) ในการแก้ปัญหา หลังจากที่เราได้เครื่องมือช่วยแก้ปัญหาแล้ว ผู้แก้ปัญหาต้องวางแผนว่าจะใช้เครื่องมือดังกล่าวเพื่อให้ได้ผลลัพธ์ที่ถูกต้องและดีที่สุด การออกแบบขั้นตอนวิธีในการแก้ปัญหา ผู้แก้ปัญหาควรใช้แผนภาพหรือเครื่องมือในการแสดงขั้นตอนการทำงานเพื่อให้ง่ายต่อความเข้าใจ เช่น ผังงาน (flowchart) ที่จำลองขั้นตอนวิธีการแก้ปัญหาในรูปของสัญลักษณ์ รหัสลำลอง (pseudo code) ซึ่งเป็นการจำลองขั้นตอนวิธีการแก้ปัญหาในรูปของคำบรรยาย การใช้เครื่องมือช่วยออกแบบดังกล่าวนอกจากแสดงกระบวนการที่ชัดเจนแล้ว ยังช่วยให้ผู้แก้ปัญหาสามารถหาข้อผิดพลาดของวิธีการที่ใช้ได้ง่ายและแก้ไขได้อย่างรวดเร็ว
3. การดำเนินการแก้ปัญหา (Implementation)
หลังจากที่ได้ออกแบบขั้นตอนวิธีเรียบร้อยแล้ว ขั้นตอนนี้เป็นขั้นตอนที่ต้องลงมือแก้ปัญหาโดยใช้เครื่องมือที่ได้เลือกไว้หากการแก้ปัญหาดังกล่าวใช้คอมพิวเตอร์เข้ามาช่วยขั้นตอนนี้ก็เป็นการใช้โปรแกรมสำเร็จหรือใช้ภาษาคอมพิวเตอร์เขียนโปรแกรมแก้ปัญหา ขั้นตอนนี้ต้องอาศัยความรู้เกี่ยวกับเครื่องมือที่เลือกใช้ซึ่งผู้แก้ปัญหาต้องศึกษาให้เข้าใจและเชี่ยวชาญ ในขณะที่ดำเนินการหากพบแนวทางที่ดีกว่าที่ออกแบบไว้ก็สามารถปรับเปลี่ยนได้
4. การตรวจสอบและปรับปรุง (Refinement)
หลังจากที่ลงมือแก้ปัญหาแล้ว ต้องตรวจสอบให้แน่ใจว่าวิธีการนี้ให้ผลลัพธ์ที่ถูกต้อง โดยผู้แก้ปัญหาต้องตรวจสอบว่าขั้นตอนวิธีที่สร้างขึ้นสอดคล้องกับรายละเอียดของปัญหา ซึ่งได้แก่ ข้อมูลเข้า และข้อมูลออก เพื่อให้มั่นใจว่าสามารถรองรับข้อมูลเข้าได้ในทุกกรณีอย่างถูกต้องและสมบูรณ์ ในขณะเดียวกันก็ต้องปรับปรุงวิธีการเพื่อให้การแก้ปัญหานี้ได้ผลลัพธ์ที่ดีที่สุด
ขั้นตอนทั้ง 4 ขั้นตอนดังกล่าวข้างต้น เป็นเสมือนขั้นบันได (stair) ที่ทำให้มนุษย์สามารถประสบความสำเร็จในการแก้ปัญหาต่างๆ ได้ รวมทั้งการเขียนหรือพัฒนาโปรแกรมคอมพิวเตอร์เพื่อแก้ปัญหาก็ต้องใช้กระบวนการตามขั้นตอนทั้ง 4 นี้เช่นกัน
วันพุธที่ 10 กรกฎาคม พ.ศ. 2556
กิ่งกาญจน์ ไก่แก้ว
My name is : Kingkan Kaikaew (Ging)
Class: M.5/5 No.34 ID:18639
Date : 4 /11/1996
Age : 16
Studyin: Assumption College Rayong
สมัครสมาชิก:
บทความ (Atom)
