การเขียนโปรแกรมเป็นหนึ่งในทักษะที่หลากหลายที่สุดในตลาดในยุคนี้ ตั้งแต่ความสามารถในการสร้างเว็บไซต์ของบริษัทไปจนถึงการรู้วิธีแก้ไขข้อผิดพลาดในการเปลี่ยนเส้นทางอย่างง่ายดาย ทักษะเหล่านี้อาจประเมินค่าไม่ได้สำหรับนายจ้างและตัวคุณเองในหลาย ๆ ด้าน อย่างไรก็ตาม การคงอยู่อย่างที่คุณเป็นจะไม่ทำให้คุณเป็นโปรแกรมเมอร์ที่ดีที่สุดเท่าที่จะเป็นได้ อ่านเพื่อเรียนรู้วิธีพัฒนาทักษะของคุณในฐานะโปรแกรมเมอร์
ขั้นตอน
ขั้นตอนที่ 1. วิเคราะห์ปัญหาให้ชัดเจน
ขั้นตอนที่ 2 คิดให้รอบคอบเกี่ยวกับวิธีแก้ปัญหานั้น
ขั้นตอนที่ 3 รวบรวมข้อกำหนดทั้งหมด
ใช้เวลาในการจดบันทึกเป้าหมายที่ผลิตภัณฑ์ขั้นสุดท้ายต้องการเพื่อให้บรรลุ และฐานผู้ใช้ของคุณจะเป็นใคร ความชัดเจนของความคิดในขั้นตอนนี้จะช่วยประหยัดเวลาได้มาก
ขั้นตอนที่ 4 เขียนแผนการดำเนินงานอย่างละเอียด (หรือแบบจำลอง)
- สำหรับสิ่งเล็กๆ น้อยๆ ที่มีในตัวเอง นี่อาจเป็นแค่ผังงานพื้นฐานหรือสมการง่ายๆ
-
สำหรับโครงการขนาดใหญ่ การแบ่งงานออกเป็นโมดูลจะช่วยได้ และพิจารณาสิ่งต่อไปนี้:
- แต่ละโมดูลต้องทำหน้าที่อะไร
- ข้อมูลถูกส่งผ่านระหว่างโมดูลอย่างไร
- วิธีการใช้ข้อมูลในแต่ละโมดูล
- แม้ว่าความต้องการในการรวบรวมและวางแผนอาจเป็นเรื่องที่น่าเบื่อหน่ายและสนุกน้อยกว่าการลงโปรแกรมโดยตรง แต่การใช้เวลาหลายชั่วโมงในการแก้จุดบกพร่องก็ยิ่งน่าเบื่อ ใช้เวลาในการออกแบบโฟลว์และโครงสร้างของโปรแกรมของคุณล่วงหน้าอย่างถูกต้อง และคุณอาจสังเกตเห็นวิธีที่มีประสิทธิภาพมากขึ้นในการบรรลุเป้าหมายของคุณก่อนที่คุณจะเขียนโค้ดบรรทัดแรก!
ขั้นตอนที่ 5. แสดงความคิดเห็นโค้ดของคุณอย่างเสรี
หากคุณคิดว่าโค้ดของคุณอาจต้องการคำอธิบาย โปรดแสดงความคิดเห็น แต่ละฟังก์ชันควรนำหน้าด้วย 1-2 บรรทัดที่อธิบายอาร์กิวเมนต์และสิ่งที่ส่งคืน ความคิดเห็นควรบอกคุณว่าทำไมบ่อยกว่าอะไร อย่าลืมอัปเดตความคิดเห็นเมื่อคุณอัปเดตรหัสของคุณ!
ขั้นตอนที่ 6 ใช้หลักการตั้งชื่อที่สม่ำเสมอสำหรับตัวแปร
มันจะช่วยให้คุณติดตามตัวแปรแต่ละประเภท และจุดประสงค์ของตัวแปรนั้นคืออะไร นี่หมายถึงการพิมพ์มากกว่าแค่ x = a + b * c แต่จะทำให้โค้ดของคุณดีบักและบำรุงรักษาได้ง่ายขึ้น หลักการที่นิยมอย่างหนึ่งคือ สัญกรณ์ฮังการี โดยที่ชื่อตัวแปรจะขึ้นต้นด้วยประเภทของตัวแปร ตัวอย่างเช่น สำหรับตัวแปรจำนวนเต็ม คุณอาจใช้ intRowCounter; สตริงอาจใช้ strUserName ไม่สำคัญว่ารูปแบบการตั้งชื่อของคุณคืออะไร แต่ต้องแน่ใจว่าสอดคล้องกันและชื่อตัวแปรของคุณมีความหมายชัดเจน (ดูคำเตือนด้านล่าง)
ขั้นตอนที่ 7 จัดระเบียบรหัสของคุณ
ใช้โครงสร้างภาพเพื่อระบุโครงสร้างโค้ด ตัวอย่างเช่น เยื้องบล็อกโค้ดที่อยู่ภายในเงื่อนไข (ถ้า อย่างอื่น …) หรือวนซ้ำ (สำหรับ ในขณะที่ …) ลองเว้นวรรคระหว่างชื่อตัวแปรและตัวดำเนินการ เช่น การบวก การลบ การคูณ การหาร และแม้แต่เครื่องหมายเท่ากับ (myVariable = 2 + 2) นอกจากจะทำให้โค้ดดูสวยงามขึ้นแล้ว ยังทำให้มองเห็นการไหลของโปรแกรมได้ง่ายขึ้นมากในพริบตา (ดูเคล็ดลับในการเยื้องด้านล่าง)
ขั้นตอนที่ 8 ทดสอบทุกอย่าง
เริ่มต้นด้วยการทดสอบแต่ละโมดูลด้วยตัวของมันเอง โดยใช้อินพุตและค่าที่คุณมักจะคาดหวัง จากนั้นลองใช้อินพุตที่เป็นไปได้แต่น้อยกว่าปกติ การดำเนินการนี้จะล้างจุดบกพร่องที่ซ่อนอยู่ออก มีงานศิลปะให้ทดสอบ และคุณจะค่อยๆ พัฒนาทักษะของคุณด้วยการฝึกฝน เขียนการทดสอบของคุณเพื่อรวมกรณีต่อไปนี้:
- สุดขีด: ศูนย์และเกินค่าสูงสุดที่คาดไว้สำหรับค่าตัวเลขบวก สตริงว่างสำหรับค่าข้อความ และค่าว่างสำหรับทุกพารามิเตอร์
- ค่าที่ไม่มีความหมาย แม้ว่าคุณจะไม่เชื่อว่าผู้ใช้ปลายทางของคุณจะป้อนข้อมูลที่ไม่มีความหมาย ให้ทดสอบซอฟต์แวร์ของคุณกับมันอยู่ดี
- ค่าที่ไม่ถูกต้อง ใช้ศูนย์สำหรับค่าที่จะใช้ในการหาร หรือจำนวนลบเมื่อคาดหวังค่าบวกหรือเมื่อจะคำนวณรากที่สอง สิ่งที่ไม่ใช่ตัวเลขเมื่อประเภทอินพุตเป็นสตริง และจะถูกแยกวิเคราะห์เป็นค่าตัวเลข
ขั้นตอนที่ 9 ฝึกฝน ฝึกฝน ฝึกฝน
การเขียนโปรแกรมไม่ใช่วินัยที่หยุดนิ่ง มีสิ่งใหม่ๆ ให้เรียนรู้อยู่เสมอ และที่สำคัญกว่านั้นคือ มีสิ่งเก่าให้เรียนรู้อยู่เสมอ
ขั้นตอนที่ 10 เตรียมพร้อมสำหรับการเปลี่ยนแปลง
ในสภาพแวดล้อมการทำงานจริง ความต้องการเปลี่ยนแปลงไป อย่างไรก็ตาม ยิ่งคุณมีความชัดเจนในตอนเริ่มต้นเกี่ยวกับข้อกำหนด และยิ่งแผนการดำเนินงานของคุณชัดเจนในตอนแรก การเปลี่ยนแปลงจะเป็นผลมาจากการวางแผนที่ไม่ดีหรือความเข้าใจผิดน้อยลงเท่านั้น
- คุณสามารถมีบทบาทอย่างแข็งขันในการปรับปรุงความชัดเจนของกระบวนการโดยนำเสนอเอกสารความต้องการของคุณหรือแผนการดำเนินงานของคุณให้ดีก่อนที่จะเริ่มเขียนโค้ด สิ่งนี้จะช่วยให้แน่ใจว่าสิ่งที่คุณวางแผนจะสร้างนั้นเป็นสิ่งที่ถูกถามหาจริงๆ
- จัดโครงสร้างโปรเจ็กต์เป็นชุดของเหตุการณ์สำคัญพร้อมการสาธิตสำหรับแต่ละบล็อก และจัดการกระบวนการทีละครั้ง ยิ่งคุณต้องคิดน้อยในช่วงเวลาใดก็ตาม โอกาสที่คุณจะคิดอย่างชัดเจนก็จะยิ่งมากขึ้นเท่านั้น
ขั้นตอนที่ 11 เริ่มเรียบง่ายและมุ่งสู่ความซับซ้อน
เมื่อเขียนโปรแกรมบางอย่างที่ซับซ้อน จะช่วยให้มีการสร้างบล็อคที่เรียบง่ายขึ้นและทำงานอย่างถูกต้องก่อน ตัวอย่างเช่น สมมติว่าคุณต้องการสร้างรูปร่างที่กำลังพัฒนาบนหน้าจอซึ่งเป็นไปตามทิศทางของเมาส์ และเปลี่ยนรูปร่างตามความเร็วของเมาส์
- เริ่มต้นด้วยการแสดงสี่เหลี่ยมจัตุรัสและทำให้ตามเมาส์ กล่าวคือ แก้ปัญหาการติดตามการเคลื่อนไหวเพียงอย่างเดียวก่อน
- ขั้นต่อไป กำหนดขนาดของสี่เหลี่ยมจัตุรัสให้สัมพันธ์กับความเร็วของเมาส์ กล่าวคือ แก้ปัญหาการติดตามความเร็วต่อรูปร่างด้วยตัวเอง
- สุดท้าย สร้างรูปร่างจริงที่คุณต้องการใช้งานและรวมส่วนประกอบทั้งสามเข้าด้วยกัน
- วิธีการนี้เป็นธรรมชาติยืมตัวเองไปเขียนโค้ดโมดูลาร์ โดยที่แต่ละองค์ประกอบอยู่ในบล็อกของตัวเอง สิ่งนี้มีประโยชน์มากสำหรับการนำโค้ดกลับมาใช้ใหม่ (เช่น คุณต้องการเพียงแค่ใช้การติดตามเมาส์ในโปรเจ็กต์ใหม่) และทำให้การดีบักและการบำรุงรักษาทำได้ง่ายขึ้นมาก
วิดีโอ - การใช้บริการนี้ อาจมีการแบ่งปันข้อมูลบางอย่างกับ YouTube
เคล็ดลับ
- ใช้ IDE (Integrated Development Environment) IDE ที่ดีจะมีตัวแก้ไขรหัสสีที่สร้างขึ้นด้วยคำแนะนำโค้ดและฟังก์ชันการเติมโค้ดที่ทำให้แก้ไขได้เร็วขึ้นและมีแนวโน้มที่จะสะกดผิดน้อยลง โดยปกติจะมีคุณลักษณะดีบักเช่นกัน
- การศึกษาซอร์สโค้ดของโปรแกรมเมอร์คนอื่นๆ เป็นวิธีที่ยอดเยี่ยมในการพัฒนาทักษะของคุณเอง ทำงานตามแนวทางของคุณผ่านโค้ด ทีละขั้นตอน หาโฟลว์ และสิ่งที่เกิดขึ้นกับตัวแปร จากนั้นพยายามเขียนโค้ดของคุณเองเพื่อทำสิ่งเดียวกัน (หรืออาจจะปรับปรุงให้ดีขึ้นด้วย) คุณจะได้เรียนรู้อย่างรวดเร็วว่าเหตุใดจึงต้องเขียนบางอย่างด้วยวิธีใดวิธีหนึ่ง และคุณยังจะได้รับคำแนะนำที่เป็นประโยชน์เกี่ยวกับวิธีการเขียนอย่างมีประสิทธิภาพอีกด้วย
- ไซต์การสอนก็เป็นแหล่งข้อมูลที่ยอดเยี่ยมเช่นกัน
- ทำสำเนาสำรองของรหัสแอปพลิเคชันของคุณเป็นประจำไปยังฮาร์ดไดรฟ์อื่นหรืออุปกรณ์พกพาอื่น เพื่อให้คุณมีสำเนาสำรองหากคอมพิวเตอร์ของคุณเสียชีวิตหรือใช้งานไม่ได้ เก็บสำเนาอย่างน้อยหนึ่งฉบับในที่ปลอดภัย
- รักษาโค้ดของคุณให้ดูสวยงาม ไม่ใช่เพราะมันสวย แต่เพราะทำให้อ่านง่ายขึ้น นี่เป็นสิ่งสำคัญเมื่อคุณต้องการทำการเปลี่ยนแปลงในหกเดือนข้างหน้า อ่านเพิ่มเติมเกี่ยวกับการเยื้องโค้ด
- หลังจากงานใหญ่แต่ละส่วน หยุดพัก ทำสิ่งที่ไม่เกี่ยวข้อง แล้วทบทวนสิ่งที่คุณเขียนด้วยความคิดใหม่ คิดใหม่และเขียนใหม่ ทำให้มีประสิทธิภาพและสวยงามยิ่งขึ้นโดยใช้โค้ดน้อยลง
- ค้นหาตัวแก้ไขที่ใช้การเน้นไวยากรณ์ที่มีรหัสสี ช่วยแยกความคิดเห็น คีย์เวิร์ด ตัวเลข สตริง ฯลฯ ออกได้จริงๆ
- เปลี่ยนแปลงทีละอย่างเมื่อทำการดีบักแล้วทดสอบการแก้ไขของคุณก่อนที่จะดำเนินการกับรายการถัดไป
- ใช้การจัดการการควบคุมเวอร์ชัน เครื่องมืออย่าง CVS หรือ SVN ช่วยให้ติดตามการเปลี่ยนแปลงโค้ดและจุดบกพร่องได้ง่ายขึ้น
- เก็บสำเนางานที่ผ่านมาของคุณไว้ มันไม่ได้เป็นเพียงจุดอ้างอิงที่ดีเท่านั้น แต่อาจมีโค้ดบางส่วนที่คุณสามารถนำมาใช้ซ้ำได้ในภายหลัง
- ตรวจสอบการสะกดและไวยากรณ์อีกครั้ง ความผิดพลาดเพียงเล็กน้อยก็สร้างความเครียดได้
- ใช้เครื่องมือดีบักเกอร์แทนการวางคำสั่งในโค้ดของคุณเพื่อแสดงตัวแปรเอาต์พุต เครื่องมือดีบั๊กจะให้คุณทำตามขั้นตอนโค้ดทีละบรรทัด เพื่อให้คุณเห็นว่าโค้ดผิดพลาดตรงไหน
- พูดคุยกับโปรแกรมเมอร์คนอื่นๆ ผู้คนมักจะเป็นแหล่งข้อมูลที่ดี โดยเฉพาะอย่างยิ่งเมื่อเริ่มต้นใช้งาน ค้นหาว่ามีกลุ่มโปรแกรมเมอร์ที่พบกันในพื้นที่และเข้าร่วมกลุ่มหรือไม่
- เริ่มต้นจากสิ่งเล็กๆ ตั้งเป้าไปที่สิ่งที่คุณน่าจะทำได้มากที่สุด และพยายามพัฒนาตัวเองให้ดีขึ้น
-
ให้เพื่อนโปรแกรมเมอร์อ่านโค้ดของคุณ พวกเขาอาจรู้บางอย่างที่คุณอาจไม่เคยคิดมาก่อน ไม่รู้จักโปรแกรมเมอร์มืออาชีพเลยเหรอ? ค้นหาฟอรัมออนไลน์สำหรับภาษาโปรแกรมหรือระบบปฏิบัติการที่คุณเลือกโดยเฉพาะ แล้วเข้าร่วมการสนทนา
- หากคุณไปตามเส้นทางนี้ โปรดอ่านและปฏิบัติตามมารยาทของฟอรัม มีผู้เชี่ยวชาญใจดีมากมายที่ยินดีช่วยเหลือหากถูกถามอย่างดี
- อย่าลืมทำตัวสุภาพ เพราะคุณกำลังขอความกรุณา อย่าหงุดหงิดหากคุณไม่เข้าใจทุกอย่างพร้อมกัน และอย่าคาดหวังให้พวกเขาต้องการตรวจสอบโค้ด 10,000 บรรทัด ให้ถามคำถามแบบเน้นประเด็นเดียวง่ายๆ และโพสต์เพียง 5-10 บรรทัดที่เกี่ยวข้องของโค้ดที่เกี่ยวข้อง คุณมักจะได้รับการตอบรับในทางที่ดี
- ก่อนที่คุณจะเริ่มโพสต์ ทำวิจัยเล็กน้อย คำถามของคุณได้รับการพบ พิจารณา และแก้ไขแล้ว
- ลูกค้าและผู้บังคับบัญชาไม่สนใจว่าโปรแกรมของคุณทำงานอย่างไรเกือบจะมากเท่ากับว่าพวกเขาทำงานได้ดีเพียงใด คิดว่าบรรทัดล่าง ลูกค้าฉลาดแต่ไม่ว่าง พวกเขาไม่สนใจว่าคุณกำลังใช้โครงสร้างข้อมูลประเภทใด แต่จะสนใจว่าโครงสร้างข้อมูลนั้นเร็วขึ้นหรือช้าลงอย่างเห็นได้ชัด
- การแยก (การบรรจุ) โค้ดที่ใช้ซ้ำได้ของคุณจากโค้ดเฉพาะแอปพลิเคชันจะนำไปสู่ไลบรารีขนาดใหญ่ ดีบั๊ก และนำกลับมาใช้ใหม่ได้ ซึ่งเต็มไปด้วยยูทิลิตี้ที่มีประโยชน์ ซึ่งจะช่วยในการเขียนแอพพลิเคชั่นที่ทรงพลังและเสถียรขึ้นในเวลาที่น้อยลง
- วิธีที่ดีในการบันทึกงานของคุณบ่อยๆ และเก็บข้อมูลสำรองแยกกันคือการใช้เครื่องมือกำหนดเวอร์ชัน เช่น git หรือ mercurial และบริการโฮสติ้งฟรี เช่น GitHub หรือ Bitbucket
คำเตือน
- การคัดลอกและวางโค้ดของผู้อื่นมักเป็นนิสัยที่ไม่ดี แต่การรับส่วนเล็กๆ จากโปรแกรมโอเพ่นซอร์สอาจเป็นประสบการณ์การเรียนรู้ที่ดี อย่าคัดลอกโปรแกรมทั้งหมดและพยายามให้เครดิตกับมัน อย่าคัดลอกรหัสจากโปรแกรมอื่นเว้นแต่คุณจะได้รับอนุญาตหรือใบอนุญาต
- บันทึกงานของคุณบ่อยๆ ในขณะที่คุณทำงาน หรือคุณอาจเสี่ยงที่จะสูญเสียชั่วโมงและชั่วโมงการทำงานไปเพราะคอมพิวเตอร์พังหรือถูกล็อค หากคุณเพิกเฉยต่อคำเตือนนี้ ถือเป็นบทเรียนที่คุณจะได้เรียนรู้อย่างหนักแน่น!
- ควรใช้สัญกรณ์ฮังการี (ระบุประเภทของตัวแปรเป็นคำนำหน้า) ด้วยความระมัดระวัง อาจนำไปสู่ความไม่สอดคล้องกันเมื่อแก้ไข หรือโดยเฉพาะอย่างยิ่งหากย้ายไปยังภาษาหรือระบบปฏิบัติการอื่น มีการใช้งานมากที่สุดในภาษา 'พิมพ์หลวม' ซึ่งไม่ต้องการให้คุณประกาศประเภทของตัวแปรล่วงหน้า