( บทความนี้เขียนเมื่อหลายเดือนที่แล้ว แต่เพิ่งจะเอามา Publish เนื้อหาอาจจะย้อนหลังไปบ้างนะครับ)
 
คำเตือน : บทความนี้ค่อนข้าง Hardcore กรุณาอย่าต่อยคนเขียน T T
 
สวัสดีครับ . . หลังจากที่ไม่ได้เขียน Blog มาซะนาน
ช่วงนี้ก็เป็นช่วงปิดเทอมของเหล่านักเรียน นักศึกษา รวมถึงตัวผมด้วย
ปิดเทอมนี้เพื่อนๆผมหลายคนได้แยกย้ายกันออกไปฝึกงาน
แต่ผมน่ะ ไม่ได้ฝึกงานกับเค้าหรอก ทำไมน่ะหรอ . . เพราะปีที่แล้วฝึกไปแล้วไง ปีนี้เลยไม่อยากฝึก !!
จริงๆแล้วมันคือข้ออ้างที่ทำให้ดูสวยหรูครับ ฮ่าๆ เหตุผลจริงๆคือ ไม่มีใครเค้าเอา (ไม่ได้ส่ง Resume - -")
นั่นก็เป็นเหตุทำให้ผมได้ใช้เวลาว่างๆในช่วงปิดเทอม ลองทำอะไรหลายๆอย่าง จนมันโคตรจะไม่ว่าง
รวมถึงการที่ได้ใช้เวลานั่งคิดอะไรหลายๆอย่าง จนทำให้เกิด Idea สำหรับ Entry นี้ขึ้นมาครับ
 
สำหรับ Entry นี้จะค่อนข้างมีสาระในเชิงวิชาการหน่อยนะครับ
อ้อ . . ลืมบอกไปครับ ว่าผมเรียนอยู่คณะ IT วันๆก็จะเจอแต่การเขียนโปรแกรมอย่างหลีกเลี่ยงไม่ได้
วันนี้ผมจะนำเสนอเทคนิคการเขียนโปรแกรมในแบบฉบับของผมครับ
 
เพื่อนๆ พี่ๆ น้องๆ หลายๆท่านเคยสงสัยมั้ยครับ ว่าทำไมคนที่เขียนโปรแกรมเก่ง มันก็เก่งชิบหายเลย
หรืออาจจะไม่ถึงขั้นเก่ง แต่ก็สามารถเขียนโปรแกรมแก้ไขปัญหาแบบ Basic ได้เกือบทุกรูปแบบ
คนไหนที่เขียนโปรแกรมไม่ได้ พยายามเขียนเท่าไหร่ เขียนเป็นวัน มันก็ยังเขียนไม่ได้อยู่อย่างนั้น
ผมได้ใช้เวลาส่วนหนึ่งของปิดเทอม นั่งวิเคราะห์ครับ ว่าปัญหาเหล่านี้เกิดจากอะไร ?
 
จากประสบการณ์การเขียนโปรแกรมของผม ตั้งแต่ ม.4 โง่ๆ กากๆ จนเริ่มเขียนเป็น
จนถึงทุกวันนี้ ที่ได้มีโอกาสถ่ายทอดความรู้ ประสบการณ์ ให้คนอื่นอยู่หลายครั้ง
มันทำให้ได้ข้อสรุปดังนี้ครับ
 
1. เข้าใจการทำงานของ Syntax ที่ใช้ . . อย่างละเอียด !!
เรื่องนี้เป็นเรื่องสำคัญที่ใครหลายๆคนมองข้ามครับ
เมื่อคุณไม่เข้าในการทำงานของ Syntax แต่คุณอยากจะเขียนโปรแกรมได้ อยากจะเก่ง . . ตลกมั้ยครับ ?
" . . เหมือนคุณอยากยิงปืนให้โดนหัวผู้ร้าย แต่คุณยังไม่รู้วิธีใส่กระสุนปืน . . "
บางคน ยังไม่รู้ว่า คำสั่ง "for" ทำงานยังไง . . ใส่ไปเพียงแค่คิดว่า "for คือ loop โปรแกรมนี้ต้องมี loop"
สุดท้ายก็ได้แต่พยายามใส่ค่าไปมั่วๆ เปลี่ยนตัวเลขมั่ง เปลี่ยนเครื่องหมายดูมั่ง เปลี่ยนตัวแปรดูมั่ง
รอเวลาที่มันจะ "ฟลุ๊ค" ถูกขึ้นมา แล้วก็หลอกตัวเองว่า "ฉันเขียนได้แล้ว" . . น่าขำมั้ยครับ
หรือถ้ามั่วไม่ถูกซักที ก็เอา code ไปถามคนที่เก่งกว่าว่า ทำไมมันถึงรันไม่ได้ ทำไมมันถึงผิด . .
" . . เหมือนคุณถามว่า ทำไมผู้ร้ายไม่ตาย . . ทั้งๆที่คุณใส่กระสุนปืนกลับด้าน . . "
ยอมเสียเวลาทำความเข้าใจ Syntax อย่างละเอียดซักนิด (ทำความเข้าใจในที่นี้หมายถึง
ลองฝึกใช้จนแน่ใจแล้วว่าเข้าใจจริงๆ) แล้วคุณจะเขียนโปรแกรมได้ดีขึ้นอย่างแน่นอนครับ
 
2. Code ที่เขียนเอง . . ถ้าตัวเองไม่เข้าใจ . . แล้วจะหวังให้ใครมาเข้าใจ . . !!
หลายครั้งครับ ที่ผมเจอคนที่เขียนโปรแกรม โดยไม่เข้าใจความหมายของแต่ละบรรทัด ว่าเขียนขึ้นมาเพื่ออะไร
ผมอยากจะบอกว่ามันเป็นสิ่งที่สำคัญมากๆครับ สำหรับการทำความเข้าใจ Code ของตัวเอง
คุณอยากทำอาหารให้อร่อย แต่ไม่รู้ว่าใส่น้ำปลาไปเพื่ออะไร ใส่น้ำตาลไปเพื่ออะไร
ก็คงได้แต่รอว่าเมื่อไหร่มันจะ "ฟลุ๊ค" อร่อยขึ้นมาแหละครับ
ทุกบรรทัดที่ใส่ลงไปมันมีความหมาย ไม่ใช่ว่าใส่มั่วๆ เดาๆ แล้วมันจะผ่าน
การเขียนโปรแกรม ทุกอย่างมีเหตุมีผล มีหลักการ มีกฏตายตัวชัดเจน ใส่ไปมั่วๆมันไม่ผ่านหรอกครับ
จะต้องคิดอย่างมีหลักการ ว่าจะใส่ code อะไรลงไป ใส่บรรทัดไหนก่อน ใส่บรรทัดไหนทีหลัง
ขอเน้นอีกครั้งครับว่า "ต้องเข้าใจว่าแต่ละคำสั่งที่ใส่เข้าไป เราใส่ไปเพื่ออะไร ไม่ใส่ได้มั้ย ?"
 
เมื่อคุณสามารถผ่านข้อ 1 และ ข้อ 2 มาได้แล้ว แสดงว่าคุณเริ่มที่จะเขียนโปรแกรม "เป็น" ขึ้นมาบ้างแล้ว
ถ้าหากผมมีเวลา จะเขียนเทคนิคการเขียนโปรแกรมให้ "เก่ง" ในแบบฉบับของผมนะครับ
 
ป.ล. ถ้าบทความนี้ Hardcore เกินไป ขออภัยครับ
ป.ล.2 บทความนี้เกิดจากประสบการณ์ส่วนตัวล้วนๆครับ ใครมีความเห็นขัดแย้งกรุณาชี้แนะ

edit @ 20 Jul 2011 00:31:45 by BlacKCaT

Comment

Comment:

Tweet

สุดยอดมากครับพี่เต้ :] ..

#4 By Thanawit (183.89.65.250) on 2011-07-30 21:34

เชี่ยเต้ เขียนได้ตรงประเด็นดี ไม่แรงไปหรอก
ถ้าไม่บอกไปตรงๆ ก็คงจะไม่เข้าใจกันอีกอะ

ปล.กุรอพาทต่อไปอยู่นะสัด

#3 By YN.N (125.24.196.117) on 2011-07-20 00:52

เชด มีสาระรองลงมาจากเอนทรี่ กรามค้าง เลยทีเดียว

Hot!

#2 By Petzh on 2011-07-20 00:46

โหดมากครับพี่เต้ ;)open-mounthed smile open-mounthed smile

#1 By ra_in on 2011-07-20 00:40