ทำอย่างไรให้มีความเข้าใจในการเขียนโปรแกรม


Capture.PNG

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


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





ความหมายของผังงาน

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

การโปรแกรมแบบมีโครงสร้าง หรือ การโปรแกรมโครงสร้าง คือ การโปรแกรมที่ประกอบด้วยกระบวนการ 3 รูปแบบ ได้แก่ การทำงานแบบตามลำดับ(Sequence) การเลือกกระทำตามเงื่อนไข(Decision) และ การทำซ้ำ(Loop) มีตำราหลายเล่มแยกการเลือกตามเงื่อนไขเป็น if กับ select case หรือ การทำซ้ำแยกได้เป็น do while กับ do until

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

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


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

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

ประโยชน์ของการใช้ผังงาน
1. ทำให้เข้าใจ และแยกแยะปัญหาได้ง่าย (Problem Define)
2. แสดงลำดับการทำงาน (Step Flowing)
3. หาข้อผิดพลาดได้ง่าย (Easy to Debug)
4. ทำความเข้าใจโปรแกรมได้ง่าย (Easy to Read)
5. ไม่ขึ้นกับภาษาใดภาษาหนึ่ง (Flexible Language)

มีความเข้าใจในขั้นตอน ก่อน ลงมือเขียนผังงาน
หน้าที่ของผังงาน คือ การนำเสนอกระบวนการ (Process) ในขอบเขตจำกัด ให้เข้าใจว่าหากรับข้อมูลเข้า (Input) แล้วจะประมวลผลอย่างไร จึงได้ออกมาเป็นผลลัพธ์ (Output) ในอดีตการเขียนโปรแกรม หรือกระบวนการไม่ซับซ้อน การมองภาพ IPO (input - process - output) สามารถอยู่ในผังงานเดียวกันได้ จึงนิยมใช้เป็นเครื่องมือสร้างทักษะให้กับผู้เริ่มต้นในการมองการประมวลผลของระบบทีละขั้นตอน
ปัจจุบันการประมวลผล จะรับข้อมูล แล้วประมวลผล ส่งผลไปเป็นข้อมูลของอีกกระบวนการหนึ่ง อาจทำอย่างนี้อีกหลายรอบ ด้วยกระบวนการ และข้อมูลที่ต่างกัน การใช้ผังงานจึงได้รับความนิยมลดลงในการใช้แสดงแบบซอฟท์แวร์ขนาดใหญ่ เนื่องจากการประมวลผลมีความซับซ้อนมากขึ้น ปัจจุบันมีการใช้ Data Flow Diagram หรือ UML มาแสดงแบบซอฟท์แวร์ที่มองได้กว้างและครอบคลุมกว่า
+ Process หมายถึง ประมวลผล ที่ให้ความสำคัญกับการนำเข้า และส่งออก
+ Procedure หมายถึง กระบวนการ ที่ให้ความสำคัญกับขั้นตอนของการทำงานทีละขั้น

351beea12c33722ae8f7de3d95fb4a58.jpg





2. จำไวยกรณ์ของภาษาที่เราต้องการเขียน


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



3. ดูตัวอย่างโปรแกรมที่พอเป็นไปได้(ลองไล่โค้ด)


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

4. เปิดใจรับสิ่งใหม่ที่จะเกิดขึ้น


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


5. สามารถพัฒนาตัวเองได้ทุกช่วงเวลา


ไม่ว่าคุณจะทำอะไรอยู่ขณะนั้นก็ตามควรจะพัฒนาตัวเองอยู่เสมอ(เนื่องจากเทคโนโลยีไปไวมาก) ขาดข่าวไปไม่กี่วันทำให้คุณล้าสมัยได้เลย เพราะงั้นเราควรที่จะพัฒนาตัวเองอยู่เสมอ ไม่ว่าคุณจะเข้าห้องน้ำก็ตาม

6. ฝึก ฝึก และก็ ฝึก!


หลังจากทำข้อข้างบนได้หมดแล้ว คราวนี้ก็ต้องอยู่ที่ตัวเราแล้วแหละว่าเราต้องการเทพขนาดไหน ก็ฝึกกันไป ฮาๆ ลองหาแบบฝึกหัดมาทำดู หลายๆข้อแล้วจะรู้ว่าเราพลาดอะไรบ้าง

การเริ่มเขียนโปรแกรมเริ่มต้นก็ควรจะทำตามนี้ก่อนแล้วค่อยเจาะลึกลงไปเรื่อยๆ ถ้าเราคิดว่า "เราต้องการพัฒนาตัวเองทุกวัน ในทุกวันเราต้องเก่งขึ้น" ก็ "ไม่มีอะไรที่เป็นไปไม่ได้" อย่างแน่นอน :) และอีกอย่าง…...#อย่าลืมนะเวลาสอบอย่าสับเพร่า!


รายชื่อผู้จัดทำ
นายภูวเณศวร์      จิระชัยประสิทธิ   รหัสนักศึกษา   59050278
นางสาวศรสวรรค์  ลิ้มทองมณี         รหัสนักศึกษา    59050303
นางสาววริศรา      แบบวา     รหัสนักศึกษา   59050298
ทำอย่างไรให้มีความเข้าใจในการเขียนโปรแกรม ทำอย่างไรให้มีความเข้าใจในการเขียนโปรแกรม Reviewed by PorTimmy on 23:40:00 Rating: 5

ไม่มีความคิดเห็น

Category3