บทที่ 7 ขั้นตอนการพัฒนาโปรแกรม

7.1 ขั้นตอนการพัฒนาโปรแกรม

ขั้นตอนการพัฒนาโปรแกรมประกอบด้วย

  1. การวิเคราะห์ปัญหา
  2. การออกแบบโปรแกรม
  3. การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์
  4. การทดสอบและแก้ไขโปรแกรม
  5. การทำเอกสารประกอบโปรแกรม
  6. การบำรุงรักษาโปรแกรม

การวิเคราะห์ปัญหา

การวิเคราะห์ปัญหา ประกอบด้วยขั้นตอนต่างๆ ดังนี้

  1. กำหนดวัตถุประสงค์ของงาน เพื่อพิจารณาว่าโปรแกรมต้องทำการประมวลผลอะไรบ้าง
  2. พิจารณาข้อมูลนำเข้า เพื่อให้ทราบว่าจะต้องนำข้อมูลอะไรเข้าคอมพิวเตอร์ ข้อมูลมีคุณสมบัติเป็นอย่างไร ตลอดจนถึงลักษณะและรูปแบบของข้อมูลที่จะนำเข้า
  3. พิจารณาการประมวลผล เพื่อให้ทราบว่าโปรแกรมมีขั้นตอนการประมวลผลอย่างไรและมีเงื่อนไปการประมวลผลอะไรบ้าง
  4. พิจารณาข้อสนเทศนำออก เพื่อให้ทราบว่ามีข้อสนเทศอะไรที่จะแสดง ตลอดจนรูปแบบและสื่อที่จะใช้ในการแสดงผล

การออกแบบโปรแกรม

การออกแบบขั้นตอนการทำงานของโปรแกรมเป็นขั้นตอนที่ใช้ เป็นแนวทางในการลงรหัสโปรแกรม ผู้ออกแบบขั้นตอนการทำงานของโปรแกรมอาจใช้เครื่องมือต่างๆ ช่วยในการออกแบบ อาทิเช่น คำสั่งลำลอง (Pseudocode) หรือ ผังงาน (Flow chart) การออกแบบโปรแกรมนั้นไม่ต้องพะวงกับรูปแบบคำสั่งภาษาคอมพิวเตอร์ แต่ให้มุ่งความสนใจไปที่ลำดับขั้นตอนในการประมวลผลของโปรแกรมเท่านั้น

การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์

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

การทดสอบและแก้ไขโปรแกรม

การทดสอบโปรแกรมเป็นการนำโปรแกรมที่ลงรหัสแล้วเข้า คอมพิวเตอร์ เพื่อตรวจสอบรูปแบบกฎเกณฑ์ของภาษา และผลการทำงานของโปรแกรมนั้น ถ้าพบว่ายังไม่ถูกก็แก้ไขให้ถูกต้องต่อไป ขั้นตอนการทดสอบและแก้ไขโปรแกรม อาจแบ่งได้เป็น 3 ขั้น

  1. สร้างแฟ้มเก็บโปรแกรมซึ่งส่วนใหญ่นิยมนำโปรแกรมเข้าผ่านทางแป้นพิมพ์โดยใช้โปรแกรมประมวลคำ
  2. ใช้ตัวแปลภาษาคอมพิวเตอร์แปลโปรแกรมที่สร้างขึ้นเป็นภาษาเครื่อง โดยระหว่างการแปลจะมีการตรวจสอบความถูกต้องของรูปแบบและกฎเกณฑ์ในการใช้ภาษา ถ้าคำสั่งใดมีรูปแบบไม่ถูกต้องก็จะแสดงข้อผิดพลาดออกมาเพื่อให้ผู้เขียนนำไป แก้ไขต่อไป ถ้าไม่มีข้อผิดพลาด เราจะได้โปรแกรมภาษาเครื่องที่สามารถให้คอมพิวเตอร์ประมวลผลได้
  3. ตรวจสอบความถูกต้องของการประมวลผลของโปรแกรม โปรแกรมที่ถูกต้องตามรูปแบบและกฎเกณฑ์ของภาษา แต่อาจให้ผลลัพธ์ของการประมวลผลไม่ถูกต้องก็ได้ ดังนั้นผู้เขียนโปรแกรมจำเป็นต้องตรวจสอบว่าโปรแกรมประมวลผลถูกต้องตามต้อง การหรือไม่ วิธีการหนึ่งก็คือ สมมติข้อมูลตัวแทนจากข้อมูลจริงนำไปให้โปรแกรมประมวลผลแล้วตรวจสอบผลลัพธ์ ว่าถูกต้องหรือไม่ ถ้าพบว่าไม่ถูกต้องก็ต้องดำเนินการแก้ไขโปรแกรมต่อไป การสมมติข้อมูลตัวแทนเพื่อการทดสอบเป็นสิ่งที่มีความสำคัญเป็นอย่างมาก ลักษณะของข้อมูลตัวแทนที่ดีควรจะสมมติทั้งข้อมูลที่ถูกต้องและข้อมูลที่ผิด พลาด เพื่อทดสอบว่าโปรแกรมที่พัฒนาขึ้นสามารถครอบคลุมการปฏิบัติงานในเงื่อนไข ต่างๆ ได้ครบถ้วน นอกจากนี้อาจตรวจสอบการทำงานของโปรแกรมด้วยการสมมติตัวเองเป็นคอมพิวเตอร์ที จะประมวลผล แล้วทำตามคำสั่งทีละคำสั่งของโปรแกรมนั้นๆ วิธีการนี้อาจทำได้ยากถ้าโปรแกรมมีขนาดใหญ่ หรือมีการประมวลผลที่ซับซ้อน

การทำเอกสารประกอบโปรแกรม

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

  1. วัตถุประสงค์
  2. ประเภทและชนิดของคอมพิวเตอร์และอุปกรณ์ที่ใช้ในโปรแกรม
  3. วิธีการใช้โปรแกรม
  4. แนวคิดเกี่ยวกับการออกแบบโปรแกรม
  5. รายละเอียดโปรแกรม
  6. ข้อมูลตัวแทนที่ใช้ทดสอบ
  7. ผลลัพธ์ของการทดสอบ

การบำรุงรักษาโปรแกรม

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

7.2 ภาษาโปรแกรมคอมพิวเตอร์

 

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

7.3 การโปรแกรมด้วยภาษาซี

          ในบทนี้จะได้แนะนำให้รู้จักกับภาษาซี ซึ่งเป็นภาษาที่เขียนเป็นแบบโครงสร้าง และเป็นภาษาที่
ใช้เป็นพื้นฐานในการเรียนรู้การเขียนโปรแกรมเชิงกระบวนความได้เป็นอย่างดี
          โครงสร้างพื้นฐานของโปรแกรมภาษาซีจะต้องประกอบด้วยฟังก์ชันอย่างน้อย 1 ฟังก์ชัน คือ
ฟังก์ชัน main( )  ซึ่งมีรูปแบบดังรูปที่ 7.8
01 int main ( ) {  <ส่วยหัวของฟังก์ชัน
02      การประกาศตัวแปรตัวแปรท้องถิ่น ;
03      คำสั่งต่างๆ ;
04 }

7.4 การพัฒนาโครงงานคอมพิวเตอร์

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

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

1. โครงงานพัฒนาสื่อเพื่อการศึกษา
เป็นการสร้างบทเรียนที่อาจมีแบบฝึกหัดหรือคำถามเพื่อทดสอบด้วย

2.โครงงานพัฒนาเครื่องมือ
เป็นการพัฒนาโปรแกรมช่วยงานในด้านต่างๆ

3. โครงงานจำลองทฤษฎี
เป็นการพัฒนาโปรแกรมเพื่อจำลองการทดลองในด้านต่างๆที่ไม่สามารถทดลองด้วยสถานการณ์จริงได้

4.โครงงานประยุกต์
เป็นการนำเอาคอมพิวเตอร์มาประยุกต์ร่วมกับอุปกรณ์อื่นในการประดิษฐ์สิ่งของหรือปรับปรุง
เครื่องมือที่มีอยู่เดิมให้มีประสิทธิภาพสูงขึ้น

5.โครงงานพัฒนาเกม
เป็นการสร้างเกมเพื่อการศึกษาหรือความบันเทิง

……………………………………………………………………………………

อ้างอิง : http://www.thaigoodview.com/blog/31559

6.3 โครงสร้างการโปรแกรม

ก่อนการเขียนโปรแกรม ผู้พัฒนาโปรแกรมจะต้องเลือกภาษาคอมพิวเตร์ ที่จะนำมาใช้ช่วยงานโดยพิจารณาจากปัจจัยต่างๆ ในการทำงาน เช่น ลักษณะของปัญหา ความถนัดของนักเขียนดโปรแกรม สภาพแวดล้อมในการทำงานของระบบคอมพิวเตอร์ เป็นต้น เนื่องจากในปัจจุบันมีภาษาคอมพิวเตอร์ให้เลือกได้หลายภาษา เช่น ภาษาปาสคาล ภาษาซี ภาษาจาวา และภาษาเดลฟาย ภึงแม้แต่ละภาษาจะมีรูปแบบและหลักการในการสร้างงานที่แตกต่างกันแต่ทุกภาษาจะต้องมีโครงสร้างควบคุมหลักทั้ง 3 แบบ ได้แก่ โดครงสร้างแบบลำดับ (sequential structure) โครงสร้างแบบทางเลือก (selection structure) และโครงสร้างแบบวนซ้ำ(repetition structure

   (sequential structure)

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

โครงสร้างแบบเรียงลำดับเมื่อเขียนเป็นผังงาน จะมีลักษณะดังเช่นรูปที่ 6.9 และมีกระบวนการทำงานพื้ฐานอยู่ 3 ชนิด ดังแสดงในรูปที่ 6.10 ได้แก่

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

- การรับข้อมูลเข้า เป็นกระบวนการรับข้อมูลจากอุปกรณ์ของหน่วยรับเข้า เช่น คีย์บอร์ด เพื่อนำค่าไปกำหนดให้กับตัวแปร และเก็บไว้ในหน่วยความจำ

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

ในการดำเนินการเพื่อแก้ปัญหาด้วยคอมพิวเตอร์ กระบวนการเหล่านี้ต้องถูกแปลงให้อย฿่รูปของคำสั่งหลายคำสั่งประกอบกันเพื่อให้ทำงานตามขั้นตอนที่ได้ออกแบบไว้ เช่น กรบวนการการคำนวณในการเพิ่มค่าของตัวแปร counter ขึ้นอีกหนึ่ง จะใช้คำสั่ง ” counter < counter + 1  ” กระบวนการรับข้อมูลเข้าเพื่อเก็บไว้ในตัวแปร x จะใช้คำสั่ง  ” input x” และกระบวนการส่งข้อมูลออกไปยังจอภาพเพื่อแสดงผลของตัวแปร average จะใช้คำสั่ง “print avereage” เป็นต้น

 

 

  (selection structure)

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

      

 

โครงสร้างการทำงานแบบทางเลือกที่กล่าวมาแล้ว อาจเรียกว่ามีโครงสร้างของการทำงานแบบ if…then…else…  ซึ่งเป็นการเลือกทำแบบทางใดทางหนึ่ง เนื่องจากต้องมีการเลือกทำชุดคำสั่งใดชุดคำสั่งหนึ่งตามผลของเงื่อนไข แต่ในการเขียนโปรแกรมหรือผังงานเพื่อแก้ปัญหา นักเขียนโปรแกรมอาจไม่ต้องการทำงานใดๆ เมื่อผลของเงื่อนไขเป็นเท็จก็ได้ โดยผังงานจะมีลักษณะดังรูปที่ 6.13 ซึ่งเรียกว่ามีโครงสร้างของการทำงานแบบเลือกทำเพียงทางเดียว หรือ แบบ if..then…

 

 

  (repetition structure)

ในการแก้ปัญหาบางอย่างอาจต้องมีการทำงานในบางคำสั่งหรือชุดของคำสั่งซ้ำกันมากกว่าหนึ่งรอบขึ้นไป โครงสร้างแบบมีการวนซ้ำนี้ต้องมีการตัดสินใจร่วมอยู่ด้วยเสมอ เพื่อเป็นเงื่อนไขที่ตัดสินใจว่าเมื่อใดจะวนซ้ำ หรือเมื่อไรจะถึงเวลาหยุดวนซ้ำโดยทั่วไปผังงานของการวนว้ำจะมีลักษณะดังรูปที่ 6.14 หรือรูปที่ 6.15 โดยมีความแตกต่างกันตือ ในรูปที่  6.14 เป็นการวนซ้ำแบบที่ต้องตรวจสอบเงื่อนไขที่จะใช้วนซ้ำก่อนที่จะทำงานในชุดคำสั่งในโครงสร้างแบบวนซ้ำ เรียกว่า การวนซ้ำแบบ while ซึ่งจะสังเกตได้ว่าถ้าเงื่อนไขไม่เป็นจริงตั้งแต่แรก คำสั่งแบบโครงสร้างในการวนซ้ำจะไม่ถูกเรียกให้ทำงานเลยแต่สำหรับ 6.15 เป็นการวนซ้ำแบบมีการตรวจสอบเงื่อนไขที่จะให้วนซ้ำหลังจากที่ได้ทำงานตามชุดคำสั่ง ในโครงสร้างแบบวนซ้ำไปรอบหนึ่งแล้วเรียกว่า การวนว้ำแบบ until สำหรับตัวอย่างของการวนซ้ำ เช่น การรับค่าตัวเลขเข้ามาหลายค่า ในโครงสร้าเพื่อคำนวนหาผลรวม ในตัวอย่างที่ 6.7 ถือเป็นการวนซ้ำแบบ until

        

 

สิ่งที่ควรระวังในการใช้งานขั้นตอนวิธีแบบมีการวนซ้ำคือ ต้องตรวจสอบว่าได้กำหนดเงื่อนไขอย่างรัดกุมและถูกต้อง มิเช่นนั้นแล้วอาจเกิดกรณีแบบวนซ้ำไม่รู้จบ (infinte loop) หรือกรณีที่วนซ้ำไม่ไ้ด้ตามจำนวนรอบที่ต้องการ

 

ที่มา : http://www.thaigoodview.com/node/75977?page=0%2C5

6.2 เครื่องมือที่ใช้ในการออกแบบและขั้นตอนวิธีในการแก้ปัญหา

เมื่อได้รายละเอียดเบื้องหลังของปัญหา รามทั้งวิธีการประมวลผลแล้ว ขั้นตอนต่อไปเป็นการตัดสินใจว่าจะใช้เครื่องมือใดในการแก้ปัญหา ถ้าหากเป็นปัญหาทั่งไปในชีวิตประจะวันหรือปัญหาทางคณิตศาสตร์ง่ายๆ ในตัวอย่าง 6.2 และ 6.3 อาจไม่ต้องใช้เครื่องมือพิเศษในการแก้ปัญหา แต่ใช้เพียงการคำนวนด้วยกระดาษทด หรือเครื่องคิดเลขก็สามารหาคำตอบได้แล้ว ตัวอย่างเครื่องมือในการแก้ปัญหา ดังรูปที่ 6.4

 

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

ในการแก้ปัญหาดดยใช้คอมพิวเตอร์นั้น การออกแบบวิธีแก้ปัญหาอย่างเป็นขั้นตอนและง่ายต่อการทำความเข้าใจสำคัญมาก เพราะจะทำให้สามารถเขียนโปรแกรมจากขั้นตอนที่ได้ออกแบบไว้อย่างง่ายดาย เครื่องมือที่ใช้เพื่อการออกแบบขั้นตอนวิธี เช่น รหัสลำลอง (pseudocode) ซึ่งเป็นการจำลองขั้นตอนวิธีแก้ปัญหา โดยการอธิบายด้วยคำพูดที่เข้าใจได้ง่ายเป็นขั้นๆหรือผังงาน (flowchart) ซึ่งเป็นการใช้สัญลักษณ์ในการแสดงรายละเอียดและลำดับของแต่ละขั้นตอนที่ใช้แก้ปัญหา ข้อดีอีกประการหนึ่งของการใช้เครื่องมือเหล่านี้ช่วยในการออกแบบวิแก้ปัญหาคือ จะทำให้สามารถตรวจสอบความถูกต้อง หาจุดผิดพลาด และแก้ไขขั้นตอนในการแก้ปัญหาที่ซับซ้อนได้รวดเร็ว นักเขียนโปรแกรมจึงควรฝึกฝนการใช้งานเครื่องมือเหล่านี้ให้เชี่ยวชาญ ตัวอย่างการเขียนรหัสลำลองและผังงาน ดังรูปที่ 6.5

ตัวอย่างรหัสลำลองและผังงาน

                

 

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

 

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

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

ที่มา : http://www.thaigoodview.com/node/75973?page=0%2C4

6.1 หลักการแก้ปัญหา

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

โดยทั่งไปการแก้ปัญหาหนึ่งอาจทำได้หลายวิธี ตัวอย่างเช่น ปัญหาจากการเล่นเกมทายใจในตัวอย่างที่ 6.1 ต่อไปนี้ก็สามารถแก้ได้หลายวิธีเช่นกัน เพียงแต่ว่าแต่ละวิธีที่แตกต่างกันจะทำให้ผูเล่นเกมแก้ปัญหาได้ช้าเร็วไม่เท่ากัน

ตัวอย่างที่ 6.1 เกมทายใจ

เกมทายใจคือเกมที่จะให้ผู้เล่นทายตัวเลข 3 ตัวโดยต้องทายถูกตัวเลขและตำแหน่งซึ่งต้องใช้ผุ้เล่น 2 คน ผู้เล่นคนที่หน฿่งกำหนดตัวเลข 3 ตัวที่ไม่ซ้ำกันโดยเลือกจาตัวเลข 1-9 และผู้เล่นคนที่หนึ่งต้องแจ้งผลการทายว่าตัวเลขที่ทายมานั้นถูกต้องกี่ตัว และถูกต้องกี่ตำแหน่ง ตัวอย่างเช่น ถ้าตัวเลขที่กำหนดไว้เป็น 8 1 5 และผู้เล่นคนที่สองทายว่า 1 2 3 ผู้เล่นคนที่หนึ่งต้องแจ้งว่าตัวเลขที่ทายนั้นถูกเพียงตัวเดียวและไมามีตัวใดถูกตำแหน่ง

ตัวอย่างการเล่นเกมทายใจ

จะเห็นได้ว่าในครั้งแรกๆ ของการทาย ผู้ทายจะใช้วิธีลองผิดลองถูกโดยการสุ่มตัวเลข 1-9 สำหรับเลขทั้ง 3 ตัว ดยไม่ให้มีตัวเลขซ้ำกัน ซึ้งเมื่อผู้กำหนดให้รายละเอียดเกี่ยวกับจำนวนตัวเลขและจำนวนตำแหน่งที่ถูกต้องแล้ว ผู้ทายก็สามารถแยกตัวเลขที่ไม่ถูกต้องทั้งค่าของตัวเลขและตำแหน่ง ออกจากการทายคำตอบของปัญหาในครั้งถัดๆไป การใช้เหตุผลเพื่อแยกตัวเลขที่ไม่ต้องการใรการทายแต่ละครั้งนี้ จะช่วยให้ผู้ทายสามารถค้นพบคำตอบของปัญหาได้ในที่สุด

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

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

1.1 การระบุข้อมูลออก

1.2 การระบุข้อมูลเข้า

1.3 ราบละเอียดของปัญหา

1.1 การระบุข้อมูลออก

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

1.2 การระบุข้อมูลเข้า

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

 

 

1.3 รายละเอียดของปัญหา

รายละเอียดของปัญหา คือ การพิจารณาความต้องการของปัญหา ตัวอย่างที่ 6.2 และ 6.3 ต่อไปนี้ แสดงรายละเอียดแต่ละขั้นตอนของตัวอย่างปัญหา

ตัวอย่างที่ 6.2 ให้แสดงการวิเคราะห์และกำหนดรายละเอียดของการหาค่าเฉลี่ยนของจำนวนเต็ม 5 จำนวน

องค์ประกอบของขั้นตอนการวิเคราะห์และกำหนดรายละเอียดของปัญหาสามารถแสดงได้ดังนี้

ตัวอย่างที่ 6.3 ให้แสดงการวิเคราะห์และกำหนดรายละเอียดของโจทย์ต่อไปนี้ กำหนดตัวเลข 3 4 8 12 และ x ให้หาค่า x เมื่อค่าเฉลี่ยของจำนวนเต็มทั้ง 5 จำนวน มีค่าเป็น 10

องค์ประกอบของขั้นตอนการวิเคราะห์และกำหนดรายละเอียดของปัญหาสามารถแสดงได้ดังนี้

 

ที่มา : http://www.thaigoodview.com/node/75973?page=0%2C2

บทที่ 6 เรื่องหลักการแก้ปัญหาด้วยคอมพิวเตอร์

 

1.อธิบายหลักการแก้ปัญหาด้วยคอมพิวเตอร์

2.วิเคราะห์และกำหนดรายละเอียดของปัญหา

3.ใช้ภาษาโปรแกรมคอมพิวเตอร์และเครื่องมือต่างๆในการแก้ปัญหา

4.ประยุกต์หลักการไปใช้แก้ปัญหาในรูปแบบที่แตกต่างกัน

 

5.5 ผลกระทบจากการใช้งานอินเทอร์เน็ต

 

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

 

 

 

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

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

 

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

 

 

ที่มา : http://www.thaigoodview.com/node/80640

5.4 โปรแกรมที่ไม่พึงประสงค์

 

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

 

 

เป็นโปรแกรมแปลกปลอมที่สามารถคัดลอกตัวเองแล้วส่งไปยังเครื่องคอมพิวเตอร์อื่นๆได้ทันที โดยอาศัยการเจาะผ่านช่องโหว่ของเครื่อข่ายคอมพิวเตอร์ หรืออินเทอร์เน็ตที่ไม่มีการป้องกันที่ดีพอ โดยจะเข้าไปกีดขวางการทำงานของระบบปฏิบัติการของเครื่องคอมพิวเตอร์ช้าลง

 

เป็นโปรแกรมแอบแฝงที่เมื่อโปรแกรมได้รับการดาวน์โหลดหรือมีการติดตั้งในเครื่องคอมพิวเตอร์เรียบร้อยแล้ว จะแสดงหน้าต่างป๊อปอัพ ที่มีการโฆษาสินค้าออกมาเป็นระยะๆ โดยอัตโนมัต

 

 

ที่มา : http://www.thaigoodview.com/node/80638

5.3 บริการบนอินเทอร์เน็ต

 

เป็นบริการรับส่งจดหมายในรูปแบบอิเล็กทรอนิกส์ที่ได้รับความนิยมจากผู้ใช้ โดยสามารถส่งได้ทั้งข้อความและไฟล์ต่างๆ ซึ่งผู้รับและผู้ส่งต้องมีที่อยู่อีเมล (e-mail address) เพื่อระบุตัวตนบนเครือข่าย เปรียบเสมือนกับเป็นที่อยู่ที่รับใช้รับและส่งจดหมาย

 

1. ใช้หัวเรื่องที่สรุปสาระสำคัญของเนื้อหาในอีเมล

2. เขียนเนื้อหาให้มีสาระในการสื่อสารที่ชัดเจน

3. เขียนข้อความให้กระชับ ไม่เยิ่นเย้อ เหมาะสมกับกาลเทศะ และลงชื่อผู้เขียนทุกครั้ง

4. ใช้ bcc ในการระบุผู้รับ เมื่อส่งข้อความถึงผู้รับจำนวนมาก เพื่อปกป้องความเป็นส่วนตัวของผู้รับที่ระบุใน bcc

5. อย่าใช้อักษรภาษอังกฤษตัวพิมพ์ใหญ่ ซึ่งแสดงถึงการตะโกน หรือการข่มขู่ผู้อ่าน

6. จัดระเบียบข้อความเป็นย่อหน้าเพื่อสะดวกต่อการอ่าน

7. ใช้ภาษาที่เหมาะสมและตัวสะกดที่ถูกต้อง

8. ใช้การตอบกลับ (reply) แทนการเขียน (compose) ข้อความใหม่ เพื่อให้สามารถติดตามเรื่องราวของอีเมลที่เกี่ยวข้องกันได้สะดวก

9. ใช้การตอบกลับไปยังทุกคน (reply all) เมื่อจำเป็น เพื่อไม่ให้เป็นการรบกวนผู้อื่นที่ไม่เกี่ยวข้องในการตอบอีเมลนั้น

10. ใช้อักษรตัวย่อ หรือสัญรูปอารมณ์ที่ไม่ฟุ่มเฟื่อยจนเกินไป และคาดหวังว่าผู้รับสามารถเข้าใจได้

 

 

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

 

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

 

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

 

เป็นบล็อกที่มีการแสดงหัวข้อและความคิดเห็นที่กระชับ กะทัดรัด ผู้ใช้ที่เป็นสมาชิกสามารถเลือกหัวข้อจากบล็อกอื่นให้มาปรากฏในไมโครบล็อกของตนเอง หรือตามสมาชิกอื่นได้

 

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

 

ที่มา : http://www.thaigoodview.com/node/80636

5.2 เวิลด์ไวด์เว็บ

5.2  เวิลด์ไวด์เว็บ

 

เป็นโปรแกรมใช้สำหรับแสดงเว็บเพจ และสามารถเชื่อมโยงไปยังส่วนอื่นในเว็บเพจเดียวกันหรือเว็บเพจอื่นผ่านการเชื่อมโยงหลายมิติ หรือไฮเปอร์ลิงค์ (hyperlink) หรือเรียกสั้นๆว่า ลิงค์ (link) เว็บเบราว์เซอร์ช่วยเพิ่มความน่าสนใจในการใช้งานอินเทอร์เน้ต นอกเหนือไปจากการสื่อสารหรือการแลกเปลี่ยนไฟล์ระหว่างเครือข่าย ตัวอย่างเว็บเบราว์เซอร์ เช่น Mozilla Firefox, Microsoft Internet Explorer, Apple Safari, Google Chrome และ Opera

ในการอ้างอิงตำแหน่งของแหล่งข้อมูลบนอินเทอร์เน็ตที่ผู้ใช้ร้องขอ เช่น เว็บเพจ สามารถทำได้โดยการระบุยูอาร์แอล (Unifrom Resource Locator: URL)

โพรโทคอล ใช้สำหรับระบุมาตรฐานที่ใช้ในการแลกเปลี่ยนข้อมูลผ่านเว็บ เช่น เอชทีทีพี และเอฟทีพี (File Transfer Protocol: FTP)  ในกรณีของเอชทีทีพี ส่วนใหญ่แล้วผู้ใช้สามารถจะละส่วนของโพรโทคอลนี้ได้ เนื่องจากถ้าไม่ระบุโพรโทคอล เว็บเบราว์เซอร์จะเข้าใจว่าผู้ใช้มีความประสงค์จะใช้โพรโทคอล เอชทีทีพีเพื่อเข้าถึงเว็บเพจ

โปรแกรมค้นหา หรือเสิร์ซเอนจิน (SEARCH ENGINES)ใช้สำหรับค้นหาเว็บเพจที่ต้องการโดยระบุคำหลักหรือคำสำคัญ (keyword) เพื่อนำไปค้นในฐานข้อมูลขนาดใหญ่ ซึ่งรวบรวมเว็บเพจต่างๆ ผลลัพธ์ที่ได้จะเป็นรายการเว็บเพจที่ประกอบด้วยคำหลักที่ระบุ ช่วยให้เราสามารถเข้าถึงข้อมูลทุกประเภท หลากหลายรูปแบบ เพื่อการศึกษาหรือเพื่อความบันเทิงได้อย่างรวดเร็ว    โปรแกรมค้นหาสามารถให้บริการค้นหาข้อมูลตามประเภท หรือแหล่งข้อมูล เช่น ค้นหาเฉพาะข้อมูลที่เป็นภาพ วีดิทัศน์ เสียง ข่าว แผนที่ หรือบล็อก โปรแกรมค้นหาแต่ละโปรแกมอาจใช้วิธีที่ต่างกันในการจัดอันดับความเกี่ยวข้องของเว็บเพจกับคำหลักที่ระบุ โดยเว็บเพจที่มีความเกี่ยวข้องกับคำหลักมากที่สุดจะอยุ่ในอันดับบนสุด ตัวอย่างโปรแกรมค้นหา เช่น Ask, AltaVista, Bing, Excite, Google และ Yahoo

เมตาเสริร์ชเอนจิน (metasearch enging)       เป็นโปรแกรมค้นหาที่ไม่มีการรวบรวมเว็บเพจไว้เป็นฐานข้อมูลของตนเอง แต่ค้นหาจากฐานข้อมูลของโพปรแกรมค้นหาอื่นๆ ซึ่งช่วยให้ผู้ใช้สามารถเลือกผลลัพธ์ที่ตรงกับความต้องการที่สุด จากโปรแกรมค้นหาหลายโปรแกรมได้ในเวลาอันรวดเร็ว โดยอาจแสดงผลลัพธ์รวมจากทุกโปรแกรมค้นหาไว้ในชุดเดียวกัน และตัดรายการผลลัพธ์ที่ซ้ำซ้อนกันออกไป หรืออาจแสดงผลลัพธ์ของแต่ละโปรแกรมค้นหาแยกเป็นคนละชุด ซึ่งอาจทีรายการที่ซ้ำซ้อนกันปรากฏฝอยู่ตัวอย่างของเมตาเสิร์ชเอนจิน เช่น Dogpile, Mamma และ Vivsimo

เว็บ 1.0 (Web 1.0) เป็นเว็บในยุคแรกเริ่มที่มีลักษณะให้ข้อมูลแบบทางเดียว ผู้ใช้ทั่วไปเข้าถึงเว็บเพจในฐานะผู้บริโภคข้อมูลและสารสนเทศตามที่ผู้สร้างได้ให้รายละเอียดไว้เพียงอย่างเดียวไม่ค่อยมีการปรับปรุงข้อมูลให้ทันสมัย และมีรูปแบบการใช้งานไม่หลากหลาย ทั้งนี้อาจเนื่องมาจากข้อจำกัดหลายประกาย เช่น ความรู้ความสามารถในการใช้คอมพิวเตอร์ เทคโนโลยีระบบเครือข่ายช่องทางในการเชื่อมต่อเข้าสู่อินเทอร์เน็ต เทคโนโลยีในการพัฒนาเว็บ อีกทั้งจำนวนผู้สร้างเว็บมีอยู่เป็นจำนวนน้อยกว่าเมื่อเทียบกับจำนวนผู้เข้าถึงเว็บเพื่อบริโภคข้อมูลและสารสนเทศ   ต่อมามีการพัฒนาเทคโนโลยีที่สนับสนุนการใช้การบนอินเทอร์เน็ต ทำให้ผู้ใช้ทั่วไปสามารถเป็นส่วนหนึ่งของผู้ให้ข้อมูลในรูปแบบต่างๆ ที่ปรากฏบนเว็บเพจ เช่น การโพสต์ข้อความ รูปภาพ วีดิทัศน์ ความคิดเห็น การจัดอันดับ ด้วยความแตกต่างที่พบได้เหล่านี้ จึงได้มีการเรียกเว็บประเภทนี้ว่าเว็บ 2.0 (Web 2.0)

ลักษณะเด่นที่พบในเว็บ 2.0 ที่แตกต่างจากในเว็บ 1.0 เช่น มีการสร้างเครือข่ายทางสังคมผ่านเว็บไซต์ มีการพัฒนาความร่วมมือแบบออนไลน์ มีการแบ่งปันข้อมูลแลกเปลี่ยนความคิดเห็นระหว่างผู้ใช้ผ่านอินเทอร์เน็ต รวมถึงมีการใช้งานอินเทอร์เน็ตผ่านโทรศัพท์เคลื่อนที่ หรืออุปกรณ์คอมพิวเตอร์แบบพกพาเพิ่มมากขึ้น

ที่มา : http://www.thaigoodview.com/node/80624

บทที่ 5 อินเทอร์เน็ต

5.1อินเทอร์เน็ต

เป็นเครือข่ายขนาดใหญ่ที่เชื่อมต่อเครือข่ายคอมพิวเตอร์ขององค์กรธุรกิจ  หน่วยงานของรัฐบาลสถานศึกษา ตลอดจนเชื่อมโยงคอมพิวเตอร์ส่วนบุคคลเข้าไว้ด้วยกัน ทำให้ข้อมูล สารสนเทศ สินค้าและบริการที่นำเสนอผ่านเครือข่ายคอมพิวเตอร์เหล่านี้สามารถ เข้าถึงได้จากคอมพิวเตอร์หรืออุปกรณ์อื่นๆ จากที่ต่างๆ ไม่ว่าจะเป็นบ้าน สำนักงาน โรงเรียน ชายทะเล หรืออาหารทั่วโลก   ในปัจจุบันมีคนจากทั่วโลกนับพันล้านคนที่เข้าถึงบริการบนอินเทอร์เน็ต เช่น เวิลด์ไวด์เว็บ อีเมล (e-mail) พาณิชอิเล็กทรอนิกส์ (e-commerce) ห้องคุย (chat room) การส่งสารทันที (instent messaging) และวอยซ์โอเวอร์ไอพีหรือวีโอไอพี (Voice over IP: VoIP)

ประกอบด้วยเครือข่ายระดับท้องถิ่น ระดับภูมิภาค ระดับชาติ และระดับนานาชาติที่เชื่อมโยงเข้าด้วยกัน

5.2 อินเทอร์เน็ตเชื่อมโยงข้อมูลจากเครือข่ายคอมพิวเตอร์หนึ่งไปยังเครือข่ายอื่นด้วยความเร็วและคุณภาพที่แตกต่างกัน ขึ้นอยู่กับรูปแบบการสื่อสาร และสื่อที่ใช้ในการเชื่อมโยงเครือข่าย เช่น สายโทรศัพท์ สายไฟเบอร์ออพติกและคลื่นวิทยุ    ถึงแม้ในปัจจุบันพื้นที่ให้บริการอินเทอร์เน้ตทั่วโลกจะเพิ่มขึ้นอย่างต่อเนื่อง อินเทอร์เน็ตก็ยังคงเป็นเครือข่ายสาธารณะที่ไม่มีผู้ใดเป็นเจ้าของ หน่วยงานทั้งของรัฐและเอกชนมีหน้าที่ในการดูแล และจัดการจราจรข้อมูลบนอินเทอร์เน็ตในเฉพาะเครือข่ายที่รับผิดชอบ

ผู้ใช้ที่เป็นคนทำงาน นักเรียน หรือนักศึกษา มักจะเข้าถึงอินเทอร์เน็ตผ่านเครือข่ายของหน่วยงาน โรงเรียนหรือมหาวิยาลัย ซึ่งเชื่อมต่อเข้ากับอินเทอร์เน็ตความเร็วสูง ขณะที่ผู้ใช้ทั่วไปอาจใช้วิธีการเชื่อมต่ออินเทอร์เน็ตโดยใช้โมเด็มผ่านสายโทรศัพท์ ซึ่งเป็นอินเทอร์เน็ตความเร็วต่ำ หรืออาจเชื่อมต่อผ่านบรอดแบนด์อินเทอร์เน็ต (broadband Internet connection) เช่น เอดีเอสแอล (Asymmetric Digital Subscriber Line : ADSL) เคเบิลโมเด็มที่เชื่อมต่อกับเครือข่ายเคเบิลทีวี หรือเชื่อมต่ออินเทอร์เน็ตแบบไร้สาย เช่น ไวไฟ หรืออินเทอร์เน็ตผ่านดาวเทียม  สถานที่สาธารณะหลายแห่ง เช่น โรงเรียน มหาวิทยาลัย สนามบิน ห้างสรรพสินค้า โรงแรม มักจะมีบริการอินเทอร์เน็ตทั้งแบบมีสายและไร้สาย เพื่อให้ผู้ใช้อุปกรณ์แบบพกพาสามารถเข้าถึงอินเทอร์เน็ตได้โดยสะดวก

ผู้ให้บริการอินเทอร์เน็ต หรือไอเอสพี (Internet Service Provider : ISP) ให้บริการการเชื่อมต่อเข้าสู่อินเทอร์เน็ตสำหรับผู้ใช้ โดยอาจคิดค่าบริการเป็นรายเดือน บริษัทที่ให้บริการอินเทอร์เน้ตในประเทศไทย เช่น ทีโอที ซีเอส ล็อกซ์อินโฟ กสท โทรคมนาคม ทีทีแอนด์ที และสามารถเทลคอม นอกจากนี้ไอเอสพียังให้บริการเสริมอื่นๆ เช่น อีเมล เว็บเพจ พื้นที่จัดเก็บข้อมูลหรือโทรศัพท์ระหว่างประเทศ ตัวอย่างการเข้าสู่บริการอินเทอร์เน็ตโดยผ่านผู้ให้บริการ

คอมพิวเตอร์ที่ติดต่อสื่อสารระหว่างกันบนอินเทอร์เน็ต มีคุณลักษณที่แตกต่างกัน  เช่น ประเภทของคอมพิวเตอร์ ซีพียู หรือระบบปฏิบัติการนอกจากนี้รูปแบบการเชื่อมโยงเครือข่ายคอมพิวเตอร์ที่เข้าสู่อินเทอร์เน็ตไม่ว่าจะเป็นแลนหรือแวนก็อาจมีรูปแบบที่แตกต่างกัน การที่อินเตอร์เน็ตสามารถเชื่อมโยงคอมพิวเตอร์ที่มีความแตกต่างกันให้สามารถทำงานร่วมกันได้ เนื่องจากใช้โพรโทคอลเดีวยกันในการสื่สารที่เรียกว่า ทีซีพี/ไอพี(Transmission Control Protocol: TCP/IP)

เลขที่อยู่ไอพี  เครื่องคอมพิวเตอร์ที่เชื่อมต่อกันบนอินเตอร์เน็ต จะมีหมายเลขอ้างอิงในการติดต่อสื่อสารเรียกว่า เลขที่อยู่ไอพีหรือไอพีแอดเดรส(IP address)ซึ่งจะต้องไม่ซ้ำกันเลย โดยไอพีแอดเดรสประกอบด้วยเลข4ชุด ซึ่งแยกกันด้วยเครื่องหมายจุด เช่น 202.29.77.155 ซึ่งเป็นไอพีแอดเดรสของเว็บไซต์สถาบันส่งเสริมดารสอนวืทยาศาสตร์และเทคโนโลยี

ระบบชื่อโดเมน   เนื่องจากเลขที่อยู่ไอพีอยู่ในรูปของชุดตัวเลขซึ่งยากต่อการจดจำและอ้างอิงระหว่างการใช้งานดีงนั้นจึงกำหนดให้มีระบบชื่อโดเมน(Domain Name System: DNS)ซึ่งแปลงเลขที่อยู่ไอพีให้เป็นชื่อโดเมนที่อยู่ในรูปของชื่อย่ออังกฤษหลายส่วนคั่นด้วยเครื่องหมายจุด

ที่มา : http://www.thaigoodview.com/node/80604