วันอังคารที่ 28 มกราคม พ.ศ. 2557

ภัยอันตรายทางอินเตอร์เน็ต

ทันภัยการใช้ Internet

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

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

จะเห็นได้ว่าประเด็นเรื่องการป้องกันและแก้ไขปัญหาการหลอกลวงบนอินเตอร์เน็ตและอาชญากรรมทางอิเล็กทรอนิกส์เป็นปัญหาที่ผู้ใช้อินเตอร์เน็ตพบอยู่บ่อยๆ มิจฉาชีพก็ได้หาวิธีที่แยบยลมากขึ้น เพื่อใช้เป็นกลลวงและหลอกล่อเหยื่อให้หลงเชื่อ เช่น การส่งอี-เมลที่เป็นอี-เมลปลอม (สแปม) หรือการหลอกให้กรอกข้อมูลส่วนตัวลงแบบฟอร์ม

สิ่งเหล่านี้ก่อให้เกิดผลประโยชน์ทางการเงินแก่เหล่ามิจฉาชีพ

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

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

โดยเฉพาะในปัจจุบันโลกของสังคมออนไลน์ (Social Network) ได้ถือว่าเป็นฐานข้อมูลอย่างดีให้กับองค์กรธุรกิจมากมายเพื่อหาผลประโยชน์ในการใช้เป็นฐานข้อมูลลูกค้า

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

อันดับที่ 7

หลายๆ คนในยุคไซเบอร์นี้นิยมที่จะส่งบัตรอวยพรไปให้เพื่อนๆ ผ่านทางอี-เมล หรือทางบัตรอวยพรอิเล็กทรอนิกส์ (E-Card)

ดังนั้น เหล่าอาชญากรไซเบอร์จึงอาศัยช่องทางนี้ในการหลอกลวงและเข้าถึงข้อมูลของเหยื่อ อาชญากรไซเบอร์จะใช้วิธีการส่งบัตรอวยพรเทศกาลปลอม (Spam E-Card) ที่แฝงด้วยลิงก์ที่เป็นสแปม (Spam) มาให้เหยื่อทางอี-เมล อาจจะถูกส่งมาจากอี-เมลของอาชญากรไซเบอร์เอง หรือจากเพื่อนของเหยื่อที่อี-เมลนั้นได้ถูกแฮ็ก (Hack) เข้าไปในบัญชีรายชื่อเรียบร้อยแล้ว และทำการส่งต่อไปยังเพื่อนๆ

เมื่อเหยื่อได้รับอี-เมล และเปิดอ่าน จะมีลิงก์ให้เหยื่อทำการกด (Click) เพื่อทำการเปิดบัตรอวยพรอิเล็กทรอนิกส์ดังกล่าว แต่เบื้องหลังแล้วเป็นการทำการสั่งให้สแปมทำงาน

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

อันดับที่ 6
โฆษณาแฝงด้วยไวรัส (Malware) สังเกตได้ว่าเว็บไซต์ทุกวันนี้อยู่ได้ด้วย 2 ประการ คือ

หนึ่ง การที่มีคนเข้าจำนวนมากๆ โดยเฉพาะผู้ที่เข้าเว็บไซต์เป็นประจำ (unique Visitors)

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

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

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

อันดับที่ 5

อันตรายจากการใช้โปรแกรมแช็ต (Instant Messaging) เช่น MSN เหล่าอาชญากรไซเบอร์หาช่องทางในการเจาะและแพร่ไวรัส หรือมัลแวร์ผ่านทางโปรแกรมแช็ตที่ได้รับความนิยมสูงอย่างต่อเนื่อง

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

อันดับที่ 4

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

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

อันดับที่ 3

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

ทำให้เหยื่อหลงเชื่อทำการกรอกข้อมูลส่วนตัว รหัสต่างๆ ซึ่งทำให้อาชญากรไซเบอร์เหล่านั้นสามารถนำข้อมูลของเหยื่อไปใช้ประโยชน์ต่อไป

อันดับที่ 2

Wi-Fi ปลอม มีลักษณะเดียวกันกับเว็บไซต์ปลอม (Phishing) แม้ว่าหลักการยังคงเหมือนเดิมแต่รูปแบบของการใช้เว็บปลอมก็ได้มีการพัฒนาให้มีความแยบยลมากขึ้น เช่น การที่เหยื่อเข้าไปนั่งในร้านกาแฟร้านหนึ่ง และค้นหาสัญญาณอินเตอร์เน็ตไร้สาย (โดยเฉพาะที่ฟรี) ซึ่งอาชญากรไซเบอร์รู้ถึงพฤติกรรมนี้ดี ว่าเมื่อคนเราเจอสัญญาณฟรีในที่สาธารณะ เรามักจะลองเข้าเพื่อใช้งาน ซึ่งอาชญากรไซเบอร์ก็ได้เตรียมเว็บไซต์ปลอมสำหรับการให้บริการอินเตอร์เน็ตฟรีขึ้น โดยเมื่อเหยื่อได้ทำการเชื่อต่อสัญญาณ จะมีหน้าต่างปรากฏในลักษณะที่แจ้งถึงเงื่อนไขการใช้บริการฟรีอินเตอร์เน็ต เพียงแต่ให้เหยื่อกรอกข้อมูลก็สามารถเข้าใช้งานอินเตอร์เน็ตฟรี อาจจะเป็นเพียงการกรอกข้อมูล อี-เมล และตั้งพลาสเวิร์ดสำหรับการใช้งาน แต่โดยปกติคนเราก็มักจะใช้พลาสเวิร์ดซ้ำๆ กันอยู่แล้ว ทำให้เหล่าอาชญากรไซเบอร์ทำการสุ่มและเดาได้ว่าจะใช้พลาสเวิร์ดที่ได้มาทำอะไรต่อไป และเมื่อเหยื่อกรอกข้อมูลกับเป็นการส่งข้อมูลนั้นไปยังอาชญากรไซเบอร์ แถมยังไม่สามารถเข้าใช้งานได้อีก

อันดับที่ 1

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

วันอังคารที่ 10 กันยายน พ.ศ. 2556

โปรแกรมคอมพิวเตอร์

ความหมายของโปรแกรมคอมพิวเตอร์

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


ขั้นตอนในการพัฒนาโปรแกรมคอมพิวเตอร์

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

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




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

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

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

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

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

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

ภาษาซีพลัสพลัส


ภาษาซีพลัสพลัส (อังกฤษC++) เป็นภาษาโปรแกรมคอมพิวเตอร์อเนกประสงค์ มีโครงสร้างภาษาที่มีการจัดชนิดข้อมูลแบบสแตติก (statically typed) และสนับสนุนรูปแบบการเขียนโปรแกรมที่หลากหลาย (multi-paradigm language) ได้แก่ การโปรแกรมเชิงกระบวนคำสั่งการนิยามข้อมูลการโปรแกรมเชิงวัตถุ, และการโปรแกรมแบบเจเนริก (generic programming) ภาษาซีพลัสพลัสเป็นภาษาโปรแกรมเชิงพาณิชย์ที่นิยมมากภาษาหนึ่งนับตั้งแต่ช่วงทศวรรษ 1990
เบียเนอ สเดราสดร็อบ (Bjarne Stroustrup) จากเบลล์แล็บส์ (Bell Labs) เป็นผู้พัฒนาภาษาซีพลัสพลัส (เดิมใช้ชื่อ "C with classes") ในปี ค.ศ. 1983 เพื่อพัฒนาภาษาซีดั้งเดิม สิ่งที่พัฒนาขึ้นเพิ่มเติมนั้นเริ่มจากการเพิ่มเติมการสร้างคลาสจากนั้นก็เพิ่มคุณสมบัติต่างๆ ตามมา ได้แก่ เวอร์ชวลฟังก์ชัน การโอเวอร์โหลดโอเปอเรเตอร์ การสืบทอดหลายสาย เทมเพลต และการจัดการเอกเซพชัน มาตรฐานของภาษาซีพลัสพลัสได้รับการรับรองในปี ค.ศ. 1998 เป็นมาตรฐาน ISO/IEC 14882:1998 เวอร์ชันล่าสุดคือเวอร์ชันในปี ค.ศ. 2003 ซึ่งเป็นมาตรฐาน ISO/IEC 14882:2003 ในปัจจุบันมาตรฐานของภาษาในเวอร์ชันใหม่ (รู้จักกันในชื่อ C++0x) กำลังอยู่ในขั้นพัฒนา

รูปแบบของการออกแบบภาษาซีพลัสพลัส[แก้]

  • ภาษาซีพลัสพลัสได้ถูกออกแบบมาเพื่อเป็นภาษาสำหรับการเขียนโปรแกรมทั่วไป สามารถรองรับการเขียนโปรแกรมในระดับภาษาเครื่องได้ เช่นเดียวกับภาษาซี
  • ในทางทฤษฎี ภาษาซีพลัสพลัสควรจะมีความเร็วเทียบเท่าภาษาซี แต่ในการเขียนโปรแกรมจริงนั้น ภาษาซีพลัสพลัสเป็นภาษาที่มีการเปิดกว้างให้โปรแกรมเมอร์เลือกรูปแบบการเขียนโปรแกรม ซึ่งทำให้มีแนวโน้มที่โปรแกรมเมอร์อาจใช้รูปแบบที่ไม่เหมาะสม ทำให้โปรแกรมที่เขียนมีประสิทธิภาพต่ำกว่าที่ควรจะเป็น และภาษาซีพลัสพลัสนั้นเป็นภาษาที่มีความซับซ้อนมากกว่าภาษาซี จึงทำให้มีโอกาสเกิดบั๊กขณะคอมไพล์มากกว่า
  • ภาษาซีพลัสพลัสได้รับการออกแบบเพื่อเข้ากันได้กับภาษาซีในเกือบทุกกรณี (ดูเพิ่มเติมที่ Compatibility of C and C++)
  • มาตรฐานของภาษาซีพลัสพลัส ถูกออกแบบมาเพื่อไม่ให้มีการเจาะจงแพลตฟอร์มคอมพิวเตอร์
  • ภาษาซีพลัสพลัสถูกออกแบบมาให้รองรับรูปแบบการเขัยนโปรแกรมที่หลากหลาย (multi-paradigm)




วันอังคารที่ 23 กรกฎาคม พ.ศ. 2556

การเขียนรหัสจำลอง


การเขียนรหัสจำลอง






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


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

ตัวอย่างของการสร้าง Pseudo Code


ตัวอย่างที่ 1 จงเขียน Pseudocode จากโปรแกรมหาผลรวมของตัวเลข 2 ค่า แล้วแสดงผลรวมออกมาทางหน้าจอ
1. read x , y
2. calculate sum = x + y
3. print sum

-----------------------------------------------------------------------------------------------------------------------------
การเขียนผังงาน ( Flowchart )


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

วิธีการเขียนผังงานที่ดี• ใช้สัญลักษณ์ตามที่กำหนดไว้
• ใช้ลูกศรแสดงทิศทางการไหลของข้อมูลจากบนลงล่าง หรือจากซ้ายไปขวา
• คำอธิบายในภาพควรสั้นกระทัดรัด และเข้าใจง่าย
• ทุกแผนภาพต้องมีลูกศรแสดงทิศทางเข้า - ออก
• ไม่ควรโยงเส้นเชื่อมผังงานที่อยู่ไกลมาก ๆ ควรใช้สัญลักษณ์จุดเชื่อมต่อแทน
• ผังงานควรมีการทดสอบความถูกต้องของการทำงานก่อนนำไปเขียนโปรแกรม
ผังงานโปรแกรม ( Program Flowchart )การเขียนผังโปรแกรมจะประกอบไปด้วยการใช้สัญลักษณ์มาตรฐานต่าง ๆ ที่เรียกว่า สัญลักษณ์ ANSI ( American National Standards Institute ) ในการสร้างผังงาน ดังตัวอย่างที่แสดงในรูปต่อไปนี้
จุดเริ่มต้น / สิ้นสุดของโปรแกรม
ลูกศรแสดงทิศทางการทำงานของโปรแกรมและการไหลของข้อมูล
ใช้แสดงคำสั่งในการประมวลผล หรือการกำหนดค่าข้อมูลให้กับตัวแปร
แสดงการอ่านข้อมูลจากหน่วยเก็บข้อมูลสำรองเข้าสู่หน่วยความจำหลักภายใน เครื่องหรือการแสดงผลลัพธ์จากการประมวลผลออกมา
การตรวจสอบเงื่อนไขเพื่อตัดสินใจ โดยจะมีเส้นออกจารรูปเพื่อแสดงทิศทางการทำงานต่อไป เงื่อนไขเป็นจริงหรือเป็นเท็จ
แสดงผลหรือรายงานที่ถูกสร้างออกมา
แสดงจุดเชื่อมต่อของผังงานภายใน หรือเป็นที่บรรจบของเส้นหลายเส้นที่มาจากหลายทิศทางเพื่อจะไปสู่ การทำงานอย่างใดอย่างหนึ่งที่เหมือนกัน
การขึ้นหน้าใหม่ ในกรณีที่ผังงานมีความยาวเกินกว่าที่จะแสดงพอในหนึ่งหน้า

กระบวนการเทคโนโลยีสารสนเทศ


กระบวนการเทคโนโลยีสารสนเทศมี 4 ขั้นตอน ดังนี้

1. การวิเคราะห์และกำหนดรายละเอียดของปัญหา (State the problem) 
ขั้นตอนนี้เป็นขั้นตอนแรกสุดก่อนที่จะลงมือแก้ปัญหา แต่ผู้แก้ปัญหามักจะมองข้ามความสำคัญของขั้นตอนนี้
อยู่เสมอ จุดประสงค์ของขั้นตอนนี้ คือการทำความเข้าใจกับปัญหาเพื่อแยกให้ออกว่าข้อมูลที่กำหนดมาในปัญหาหรือเงื่อนไขของปัญหาคืออะไร และสิ่งที่ต้องการคืออะไร อีกทั้งวิธีการที่ใช้ประมวลผล ในการวิเคราะห์ปัญหาใด กล่าวโดยสรุปมีองค์ประกอบในการวิเคราะห์ ดังนี้
          1. การระบุข้อมูลเข้า  ได้แก่ การพิจารณาข้อมูลและเงื่อนไขที่กำหนดมาในปัญหา
          2. การระบุข้อมูลออก  ได้แก่ การพิจารณาเป้าหมายหรือสิ่งที่ต้องหาคำตอบ
          3  การกำหนดวิธีประมวลผล  ได้แก่ การพิจารณาขั้นตอนวิธีหาคำตอบหรือข้อมูลออก

2. การเลือกเครื่องมือและออกแบบขั้นตอนวิธี (Tools and Algorithm development) 
ขั้นตอนนี้เป็นขั้นตอนของการวางแผนในการแก้ปัญหาอย่างละเอียดถี่ถ้วน หลังจากที่เราทำความเข้าใจกับปัญหา พิจารณาข้อมูลและเงื่อนไขที่มีอยู่ และสิ่งที่ต้องการหาในขั้นตอนที่  1  แล้ว เราสามารถคาดคะเนวิธีการที่จะใช้ในการแก้ปัญหา ขั้นตอนนี้จำเป็นต้องอาศัยประสบการณ์ของผู้แก้ปัญหาเป็นหลัก หากผู้แก้ปัญหาเคยพบกับปัญหาทำนองนี้มาแล้วก็สามารถดำเนินการตามแนวทางที่เคยปฏิบัติมา
            ขั้นตอนนี้จะเริ่มจากการเลือกเครื่องมือที่ใช้ในการแก้ปัญหา โดยพิจารณาความเหมาะสมระหว่างเครื่องมือกับเงื่อนไขต่างๆ ของปัญหาซึ่งหมายรวมถึงความสามารถของเครื่องมือในการแก้ปัญหาดังกล่าว และสิ่งที่สำคัญคือความคุ้นเคยในการใช้งานเครื่องมือนั้นๆ ของผู้แก้ปัญหา
            อีกสิ่งหนึ่งที่สำคัญในการแก้ปัญหา คือยุทธวิธีที่ใช้ในการแก้ปัญหาหรือที่เราเรียกว่าขั้นตอนวิธี (algorithm) ในการแก้ปัญหา  หลังจากที่เราได้เครื่องมือช่วยแก้ปัญหาแล้ว ผู้แก้ปัญหาต้องวางแผนว่าจะใช้เครื่องมือดังกล่าวเพื่อให้ได้ผลลัพธ์ที่ถูกต้องและดีที่สุด การออกแบบขั้นตอนวิธีในการแก้ปัญหา ผู้แก้ปัญหาควรใช้แผนภาพหรือเครื่องมือในการแสดงขั้นตอนการทำงานเพื่อให้ง่ายต่อความเข้าใจ เช่น  ผังงาน (flowchart) ที่จำลองขั้นตอนวิธีการแก้ปัญหาในรูปของสัญลักษณ์  รหัสลำลอง (pseudo code) ซึ่งเป็นการจำลองขั้นตอนวิธีการแก้ปัญหาในรูปของคำบรรยาย การใช้เครื่องมือช่วยออกแบบดังกล่าวนอกจากแสดงกระบวนการที่ชัดเจนแล้ว ยังช่วยให้ผู้แก้ปัญหาสามารถหาข้อผิดพลาดของวิธีการที่ใช้ได้ง่ายและแก้ไขได้อย่างรวดเร็ว


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

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

แหล่งที่มา https://sites.google.com/site/koob1meej/khwam-hmay-khxng-kar-kae-payha
แนะนำตัว







ชื่อ ชานนท์  สนั่นไหว ชื่อเล่น บอส
เกิดวันที่ 23 กรกฏาคม 2539 อายุ 17 ปี


Line : chanonnmxq