#1 tech recruiter in thailand

40 เคล็ดลับ ที่ช่วยเปลี่ยนทักษะ Coding ของคุณให้ดีขึ้น

บทความนี้เป็นการถ่ายทอดประสบการณ์จากที่ได้พัฒนา Application มาแล้วกว่า 15 ปี ของคุณ Kesk -*- โดยเขาได้แบ่งปัน 40 เคล็ดลับ ที่ช่วยเปลี่ยนทักษะ Coding ของคุณให้ดีขึ้น รวมทั้งยังสามารถช่วยลดข้อผิดพลาดและประหยัดเวลาในการทำงานอีกด้วย

  1. หาก Code มีปริมาณมาก ๆ ก็ให้แบ่ง Code ออกเป็น Function ที่มีขนาดเล็กลง
  2. หลังเลิกงานแล้ว หากคุณยังแก้ปัญหาไม่ได้ ก็ขอให้ปิด Computer ซะ เลิกคิดถึงปัญหาเหล่านั้นจนกว่าจะกลับมาทำงานและแก้ไขปัญหาใหม่ในวันรุ่งขึ้น
  3. YAGNI principle: อย่าเขียน Code เกินกว่าที่ถูกร้องขอให้เขียน อย่าคิดเผื่ออนาคตให้มากเกินเหตุ และสร้างสิ่งที่สามารถใช้การได้แต่เรียบง่ายที่สุดเท่าที่จะทำได้ เขียน Code เฉพาะส่วนที่จำเป็นในการแก้ไขปัญหา ณ ปัจจุบัน
  4. คุณไม่จำเป็นต้องรู้ไปหมดทุกอย่าง และรู้จัก Frameworks ที่มีอยู่ทั้งหมด สิ่งที่สำคัญที่สุดก็คือการมีพื้นฐานที่ดี รู้จักภาษาในเชิงลึกก่อนที่จะเริ่มต้นด้วย Framework และเรียนรู้สิ่งที่เป็นพื้นฐาน เช่น SOLID principle หรือวิธีการเขียน Clean Code
  5. KISS: “Keep it simple, stupid” หรือ “keep it stupid simple” เป็นหลักการออกแบบที่กล่าวถึงว่า System โดยส่วนใหญ่ จะทำงานได้ดีที่สุดถ้าพวกมันเรียบง่าย แทนที่จะทำให้ซับซ้อน และถึงแม้จะเป็นตรรกะที่มีเหตุมมีผล แต่บางครั้งก็ยากที่จะบรรลุผล
  6. อย่าคิดมากจนเกินความจำเป็น
  7. หากคุณมีปัญหาหรือมี Bug ให้แก้เป็นจำนวนมาก ขอแนะนำให้เดินออกไปจากโต๊ะทำงานแล้วค่อยกลับมาทำใหม่ บ่อยครั้งที่ Solution ที่ดีที่สุด มักจะเกิดขึ้นระหว่างที่เราลุกออกไปจากโต๊ะทำงาน อีกทั้งการออกไปเดินเล่น ก็ถือเป็นสิ่งที่ควรทำในกรณีที่คุณรู้สึกหัวเสียกับลูกค้าหรือเพื่อนร่วมงาน
  8. เรียนรู้การเขียน Test ที่เกี่ยวกับการทำงานของคุณและเรียนรู้การทำ TDD เพราะ TDD เป็นกระบวนการพัฒนา Software ที่อาศัยการทำวนซ้ำ ๆ ของวงจรการ Develop: เขียน Test, Run Test ทั้งหมด แล้วดูว่ามีปัญหาใหม่ ๆ เกิดขึ้นหรือไม่, เขียนCode, Run Test, Refactor Code จากนั้นก็ทำซ้ำใหม่
  9. หาวิธีการแก้ปัญหาให้ได้ก่อน แล้วจึงค่อยเขียน Code อย่าเริ่มเขียน Code ก่อนโดยที่ยังไม่ทราบว่า คุณจะต้องทำอะไรบ้าง
  10. ไม่จำเป็นต้องจดจำ Code แต่คุณควรเข้าใจใน Logic ให้ดี
  11. หากคุณ Copy & Paste Solution ที่ได้จาก Stack Overflow ก็จงตรวจสอบให้แน่ใจว่าคุณเข้าใจพวกมันเป็นอย่างดี จงเรียนรู้การใช้งาน Stack Overflow ในทางที่ถูกต้อง
  12. หากคุณต้องการเรียนรู้ในบางสิ่ง ก็ขอให้ลงมือทำ ลองคิดดูว่าจะทำอะไรแล้วทำให้มันเกิดขึ้นจริง ๆ ให้ได้ เพราะแค่อ่านอย่างเดียวนั้นยังไม่เพียงพอ
  13. จงเรียนรู้จาก Code ของผู้อื่นและให้ผู้อื่นช่วยดู Code ของเราด้วย การใช้ Pair Programming และ Code Reviews ถือเป็นแนวคิดที่ดี
  14. อย่าไปเสียเวลาทำในสิ่งที่มีคนอื่นเขาเคยคิดค้นไว้ดีแล้วหรือทำไว้ดีแล้ว (Don’t Reinvent The Wheel)
  15. Code ของคุณคือ Document ที่ดีที่สุด
  16. ลงเรียนรู้วิธีการค้นหา Google ให้ดี ซึ่งคุณอาจต้องใช้ประสบการณ์และอ่านให้มาก ๆ เพื่อให้รู้ในสิ่งที่คุณกำลังมองหาอยู่
  17. Code ของคุณ อาจจะถูก Maintain โดยตัวคุณเองหรือโดยคนอื่น ดังนั้น จงเขียน Code โดยคำนึงถึงคนที่จะต้องมาอ่าน Code นั้นด้วย ไม่จำเป็นต้องเขียนให้ซับซ้อนเกินเหตุ
  18. วิธีที่ดีที่สุด ในการแก้ไขข้อผิดพลาดด้วย Google คือการ Copy & Paste
  19. อย่าเพิ่งตัดใจยอมแพ้ เพราะสุดท้ายคุณจะหาทางแก้ไขปัญหาเหล่านั้นได้ไม่ทางใดก็ทางหนึ่ง ถึงแม้จะเจอวันที่แย่ ๆ แต่สุดท้ายมันจะผ่านไป
  20. หยุดพัก หยุดพัก และ หยุดพัก วิธีที่ดีที่สุดในการแก้ปัญหา ก็คือ การมีจิตใจที่สงบ
  21. เรียนรู้วิธีใช้ Software Design Patterns เพราะ Design Patterns เป็นวิธีแก้ไขของปัญหาทั่วไปในการออกแบบ Software โดยแต่ละ Pattern ก็เปรียบเหมือนกับ “พิมพ์เขียว” ที่คุณสามารถ Customize พวกมันเพื่อแก้ปัญหาทั่วไปในการออกแบบภายใน Code ของคุณ
  22. ใช้ Integration Tools และทำให้มัน Automate มากเท่าที่คุณจะสามารถทำได้
  23. ให้ทำ Code Kata ซึ่ง Code Kata ก็คือ การฝึกฝนที่ช่วยให้ Programmer ฝึกฝนในทักษะของตนเองผ่านการฝึกซ้อมและการทำซ้ำบ่อย ๆ คุณสามารถดูตัวอย่างได้ที่นี่
  24. เขียน Program เพื่อ Interface ไม่ใช่เพื่อ Implement และ Dependency Injection ถือเป็นสิ่งที่จำเป็น ให้ลองศึกษา SOLID principles
  25. Refactor – Test-Refactor ซึ่งการ Refactor เป็นเทคนิคสำหรับการปรับ Structure ของ Code ที่มีอยู่ แก้ไขและปรับปรุง Structure ภายในโดยไม่ไปเปลี่ยนพฤติกรรมภายนอก
  26. ขอความช่วยเหลือคนอื่นเมื่อคุณต้องการ อย่าไปเสียเวลา
  27. การฝึกฝนจะทำให้สิ่งต่าง ๆ ดีขึ้น
  28. แม้ว่าบางครั้ง Comment จะมีประโยชน์กับคุณ แต่อย่าใส่ใจพวกมันมากเกินไป เพราะมันอาจจะล้าสมัยไปแล้ว
  29. ควรรู้จัก Development Environment ของคุณ และควรลงทุนในสิ่งที่สมรรถภาพมากเพียงพอ อย่างเช่น IntelliJ
  30. สามารถนำ Components มา Reuse ได้
  31. เมื่อพัฒนา Web Application ให้คุณคิดถึงเมื่อมันอยู่ใน Mobile ด้วยเป็นลำดับแรก  ข้อจำกัดเกี่ยวกับ Bandwidth และเรื่องอื่น ๆ ที่เกี่ยวข้อง
  32. อย่าเพิ่งรีบ Optimize หรือ Refactor เร็วเกินไป มันเป็นเรื่องสำคัญที่ต้องมี Minimum Viable Product (MVP) ให้เร็วที่สุดเท่าที่จะทำได้
  33. อย่าใช้ทางลัดที่ไม่มีประสิทธิภาพเพื่อแค่ต้องการประหยัดเวลา ทุกครั้งที่คุณเขียน Code ให้ทำมันให้ดีที่สุด
  34. ปฏิบัติตามมาตรฐานของ Document
  35. Users ไม่ใช่คนที่มีความรู้ทางด้าน Technic ดังนั้น จึงควรนึกถึงพวกเขาด้วยคุณพัฒนา UI
  36. ใช้ Source Control System อยู่เสมออย่าง Github หรือ Bitbucket ควรทำทีละน้อยและให้ Commit Git อยู่เสมอ
  37. มันจะดีกว่าที่จะใช้ Logs มากกว่าที่จะ Debug Code และให้บันทึก Logs ในส่วนที่สำคัญทั้งหมด
  38. เมื่อ Coding คุณควรทำให้มันสอดคล้องกันทั้งหมด ถ้าคุณกำหนด Style ก็ให้ใช้ Style เดียวกันทั้งหมด หรือหากคุณต้องทำงานกับผู้คนเป็นจำนวนมาก ก็ให้ใช้ Style เดียวกันกับทุกคนในทีมของคุณ
  39. อย่าหยุดเรียนรู้ แต่จงเรียนรู้ให้มากกว่าภาษา หรือ Framework ใหม่ ๆ ให้ Focus ไปที่พื้นฐานของการพัฒนา Software
  40. จงอดทน และ จงรักในสิ่งที่คุณทำ

ISM Technology Recruitment Ltd. (#1 Tech Recruiter in Thailand) เราเชี่ยวชาญในธุรกิจ IT Recruitment & IT Outsourcing โดยเฉพาะ เปิดทำการกว่า 30 ปี มีพนักงานทุกสายและทุกระดับทางด้าน IT ที่ได้ร่วมงานกับลูกค้าองค์กรใหญ่ที่มีชื่อเสียงและบริษัทข้ามชาติมากมาย หากคุณเป็นคน IT ที่อยากทำงานท้าทายและร่วมงานกับองค์กรชั้นนำ สามารถฝากประวัติการทำงาน (Resume) ของคุณไว้กับ ISM ได้ที่ https://www.ismtech.net/submit-your-resume แล้วคุณจะพบว่าอนาคตและโอกาสก้าวหน้ากำลังรอคุณอยู่

Source: https://medium.com/

th