เพื่อนร่วมงานคนหนึ่งของฉันชอบใช้เครื่องสร้างรหัสอัตโนมัติซึ่งสร้างรหัสจำนวนมากที่มีเอกสารไม่ดีและยากต่อการดูแลรักษา
ค่าใช้จ่ายของการใช้เครื่องสร้างรหัสคุ้มค่ากับความยุ่งยากในการบำรุงรักษาหรือไม่เพื่อลดระยะเวลาในการสร้าง?
เพื่อนร่วมงานคนหนึ่งของฉันชอบใช้เครื่องสร้างรหัสอัตโนมัติซึ่งสร้างรหัสจำนวนมากที่มีเอกสารไม่ดีและยากต่อการดูแลรักษา
ค่าใช้จ่ายของการใช้เครื่องสร้างรหัสคุ้มค่ากับความยุ่งยากในการบำรุงรักษาหรือไม่เพื่อลดระยะเวลาในการสร้าง?
คำตอบ:
ลองใช้ถ้อยคำใหม่ที่:
ราคาของเครื่องสร้างรหัสอัตโนมัติที่ดีคุ้มค่าหรือไม่
ใช่.
ค่าใช้จ่ายของตัวสร้างโค้ดอัตโนมัติที่ไม่ดีซึ่งสร้างผลงานให้กับคนอื่นมากขึ้น แต่มันก็คุ้มค่าหรือไม่
ไม่ได้อย่างแน่นอน. ไม่มีข้อแก้ตัวสำหรับรหัสไม่ดี หากมีคนต้องการที่จะฉลาดและใช้การสร้างรหัสอัตโนมัติพวกเขาควรใช้เวลาเพื่อให้แน่ใจว่ารหัสที่สร้างขึ้นนั้นเป็นรหัสที่ดี มิฉะนั้นแล้วประเด็นคืออะไร มันเป็นเพียงการผลักเจ้าชู้ลง rode และเมื่อมันมาถึงการผลิตรหัสเจ้าชู้ควรหยุดที่นักพัฒนาที่เขียนมัน
รหัสที่สร้างโดยเครื่องกำเนิดไฟฟ้าไม่ควรดูแลด้วยมือ หากจำเป็นต้องเปลี่ยนแปลงตัวสร้างและ / หรือการตั้งค่าจะต้องถูกปรับแต่งและรันอีกครั้ง พิจารณาแล้วว่ามันไม่สำคัญว่ารหัสผลลัพธ์จะไม่สามารถเข้าใจได้และไม่มีเอกสารตราบใดที่กลไกการสร้างตัวเองนั้นใส (ตรวจสอบให้แน่ใจว่าได้จัดทำเอกสารเกี่ยวกับความจริงที่ว่ารหัสถูกสร้างขึ้นและที่กำเนิดและวิธีการทำงาน)
ความคล้ายคลึง: ในขณะที่ตัวประมวลผลของคอมพิวเตอร์ของฉันประมวลผลรหัสเครื่องเสมอฉันไม่จำเป็นต้องรู้อะไรเลยตราบใดที่ฉันรู้วิธีสร้างรหัสเครื่องโดยใช้ภาษาระดับสูงและคอมไพเลอร์ ฉันได้ยินมาว่าบางครั้ง GCC ผลิตรหัสเครื่อง subpar แต่ใครสนใจตราบใดที่มันทำงานได้อย่างสมบูรณ์ เลเยอร์นามธรรมที่เป็นนามธรรมจะสร้าง SQL เพื่อใช้งานกับเอ็นจิ้น DB แต่ใครจะสนใจว่า SQL นั้นเป็นอย่างไรตราบใดที่เลเยอร์นามธรรมนั้นมีความชัดเจนและทำงานได้?
เมื่อใช้อย่างถูกต้องตัวสร้างรหัสสามารถประหยัดการสร้างไม่เพียง แต่ยังประหยัดค่าใช้จ่ายในการบำรุงรักษาอีกด้วย
ตัวสร้างรหัสเป็นคอมไพเลอร์ชนิดหนึ่ง คุณไม่ต้องกังวลว่าเอาต์พุตของคอมไพเลอร์จะสวยแค่ไหนคุณแค่ทำงานกับซอร์สโค้ด การใช้งานแล้วการแก้ไขด้วยมือผลลัพธ์มักจะยากกว่าการเขียนตั้งแต่เริ่มต้นในรูปแบบที่มนุษย์เข้าใจได้และหมายความว่าคุณไม่สามารถใช้ตัวสร้างโค้ดอีกครั้งโดยไม่ต้องทำงานมากเนื่องจากคุณจะต้องใช้ การเปลี่ยนแปลงรหัสเดียวกันที่เข้าใจไม่ได้เหมือนกันอย่างแม่นยำ
ดังนั้นจึงสามารถใช้ได้ถ้าพวกเขาเป็นส่วนหนึ่งของกระบวนการสร้างและจัดทำเป็นเอกสารเช่นนั้น อินพุตไปยังตัวกำเนิดนั้นเป็นซอร์สโค้ดและอะไรก็ตามที่สร้างขึ้นก็คือผลลัพธ์ระดับกลางเพื่อไม่ให้ยุ่งเหยิง
อย่างไรก็ตามหากมีใครบางคนใช้รหัสหนึ่งในการผลิตรหัสที่เข้าใจไม่ได้ซึ่งควรจะใช้เป็นแหล่งที่มาแสดงว่าบุคคลนั้นกำลังสร้างรหัสที่ไม่ดี ไม่สำคัญว่าบุคคลนั้นจะสร้างรหัสที่ไม่ดีโดยอัตโนมัติหรือด้วยมือมันยังคงเป็นรหัสที่ไม่ดีและคุณยังคงมีปัญหาด้านคุณภาพด้วย
ดังนั้นคุณจะต้องถือว่าสิ่งนี้เป็นนักพัฒนาซอฟต์แวร์คนอื่น ๆ และกำลังเขียนโค้ดที่ไม่ดี ฉันไม่รู้ว่าคุณจัดการที่ร้านค้าของคุณได้อย่างไร
จากความคิดเห็นเกี่ยวกับคำตอบอื่น ๆ ดูเหมือนว่าคุณกำลังถามเกี่ยวกับมาตรฐานของทีมมากกว่าผู้สร้างโค้ดเอง
เครื่องมือการสร้างรหัสควรรวมอยู่ในโครงการและควร (เป็นที่เหมาะสม) เป็นส่วนหนึ่งของกระบวนการสร้าง ตัวอย่างจะอยู่ในทีมของเราเราใช้ Subsonic 2.2 ซึ่งเราได้สร้างคลาสจากวัตถุฐานข้อมูลบนบิลด์
exe ที่ทำสิ่งนี้ถูกตรวจสอบใน SVN ซึ่งเป็นส่วนหนึ่งของโครงการเพื่อให้สมาชิกใหม่ของทีมสามารถรับโครงการใหม่จาก svn และสร้างได้ทันทีโดยไม่ต้องทราบว่าฐานข้อมูลเหล่านี้มาจากไหน (ในตัวอย่างนี้เรา อย่ารวมรหัสที่สร้างใน svn)