ผู้เขียน หัวข้อ: 5 ปัญหาที่ Developer ชอบพบ  (อ่าน 6 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

พฤษภาคม 27, 2018, 02:31:56 AM
  • Hero Member
  • *****
  • กระทู้: 933
    • ดูรายละเอียด

1. มี Duplication Code ในโปรแกรม
ถ้าเกิดคุณเขียน Code แล้วมีการ Duplication ขึ้น หรือมีชุดของ Code สถานที่สำหรับทำงานเป็นประจำกัน อาจจะส่งผลให้ยากสำหรับเพื่อการ Maintain และอาจส่งผลให้เกิดการเกิด Bug ด้วย คุณอาจมีความคิดว่าคุณได้ปฏิบัติเปลี่ยนแปลง Code แล้ว แต่ว่าแล้วศึกษาค้นพบว่า มี Method ซ้ำแล้วซ้ำเล่ากันอยู่ในไฟล์อื่นๆและไม่ได้รับการ Update เมื่อคุณปฏิบัติแปลง Code แน่นอนว่าหัวข้อสำคัญที่คุณต้องเจอเป็นเกิด Bug นี่เป็นเหตุผลที่คุณน่าจะหลบการ Duplication ของ Code ให้มากที่สุดเท่าที่จะทำเป็น
ทางออก : คุณน่าจะมานั่งพินิจพิจารณา Code ของคุณ แล้วจับมันแยกออกมาสร้างเป็น Method ใหม่ไปเลย แล้วค่อยเรียก Method นั้นมาใช้งานจะดีกว่า หากคุณจะปรับแต่งมัน หรือเกิด Bug ก็จะได้ปรับปรุงแก้ไขมันตรง Method นั้นที่จุดเดียวไปเลย

2. ปรับปรุง Code แล้วเกิด Bug ใหม่ขึ้นมา
เคยเป็นไหม เมื่อคุณทำการแปลงแก้ไขโปรแกรม หรืออาจเพิ่ม Feature ใหม่เข้าไป คุณมีโอกาสในการเสี่ยงสูงต่อการเกิด Bug ใหม่ๆในโปรแกรม
แนวทางแก้ไข : สิ่งที่ช่วยคุ้มครองปกป้องปัญหานี้เป็น การเขียน Unit Test นั่นเอง โดยเขียน Unit Test เป็น Project ที่แยกออกมาต่างหาก เพื่อทดสอบว่า Method รวมทั้ง Function ต่างๆในโปรแกรมของคุณปฏิบัติงานอย่างเที่ยงตรงหรือไม่ การ Test นี้ถูกเขียนขึ้นเพื่อแน่ใจว่าMethod นั้นทำในสิ่งที่จะจะต้องทำไหม หรือ Method นั้นถูกเรียกไปใช้งานใช่หรือไม่ใช่ ยิ่งคุณมีการเขียน Test โปรแกรมของคุณจำนวนมากเยอะแค่ไหน ก็จะมีเปอร์เซ็นต์ที่ Code ของคุณจะปฏิบัติการถูกเยอะขึ้นเพียงแค่นั้น ยิ่งทำเป็น 100% ก็ยิ่งดี

3. ไม่ใช้ Version Control
คุณอาจเพิ่ม Feature ใหม่หรือแปลงปรับปรุงแก้ไข Code นิดหน่อย แล้วต่อจากนั้นเมื่อใช้งานจริงแล้วมาพบว่า มี Bug เกิดขึ้น คุณอาจต้องเอา Feature นั้นออกซะ รวมทั้งกลับไปใช้ Version ที่ผ่านมาที่มันถูกอยู่แล้ว ซึ่งปัญหานี้อาจเกิดเหตุที่คุณจำเป็นที่จะต้องเจอหากคุณไม่ได้ใช้ Version Control
แล้ว Version Control เป็นยังไง
Version Control เป็นกรรมวิธีสำหรับการ Record การเปลี่ยนแปลงในโปรแกรมเพื่อคุณสามารถกลับไปใช้ Version ก่อนหน้าหรือ Version ที่คุณอยากได้ ยิ่งเมื่อคุณจัดการให้กับบริษัท ก็ได้ช่องทางสูงที่จะได้ใช้พวก Version Control โดยอาจจะเป็น SVN (Subversion) หรือ GIT ถ้าคุณทำ Personal Project ของคุณเอง Version Control ก็อาจไม่จำเป็นแม้กระนั้นคุณก็อาจพบเจอปัญหาเช่นเดียวกันนี้
แนวทางแก้ไข : ใช้ Version Control โดยขอแนะนำให้เริ่มทดสอบการใช้ GitHub สำหรับ Open-Source Software Project หรือก่อตั้ง Visual SVN Server และ Tortoise SVN ในเครื่องของคุณในกรณีที่เป็น Project ส่วนตัว

4. อ่านหรือเขียน Code ที่เข้าใจยาก
เมื่อคุณเขียน Code เอง แน่นอนว่าคุณก็จำเป็นที่จะต้องเข้าใจมันแน่ๆแม้กระนั้นปัญหาเป็น แล้วคนอื่นๆล่ะ เขาจะเข้าหัวใจเช่นเดียวกันกับที่คุณเข้าใจหรือไม่ หรือ วันนี้คุณเขียน Code แต่ผ่านไปสัก 6 เดือน แล้วคุณกลับมาอ่านมันใหม่ คุณจะเข้าหัวใจเปรียบเสมือนช่วงต้นที่เขียน Code นี้ไหม นี่เป็น เหตุผลที่บริษัทต่างๆมากมายถึงได้มีมาตรฐานของการเขียน Code
ทางออก : กำหนดมมาตรฐานของการเขียน Code ขึ้น โดยเจาะจงหลักเกณฑ์หรือทางปฏิบัติที่ดีที่สุด เพื่อทุกคนสามารถเข้าใจได้ตรงกันไม่ว่าจะเป็น Code ที่เขียนโดย Developer ไม่ว่าใคร ดังเช่น การตั้งชื่อ, การ Comment, การย่อหน้า, ความยาวของแต่ละบรรทัด หรือแม้แต่การกำหนดระยะห่างของแต่ละบรรทัดว่าจะเป็น single line หรือ multi line อื่นๆอีกมากมาย

5. การคาดคะเนขณะที่งานจะเสร็จบริบูรณ์
สำหรับการทำงานฐานะที่เป็น Developer มืออาชีพ คุณจะถูกถามว่า จะใช้เวลาดำเนินการนานแค่ไหนงานถึงจะเสร็จ เนื่องจากนี่เป็นเรื่องจำเป็นสำหรับในการตั้งราคา ช่วงสำหรับในการปฏิบัติการ และกะสิ่งที่คาดหวังต่างๆซึ่งมันอาจจะเกิดเหตุที่ยากในการจะเดาว่าจำต้องใช้เวลามากน้อยแค่ไหน
ทางแก้ไข : ใช้การย้อนกลับไปศึกษางานลักษณะคล้ายๆกัน แล้วคิดว่าเคยใช้เวลาสำหรับเพื่อการปลูกข้าวนแค่ไหน ถึงแม้ถ้าคุณไม่รู้ไหมมีตัวอปิ้งของงานที่คล้ายกัน ให้คุณแบ่งงานนั้นออกเป็น งานย่อยๆที่มีขนาดเล็กลง และให้ราวตอนที่ต้องใช้ในแต่ละงานนั้นๆซึ่งคงทำให้ใกล้เคียงความจริงเพิ่มมากขึ้นแล้วก็ ufabet คุณสามารถใช้แนวทางลักษณะนี้สำหรับงานหรือ Project ที่จะต้องเจอในอนาคตได้อีกด้วย



รายละเอียดต่างๆนอกเหนือจากนี้

https://ufabetth36155.jimdofree.com/

http://cufabet.webs.com/

https://cara36155.yolasite.com/


https://cara36155.livejournal.com/264.html

https://cara36155.wixsite.com/ufabet36155

https://ufabetthfff.weebly.com