I'm thinking what am I THINK?
Group Blog
 
All Blogs
 

เทคนิคการเขียนโปรแกรม

1.พัฒนาทักษะโดยการพิมพ์

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

2.วิจัยไปทีละส่วน ๆ

หลาย ๆ ครั้งที่การเขียนโปรแกรม มักจะเขียนจนครบทุกส่วนแล้วทดลองทีเดียว ผลก็คือ ถ้าเกิดข้อผิดพลาดในส่วนที่ 1 อาจจะกระทบส่วนที่ 2 โดยอัตโนมัติ ทำให้เวลาเราแก้ไข อาจจะพลาดจากส่วนที่ 1 ไป การใช้ Comment เพื่อปิดบังบางส่วนเอาไว้ก่อน และทดสอบเฉพาะส่วน ๆ ก่อน จากนั้นค่อยนำไปรวมในส่วนใหญ่ ๆ ก็จะช่วยให้การเขียนโปรแกรมทำได้ง่ายขึ้น และมั่นใจได้มากขึ้น
การหยิบเอาปัญหาบางอย่างในการเขียนโปรแกรม ขึ้นมาเป็นหัวข้องานวิจัยเล็ก ๆ ก็เป็นทางออกที่ดี เช่น ถ้าเราต้องเขียนโปรแกรมเกี่ยวกับการนำเอาค่าทางสถิติมาใช้แล้วล่ะก็ เราก็แบ่งออกเป็นส่วน ๆ โดยหยิบเอาส่วนของสถิติมาวิจัยก่อนก็ได้ โดยทดลองเขียนโค้ดโปรแกรมหาค่า median (ค่ากลาง) , averate (ค่าเฉลี่ย) และค่า standard deviation (การกระจาย) เมื่อเสร็จแล้ว เราก็ได้วิธีการออกมา ให้เก็บวิธีการนี้เอาไว้ เมื่อเราเขียนโปรแกรมใหญ่จนครบทุกขั้นตอนแล้ว พอถึงขั้นตอนที่จะต้องหาค่าสถิติ เราก็เพียงนำโค้ดโปรแกรมที่เราได้วิจัยแล้วมาใช้นั่นเอง

3. การดีบักจะช่วยให้เรามองโปรแกรมได้ทะลุ

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

TRACE(“Value of x=%d , y=%d\n”,man.x,man.y);

คำสั่ง TRACE( ) จะใช้ในการแสดงค่าออกมาในช่อง Debug เมื่อเรากดปุ่ม F5 เพื่อทำการ Debug หรือถ้าจะ Debug ง่าย ๆ ก็ใช้ AfxMessageBox , MessageBox ช่วยก็ได้ หรือใช้ MsgBox ใน VB แต่ถ้าเป็นภาษาอื่น ๆ ก็ให้ใช้วิธีการของภาษา ๆ นั้น ในการดีบัก เช่น ภาษา ASP, PHP, PERL ที่ไม่มีโหมดดีบัก ให้ใช้คำสั่ง print ช่วยในการแสดงข้อความออกทางหน้า Browser เพื่อดูว่าค่าที่ส่งมานั้นถูกต้องหรือไม่ เป็นต้น


4.ไม่มี Error ไหนเกิดขึ้นอย่างไร้เหตุผล

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

error C2065: 'MAdXUNIT' : undeclared identifier
error C2664: 'SetPos' : cannot convert parameter 1 from 'char [3]' to 'int'

จากตัวอย่าง Error อย่างแรกก็คือ undeclared identifier คำว่า undeclared แปลว่า ไม่ได้ประกาศ มาจากคำว่า un + declare และเติม –ed การ declare ก็คือ การประกาศตัวแปรนั่นเอง เช่น เราพูดว่า
“ให้ดีแคลร์ (Declare) ตัวแปร time เอาไว้ด้วย”
คำว่าดีแคลร์ (declare) ก็คือความหมายเดียวกันนี้นี่เอง เมื่อบวกกับ un ก็คือ “ไม่” คำว่า undeclared จึงหมายความไม่ได้ประกาศเอาไว้ คำว่า identifier ก็หมายถึงตัวแปรนั่นเอง เพราะฉะนั้น Error ที่บอกว่า MAdXUNIT : undeclared identifier ก็หมายถึง คำว่า “MAdXUNIT” ไม่ได้ประกาศเอาไว้นั่นเอง
อีก Error หนึ่ง ผิดตรง SetPos เพราะ Error บอกว่า
“ไม่สามารถ (cannot) แปลง (convert) พารามิเตอร์ (parameter) 1 จาก (from) ตัวแปรแบบ char [3] ไปเป็น int ได้”
เราใช้ความเข้าใจในภาษาที่เรามี บวกกับเรื่องของศัพท์ทางการเขียนโปรแกรมอีกนิด ก็จะเข้าใจได้ว่า Error นี้เกิดจากการที่เราใส่ค่าพารามเตอร์ให้กับฟังก์ชั่น SetPos( ) ผิด คือ พารามิเตอร์ตัวแปร จะต้องใส่เป็น int แต่เราคงไปใส่เป็นอย่างอื่น จึงทำให้มันฟ้อง Error แบบนี้ออกมา
เมื่อเราไล่จาก Error ไปเรื่อย ๆ เราก็จะพบเองว่า ข้อผิดพลาดอยู่ที่บรรทัดใด และควรจะแก้ไขอย่างไร ขอให้เข้าใจว่า ทุก ๆ Error ที่เกิดขึ้น ย่อมเกิดมาจากสาเหตุ ไม่เหตุใดก็เหตุหนึ่ง ถ้าเราเขียนไม่ตรง เขียนผิด ย่อมเกิด Error ได้อยู่แล้ว เพียงแต่ว่า เราสนใจการแก้ไข Error หรือจะแก้ไขแบบเดาสุ่มเอาซึ่งอาจจะใช้เวลามากกว่าการแปลข้อความ Error และแก้ไขไปตามเหตุนั้น
ไม่มี Error ไหนเกิดขึ้นอย่างไรเหตุผล ถ้าเกิดโปรแกรมเราเขียนผิด เช่น จะพิมพ์ printf แต่กลับไปพิมพ์เป็น ptintf และมันยังคอมไพล์ผ่านอีกก็ผีหลอกแล้วล่ะครับ เพราะฉะนั้น ทำความเข้าใจกับจุดนี้ให้ดี ๆ


5. Error มีสองลักษณะ

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


6. ฝืนตัวเอง

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


7. สติ+สมาธิ+ปัญญา+มัชฌิมา+พยายาม

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

สู้ๆ นะครับ น้องๆๆๆ




 

Create Date : 28 ธันวาคม 2549    
Last Update : 28 ธันวาคม 2549 5:15:11 น.
Counter : 351 Pageviews.  

ผู้รักที่จะเป็น Programmer

ปีที่1 ของชีวิตมหาลัย

ควรอ่านและหัดภาษา Pascal ธรรมดา (ANSI) บน DOS ใช้เครื่องเก่าๆ ก็ได้ การเขียนโปรแกรมสั้นๆ ให้ได้ ไม่ว่าจะมีเรียนในหลักสูตรหรือไม่ก็ตาม และ ควรทบทวนเรื่องคณิตศาสตร์ไม่ต่อเนื่อง (Set, Logical, Metric, Funtion, Relation) เพราะจำเป็นต้องใช้ในการคิด Algorithm ในขั้นสูง ต้องจินตนาการได้ถึงสิ่งที่ไม่มีตัวตน (ข้อมูล, ชุดคำสั่ง) ภาษา Pascal ที่จะไม่ตาย ด้วยความง่าย ทำให้เข้าใจโครงสร้างข้อมูล ด้วยความชัดเจน ในเรื่องของการเขียนโปรแกรม อย่างมีโครงสร้างควบคุมที่ดี ฝึกให้เราคิด อย่างมีโครงสร้างลำดับขั้นที่ถูกต้อง เพราะการเขียนโปรแกรม สำคัญที่การออกแบบ วางแผนแก้ปัญหาอย่างเป็นขั้นตอน ที่รัดกุมรอบคอบ จึงควรเรียนเป็นภาษาแรก จะทำให้เราเขียน Code ไม่ยุ่งเหยิง และมีหลักในความคิดอย่างมีโครงสร้างที่ชัดเจน ไม่ฟุ้งซ่าน


ปีที่ 2

ควรอ่านและหัดภาษา C ธรรมดา (ANSI) และ Assembly บน DOS จะพบว่าโครงสร้างและแนวคิดของ C คล้าย Pascal มาก แต่พลังและลูกเล่นของ C จะทำให้น้องเขียนได้ดีมากขึ้น พยามยามทำความเข้าใจเรื่อง pointer เพราะโครงสร้างข้อมูลใน C อิงกับเรื่องนี้เป็นหลัก มีคนกล่าวว่า C เป็นภาษาของโปรแกรมเมอร์ที่แท้จริง และเป็นภาษาหลัก ในการเขียนโปรแกรมระบบ เช่น Unix, Windows, Dos, Game, Compiler ส่วน Assembly เรียนให้เข้าใจหลักพื้นฐานของระบบ Hardware, Register, การอ้าง Interrupt, หน่วยความจำ, ความแตกต่างภาษาสูงกับต่ำ สามารถเขียนได้ในระดับ Digital Design บน Chip เพื่อนำไปใช้ในการควบคุมอุปกรณ์ไฟฟ้า หรือ เป็นหลักแกน (Kernel) สำคัญในการเขียน OS และ Compiler


ปีที่ 3

ควรอ่านและหัดภาษาแบบยุคที่ 4 อาจเป็น Visual Basic หรือ Delphi หรือ C++ (Visual C++) เพียง 1 ภาษาให้ชำนาญลึกที่สุด จนทำมาหากินได้ ภาษาแบบนี้มันจะแตกต่างไป เพราะมีแนวคิด ในการเขียนโปรแกรมที่ไม่เป็น Structure Block แต่เป็น Object Oriented เป็นการออกแบบจากส่วนติดต่อจากผู้ใช้ ไปสู่ Algorithm แต่การเรียนภาษา Pascal และ C จะทำให้น้องเข้าใจว่า การเขียนโปรแกรมทำงานได้ถูกต้อง สำคัญกว่าความสวยงาม อีกภาษาที่ต้องเรียนให้เข้าใจถ่องแท้ ก็คือ SQL เป็นภาษาสำคัญ ที่เป็นพื้นของฐานข้อมูลส่วนใหญ่ รับรองไม่อดตายและ มีงานทำตลอดกาล เพราะมนุษย์ต้องยุ่งเกี่ยวกับข้อมูลจำนวนมากเสมอ

ปีที่ 4

แนะนำให้เรียน ภาษาที่เกี่ยวข้องกับ Web ให้เรียนสองภาษานี้เป็นอย่างน้อย คือ HTML และ JAVA อย่างน้อยที่สุดเป็นหลัก ที่จะขนขวายหาความรู้ต่อไปในอนาคต ไม่ว่าจะเป็น Perl, CGI, ASP , PHP ฯลฯ น้องจะพบว่า โครงสร้าง JAVA, Perl ดูแล้วคล้าย C มาก ดังนั้นถ้าพื้นฐาน C แน่นพอจะทำให้เรียนสิ่งใหม่ๆ ได้ง่ายและเร็ว

ทิ้งทายนะครับ ด้วยความห่วงใย

ใครที่ยังพิมพ์ดีด สิบนิ้วไม่ได้ ไม่ได้ ก็เริ่มหัดได้แล้ว ทั้ง ไทย/อังกฤษ เพราะต้องใช้พิมพ์ Code โปรแกรมเมอร์แบบเมาส์คลิ๊กๆ จิ้มดีด 2 ชั่วโมงต่อหน้า คงไม่ทันถ้าต้องโปรแกรมใหญ่ๆ - อยากให้น้องๆให้ความสำคัญกับภาษาอังกฤษมากๆ ในอเมริกาผู้ที่ชำนาญในภาษา C และ Assembly มีความต้องการสูงมากๆ ต้องนำเข้าจาก อินเดีย ได้หวัน ผมอยากเห็นคนไทย เป็นโปรแกรมเมอร์ที่ดีและเก่ง มากๆ เป็นแรงงานไปทำงานเอาความรู้ และขนเงินฝรั่งมาบ้านเราเยอะๆ แล้วกลับมาสร้าง Software แข่งกับ Microsoft เราแพ้ อินเดีย ไต้หวัน สิงคโปร์ มาเลเซีย ตรงภาษาอังกฤษ ครับ พวกนี้เขาเรียนตำราเป็นฝรั่งเลย - อยากสนับสนุนให้หนังสือ text book บ้านเราถูกกว่านี้ (ตำราไทยด้วยตำราสอนการใช้ Word ง่ายๆ ยังราคาตั้ง 800) โดยเฉพาะตำราวิทยาศาตร์ สมัยผมเรียนอดเงินกินขนมเป็นเดือน เพื่อซื้อมาอ่าน ราคาเล่มเป็น 400-1500 แต่คุ้มครับอ่านได้จนทุกวันนี้ เพราะเขาเขียนลึกจริง (ใม่เขียนอมภูมิแบบของไทย บางทีแปลก็แปลไม่หมด แปลแบบ ผมอ่านยังงง เขียนไม่รู้เรื่องผมคงโง่มั้ง) ควรเลือกชื้อหนังสือที่เป็นหนังสือ classic book (ดูหนังสือเล่มที่มักเป็นหนังสืออ้างอิงของหนังสือเล่มอื่นๆ) มาอ่าน Text book เถอะ อ่านง่ายไม่ยาก จะยากก็เล่มแรกเท่านั้นต้องเปิดดิกมากหน่อย แต่พอผ่านเล่มแรกก็ง่าย เพราะศัพท์ก็เป็นศัพท์เฉพาะ มีไม่มาก ภาษาตรงไปตรงมา

อีกเรื่องนิสัยรักการอ่านและลงมือทำ เมื่ออ่านแล้วต้องเขียนโปรแกรมทันที เพื่อความเข้าใจและทดสอบความคิดตนเอง อีกควรอ่านทุกเรื่องที่เป็นคอมพิวเตอร์ให้รู้กว้าง คุยกับใครๆได้ ไม่เสียชื่อน้องวิทย์คอมพ์ และไม่ควรเสียเวลาทำสิ่งไร้สาระ (เลิกดู TV, chat และ โทรศัพท์ 2-3 ชม., เล่นเกมส์ข้ามคืนได้แล้ว ไม่ทำให้ฉลาดเลย) ทุกครั้งที่เปิดคอมพิวเตอร์ ควรอ่านหนังสือก่อน แล้ววางแผน Algorithm ให้สมบูรณ์ดี ก่อนเปิดเครื่องแล้วเขียนโปรแกรม มิฉะนั้นจะต้องมานั่งแก้ bug เป็นคืนๆ ต้องวางแผน Algorithm ให้ดี ทดลองคิดตามบนกระดาษก่อนเขียนจริง




 

Create Date : 28 ธันวาคม 2549    
Last Update : 28 ธันวาคม 2549 5:16:55 น.
Counter : 110 Pageviews.  


Friday_Evening
Location :


[Profile ทั้งหมด]

ให้ทิปเจ้าของ Blog [?]
ฝากข้อความหลังไมค์
Rss Feed

ผู้ติดตามบล็อก : 1 คน [?]




ครับ ตอนนี้กำลังเรียน Computer science ปี 4 อีก 3 เดือน ผมก็จะเปลี่ยนจากนักศึกษา เป็น พนักงานโปรแกรมเมอร์ของบริษัทแล้วครับ
ใช้ๆ ไป ให้คุ้มค่านะ ชีวิต
Friends' blogs
[Add Friday_Evening's blog to your web]
Links
 

 Pantip.com | PantipMarket.com | Pantown.com | © 2004 BlogGang.com allrights reserved.