วิศวกรรมซอฟต์แวร์

ถาม - ตอบสำหรับมืออาชีพนักวิชาการและนักเรียนที่ทำงานในวงจรการพัฒนาระบบ

7
จะหลีกเลี่ยงการทดสอบหน่วยเปราะบางได้อย่างไร
คำถามนี้ถูกโยกย้ายจาก Stack Overflow เพราะสามารถตอบได้ใน Software Engineering Stack Exchange อพยพ 8 ปีที่แล้ว เราได้เขียนแบบทดสอบเกือบ 3,000 ครั้ง - ข้อมูลได้รับการเข้ารหัสอย่างหนักและนำโค้ดกลับมาใช้ใหม่ได้น้อยมาก วิธีการนี้ได้เริ่มที่จะกัดเราในตูด เมื่อระบบมีการเปลี่ยนแปลงเราพบว่าเราใช้เวลามากขึ้นในการแก้ไขข้อผิดพลาด เรามีการทดสอบหน่วยการรวมและการทำงาน สิ่งที่ฉันกำลังมองหาคือวิธีที่ชัดเจนในการเขียนแบบทดสอบที่จัดการได้และบำรุงรักษาได้ กรอบ FakeItEasy nUnit AutoFixture

15
'ฟังก์ชั่นคงที่' มีการใช้เมื่อใด
ตกลงฉันได้เรียนรู้ว่าฟังก์ชั่นคงที่คืออะไร แต่ฉันยังไม่เห็นว่าทำไมพวกเขาจึงมีประโยชน์มากกว่าฟังก์ชั่นสมาชิกส่วนตัว นี่อาจเป็นคำถามใหม่ที่นี่ แต่ทำไมไม่แทนที่ฟังก์ชั่นสมาชิกส่วนตัวทั้งหมดด้วยฟังก์ชั่นสแตติกแทน?

8
ความท้าทายต่อแนวทาง Agile ในโครงการของรัฐบาล
การสนทนาก่อนหน้านี้ Agile ที่นี่มีคำตอบที่ดีระบุสิ่งที่สำคัญต่อความสำเร็จของการใช้วิธีการ Agile ในการพัฒนาซอฟต์แวร์ ประเด็นส่วนใหญ่เป็นความท้าทายโดยทั่วไปขององค์กรและการจัดการ แต่มีประเด็นหนึ่งที่ทำให้ฉันกังวลและก็คือลูกค้าต้องมีส่วนร่วมตลอดกระบวนการ ลูกค้าคือสิ่งหนึ่งที่คุณไม่สามารถควบคุมได้อย่างเป็นจริงบางทีรูปแบบธุรกิจของคุณจะทำให้คุณต้องทำงานที่รัฐบาลทำสัญญาเช่นกรณีที่สัญญาที่เข้มงวดมากทำให้ บริษัท ต้อง: ให้คุณสมบัติ X ตรงตามที่ร้องขอ คำขอคุณสมบัติจะถูกโยนข้ามกำแพงไม่ต้องรบกวนเราเราไม่ต้องการได้ยิน ไม่มีแนวคิดของคุณลักษณะที่สำคัญในใจของลูกค้าพวกเขาทั้งหมดมีความสำคัญหรือเราจะไม่ถามพวกเขา โครงการจะไม่เสียค่าใช้จ่ายมากและไม่น้อยกว่า Y โดยไม่คำนึงถึงการรุกล้ำหรือกำหนดเวลา กำหนดส่งมอบงานที่แน่นอนสมบูรณ์เข้มงวดสุดท้ายและไม่สามารถต่อรองได้ เราไม่เคยทำงานกับลูกค้ารายนี้มาก่อน แต่เงินในโครงการดีเกินกว่าจะผ่านไปได้ เราต้องการงานนี้ ผมมาที่นี่และทำงานอย่างหนักกับกระบวนการเปลี่ยนแปลงภายในที่จะย้ายไปสู่การพัฒนาเปรียวและที่นี่ฉันไม่ทราบวิธีที่จะเจรจาต่อรองที่เหมาะกับโครงการนี้เข้าสู่กระบวนการใหม่ของเรา ฉันไม่เคยมีความหรูหราของการจัดการแบบเปิดกว้างที่เชื่อใจฉันให้นำทีมพัฒนาและดำเนินการตามเส้นทางนี้และตอนนี้เราอยู่ที่นี่ฉันไม่สามารถบอกตัวเองอย่างตรงไปตรงมาว่าโครงการนี้จะทำจริงใน วิธีเปรียว ฉันรู้สึกเหมือนผู้บริหารเชื่อใจฉันให้นำเส้นทางนี้และฉันปล่อยให้พวกเขาลงเพราะสถานการณ์นี้เราอยู่ในขณะนี้เรียกร้องให้น้ำตกอย่างชัดเจน ฉันกลัวว่าฉันอาจสูญเสียความไว้วางใจถ้าฉันย้อนกลับไปตอนนี้ คำตอบอื่น ๆ เช่นที่นี่บอกว่า Agile เป็นไปไม่ได้กับลูกค้าประเภทนี้คุณเห็นด้วยไหม คุณเคยอยู่ในสถานการณ์ที่คล้ายกันและทำให้มันใช้งานได้? คุณใช้กลยุทธ์อะไรในการทำให้เปรียวประสบความสำเร็จ

2
รูปแบบทางเลือกสำหรับการพัฒนาเว็บ? (ไม่ใช่ MVC) [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการ4 ปีที่แล้ว เร็ว ๆ นี้ผมได้อ่านบล็อกโพสต์บางประการเกี่ยวกับ MVC และวิธีการที่ไม่พอดีกับเว็บ ฉันได้เรียนรู้เกี่ยวกับรูปแบบทางเลือกเช่นRMR สถาปัตยกรรม ฉันอยากรู้ว่าคนอื่นใช้รูปแบบใดบนเว็บนอกเหนือจาก MVC นอกจากนี้หากมีกรอบที่ใช้รูปแบบโปรดโพสต์ลิงค์ไปที่มัน

4
ทำอย่างไรให้ลูกค้าที่เพิ่งเรียนรู้เทคโนโลยีและต้องการใช้งานได้ทุกที่? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการ4 ปีที่แล้ว เมื่อเร็ว ๆ นี้ลูกค้าของฉันค้นพบว่าการเขียน URL ใหม่คืออะไรโดยไม่เข้าใจว่ามันคืออะไรมันทำงานอย่างไรและข้อดีข้อเสียของมัน ตอนนี้เขาขอการเปลี่ยนแปลงแปลก ๆ มากมายในความต้องการที่แท้จริงของโครงการปัจจุบันและการเปลี่ยนแปลงในโครงการเก่าเพื่อที่จะใช้สิ่งที่เขาเชื่อว่าเป็นการเขียน URL ใหม่ ในอีกด้านหนึ่งฉันรำคาญที่ถูกขอให้ทำสิ่งที่ไม่สมเหตุสมผลแทนที่จะทำจริง ในทางกลับกันฉันไม่สามารถบอกลูกค้าได้ว่าเขาไม่เข้าใจอะไรเลยในเรื่องนี้แม้เขาจะสนใจก็ตาม ฉันคิดว่าหลายคนมีสถานการณ์เมื่อผู้จัดการหรือลูกค้าของพวกเขาเพิ่งเรียนรู้คำศัพท์ใหม่หรือเทคโนโลยีใหม่และเขารักมันมากเกินกว่าที่เขาต้องการใช้ในทุกโครงการทุกที่เขียนใหม่ทั้งหมด codebase เพียงแค่ใช้ใหม่นี้ สิ่งของ ฯลฯ นอกจากนี้เมื่อเร็ว ๆ นี้ฉันได้อ่านบางสิ่งที่เกี่ยวข้องกับโปรแกรมเมอร์ซึ่งผู้คนเล่าประสบการณ์ของพวกเขาเมื่อมีข่าวลือเกี่ยวกับ XML และผู้จัดการบางคนจะขอแนะนำ XML ในทุกโครงการเพื่อแสดงให้ทุกคนเห็นว่าพวกเขาใช้มัน ดังนั้นผู้ที่อยู่ในสถานการณ์ที่คล้ายคลึงกันคุณมีวิธีจัดการอย่างไร

8
ธุรกิจในการพัฒนาภาษาการเขียนโปรแกรมคืออะไร? [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันสงสัยว่ามีรายได้ตรงจำนวนมากในการปล่อยภาษาโปรแกรมเช่น Java หรือ C # หรือไม่ การขาย IDE การออกใบอนุญาตแบรนด์ของคุณให้กับหนังสือหรือการได้รับชื่อเสียงระดับองค์กรดูเหมือนจะเป็นประโยชน์เล็กน้อยต่อสายตาของฉันเมื่อเทียบกับความพยายามที่ไม่ต้องสงสัยเลยว่าการพัฒนาต้องใช้เวลาสักครู่

9
เราควรเลิกพยายามทำตัวให้คล่องถ้า QA ใช้เวลา 12 สัปดาห์?
มีคนใน บริษัท ของฉันเสนอการเปลี่ยนแปลงผลิตภัณฑ์หลักของเราที่ผู้จัดการของเรารู้สึกว่าควรเรียกสิ่งที่ฉันคิดว่า บริษัท ของฉันพิจารณาวงจรการควบคุมคุณภาพเต็มรูปแบบ (เช่นการทดสอบชุดผลิตภัณฑ์ทั้งหมดตั้งแต่ต้น) เห็นได้ชัดว่า QA ของเราใช้เวลา 12 สัปดาห์ในการทำ QA แบบเต็มสำหรับผลิตภัณฑ์ของเรา ปัญหาของฉันคือสิ่งนี้คือเรากำลังพยายามพัฒนา Agile (แม้ว่าส่วนใหญ่ครึ่งความคิดเห็นของฉัน) การพัฒนา เราจะทำชุดวิ่งทั้งหมดแล้วปล่อยซึ่ง QA จะใช้เวลาตลอดไปในการผ่านฉันเดา คำถามนี้จริง ๆ ถ้า QA ของเราจะใช้เวลา 12 สัปดาห์ในการทำงานของพวกเขาเราไม่ควรที่จะลอง Agile หรือไม่? อะไรคือจุดพยายามที่จะทำ Agile ในสถานการณ์เช่นนี้?
24 agile  qa 

9
การใช้ Git ในสภาพแวดล้อมแบบองค์กร [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา Git เป็นระบบควบคุมเวอร์ชันที่ยอดเยี่ยม หากเราแยกความจริงที่ว่ามันไม่มีการสนับสนุน GUI ที่ยอดเยี่ยมมันดีและรวดเร็วจริงๆ แต่การควบคุมแหล่งที่มาเช่น Clearcase ได้รับการสนับสนุนอย่างมากสำหรับลูกค้าองค์กร บริษัท ต่าง ๆ ลงทุนจำนวนมหาศาลสำหรับเซิร์ฟเวอร์และ licesense แหล่งควบคุม ในบรรดา บริษัท ขนาดใหญ่ส่วนใหญ่อย่าง Google นั้นใช้ Git ผ่านระบบควบคุมเวอร์ชันอื่น ๆ แต่ บริษัท นี้มีกลุ่มโอเพ่นซอร์สที่แข็งแกร่งซึ่งให้การพัฒนาและสนับสนุนเครื่องมืออย่างสม่ำเสมอ (พวกเขาอาจมี Git รุ่นที่กำหนดเองของพวกเขาเอง) ในขณะเดียวกัน บริษัท ขนาดใหญ่ก็ไม่ได้กังวลเกี่ยวกับการยอมรับโครงการโอเพ่นซอร์สและทำให้พวกเขาเกี่ยวข้องกับพวกเขา Git เป็นเครื่องมือที่เชื่อถือได้สำหรับสภาพแวดล้อมขององค์กรโดยเฉพาะบนแพลตฟอร์ม Windows หรือไม่? การสนับสนุนเป็นปัญหาสำหรับ Git เนื่องจากเป็นผลิตภัณฑ์โอเพ่นซอร์ส มี บริษัท ใดบ้างที่ให้บริการโซลูชั่นและการสนับสนุน? ค่าใช้จ่ายของเซิร์ฟเวอร์เป็นอย่างไรเมื่อเปรียบเทียบกับการควบคุมเวอร์ชันอื่นเช่น Clear-case?

5
ปัญหาใดที่ทำให้คนใช้การเข้ารหัสเฉพาะภาษาญี่ปุ่นมากกว่า Unicode
ที่ทำงานฉันเจอไฟล์ข้อความภาษาญี่ปุ่นจำนวนมากใน Shift-JIS และการเข้ารหัสอื่น ๆ มันทำให้เกิดปัญหาmojibake (อักขระที่อ่านไม่ได้) จำนวนมากสำหรับผู้ใช้คอมพิวเตอร์ทุกคน Unicode มีวัตถุประสงค์เพื่อแก้ไขปัญหานี้โดยการกำหนดชุดอักขระเดียวสำหรับทุกภาษาและแนะนำให้ใช้ serialization UTF-8 สำหรับการใช้งานบนอินเทอร์เน็ต เหตุใดทุกคนจึงไม่เปลี่ยนจากการเข้ารหัสเฉพาะภาษาญี่ปุ่นเป็น UTF-8 ปัญหาอะไรหรือข้อเสียของ UTF-8 กำลังชักจูงผู้คนให้กลับมา? แก้ไข: W3C แสดงปัญหาที่ทราบเกี่ยวกับ Unicodeนี่อาจเป็นเหตุผลด้วยหรือไม่

1
ผลของการสร้างการทดสอบหน่วยในระหว่างการพัฒนาตรงเวลาเพื่อพัฒนารวมถึงเวลาที่ใช้ในกิจกรรมการบำรุงรักษาคืออะไร
ฉันเป็นที่ปรึกษาและฉันจะแนะนำการทดสอบหน่วยให้กับนักพัฒนาทั้งหมดในเว็บไซต์ลูกค้าของฉัน เป้าหมายของฉันคือเพื่อให้แน่ใจว่าแอปพลิเคชันใหม่ทั้งหมดควรมีการทดสอบหน่วยสำหรับคลาสทั้งหมดที่สร้างขึ้น ลูกค้ามีปัญหากับค่าบำรุงรักษาสูงจากการแก้ไขข้อบกพร่องในแอปพลิเคชันที่มีอยู่ แอปพลิเคชันของพวกเขามีอายุการใช้งานตั้งแต่ 5-15 ปีที่พวกเขาเพิ่มคุณสมบัติใหม่อย่างต่อเนื่อง ฉันค่อนข้างมั่นใจว่าพวกเขาจะได้รับประโยชน์อย่างมากจากการเริ่มต้นการทดสอบหน่วย ฉันสนใจผลของการทดสอบหน่วยในเวลาและค่าใช้จ่ายในการพัฒนา: เวลาในการเขียนการทดสอบหน่วยเป็นส่วนหนึ่งของกระบวนการพัฒนาจะเพิ่มเวลาเท่าใด เวลาเท่าไรที่จะถูกบันทึกในกิจกรรมการบำรุงรักษา (การทดสอบและการดีบัก) โดยการทดสอบหน่วยที่ดี?

9
วิธีที่ดีที่สุดในการอ้างอิงข้อมูลฐานข้อมูลคงที่ในรหัส?
แอปพลิเคชันจำนวนมากรวมถึง 'ข้อมูลคงที่': ข้อมูลที่ไม่เปลี่ยนแปลงในช่วงอายุของแอปพลิเคชัน ตัวอย่างเช่นคุณอาจมีรายการพื้นที่ขายที่น่าจะเป็นรายการคงที่สำหรับอนาคตที่มองเห็นได้ ไม่ใช่เรื่องแปลกที่จะหาข้อมูลคงที่นี้ในตารางฐานข้อมูล (บ่อยครั้งเพราะคุณต้องการอ้างถึงในคีย์ต่างประเทศของตารางอื่น ๆ ) ตารางตัวอย่างง่าย ๆ จะมีรหัสที่ใช้เป็นคีย์หลักและคำอธิบาย ตัวอย่างเช่นตาราง SalesArea ของคุณจะมี (อย่างน้อย) คอลัมน์ SalesAreaId และคอลัมน์ SalesAreaDescription ตอนนี้ในรหัสคุณอาจไม่ต้องการให้แต่ละแถวของตารางเหมือนกัน ตัวอย่างเช่นคุณอาจต้องการตั้งค่าพื้นที่ขายเริ่มต้นในบางหน้าจอระบุตัวเลขที่แตกต่างกันสำหรับบางพื้นที่หรือ จำกัด สิ่งที่ผู้ใช้สามารถทำได้ในพื้นที่อื่น วิธีที่ดีที่สุดในการอ้างถึงข้อมูลคงที่ในรหัสคืออะไร? ทำไม? เขียนโค้ดรายละเอียดในรหัสของคุณ ใช้สิ่งนี้เพื่อค้นหา SalesAreaId จากฐานข้อมูลเมื่อคุณต้องการ รหัสฮาร์ดโค้ดในรหัสของคุณ ใช้สิ่งนี้เพื่อค้นหา SalesAreaDescription เมื่อคุณต้องการ เพิ่มคอลัมน์ลงในตารางสำหรับแต่ละวัตถุประสงค์เช่นคอลัมน์ "IsDefaultOnProductLaunchScreen" และอื่น ๆ (อาจมีจำนวนมาก) อื่น ๆ อีก. มีข้อควรพิจารณาพิเศษอื่นใดอีกไหมที่ฉันควรทำเมื่อจัดการกับข้อมูลฐานข้อมูลแบบคงที่? ตัวอย่างเช่นการตั้งชื่อตารางเหล่านี้เป็นพิเศษ?

5
การจัดรูปแบบรหัสเป็นสิ่งที่ไม่ดีเมื่อใช้ VCS?
ฉันเกือบจะฟอร์แมตโค้ดก่อนที่จะส่งมอบเพื่อให้แน่ใจว่ามันถูกต้อง ทีมงานส่วนใหญ่ของฉันไม่สนใจจริงๆและไม่ได้จัดรูปแบบรหัสอย่างถูกต้องเสมอ (สิ่งเล็ก ๆ น้อย ๆ ที่ไม่ส่งผลกระทบต่อรหัส แต่ส่งผลกระทบต่อความสามารถในการอ่านเมื่อพยายามรักษามัน) ฉันเพิ่งติดตั้งเครื่องมือไฟฟ้า VS ที่มีตัวเลือก "ฟอร์แมตเมื่อบันทึก" และทำการเปลี่ยนแปลงไฟล์ที่ไม่ได้ฟอร์แมตมาก่อน รองประธานฝ่ายพัฒนาเพิ่งมาหาฉันและตำหนิฉันสำหรับการจัดรูปแบบเนื่องจากมันปรากฏในเครื่องมือการรวมว่ามีการเปลี่ยนแปลงไฟล์เกือบทั้งหมดแทนที่จะเป็นแค่บรรทัดเดียวหรือสองบรรทัด (ดังนั้นเขาจึงไม่สามารถเห็นสิ่งที่ฉันแก้ไขได้อย่างง่ายดาย) บอกให้ฉันปิดการใช้งานรูปแบบในการบันทึกในอนาคต ในขณะที่ฉันเข้าใจความกังวลนั้นฉันพบว่าบางครั้งยากที่จะจัดเรียงรหัสที่ไม่ได้ฟอร์แมตและ IMO ควรจัดรูปแบบอย่างถูกต้องตลอดเวลา โปรดทราบว่าฉันไม่เพียง แต่จัดรูปแบบสิ่งใหม่ ๆ แต่เมื่อฉันเขียนโค้ดฉันจะใช้เครื่องมือไฟฟ้าหรือกดปุ่มคำสั่งเพื่อจัดรูปแบบข้อความเพื่อให้อ่านง่ายขึ้นและใน SVN สิ่งนี้จะปรากฏเป็น การปรับเปลี่ยน ดังนั้นฉันถามอยู่เสมอว่าการจัดรูปแบบรหัสเป็นสิ่งที่ไม่ดีจริงหรือ ข้อกังวลของเขามีผลมากกว่าการอ่านให้แน่ใจหรือไม่

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

10
สร้างแรงบันดาลใจให้เพื่อนร่วมงานนำวิธีการเข้ารหัสที่ดีกว่า
ในการจัดการคำถามผู้ร่วมงานที่ล้าสมัยของฉันหลายคนพูดถึงกลยุทธ์ในการจัดการกับเพื่อนร่วมงานที่ไม่ต้องการรวมเวิร์กโฟลว์ของพวกเขาเข้ากับทีม ฉันต้องการถ้าเป็นไปได้เพื่อเรียนรู้กลยุทธ์บางอย่างสำหรับ "การสอน" ผู้ร่วมงานที่ไม่รู้เทคนิคและเครื่องมือที่ทันสมัยเพียงอย่างเดียว ฉันเริ่มทำงานกับโปรแกรมเมอร์ที่จนกระทั่งเมื่อไม่นานมานี้ได้ทำงานในความโดดเดี่ยวในส่วนอื่นของ บริษัท เขามีความรู้เกี่ยวกับโดเมนอย่างกว้างขวางและที่สำคัญที่สุดเขาได้แสดงให้เห็นถึงทักษะการแก้ปัญหาที่ดีสิ่งที่ผู้สมัครหลายคนดูเหมือนจะขาด อย่างไรก็ตามรหัส (C #) จริงที่ฉันเคยเห็นคือการย้อนกลับไปสู่ ​​VB6 วัน โครงสร้างขั้นตอน, สัญกรณ์ฮังการี, ตัวแปรทั่วโลก (การละเมิดstatic), ไม่มีส่วนต่อประสาน, ไม่มีการทดสอบ, การไม่ใช้ Generics, การขว้างSystem.Exception... คุณจะได้รับแนวคิด โปรแกรมเมอร์คนนี้ค่อนข้างแก่กว่าฉันและด้วยความประทับใจแรกอย่างน้อยก็ไม่ได้แสวงหาการเปลี่ยนแปลงในเชิงบวก ฉันจะไม่พูดต่อต้านการเปลี่ยนแปลงเพราะฉันคิดว่าส่วนใหญ่เป็นปัญหาของหัวข้อที่ได้รับการเจาะและฉันต้องการที่จะเตรียม โปรแกรมเมอร์มักจะเป็นคนที่ดื้อรั้นและเข้าร่วมกับการจู่โจมปืนและทำการตรวจสอบโค้ดที่ฉีกขาดเป็นชิ้นเล็กชิ้นน้อยและนโยบายที่บังคับใช้อย่างเคร่งครัดมีแนวโน้มว่าจะไม่สร้างผลลัพธ์ที่ฉันต้องการ หากนี่คือการจ้างงานใหม่โปรแกรมเมอร์รุ่นเยาว์ฉันไม่คิดเลยว่าจะมีท่าทาง "ผู้ให้คำปรึกษา" สองครั้ง แต่ฉันก็ระมัดระวังในการปฏิบัติต่อพนักงานที่มีประสบการณ์ในฐานะมือใหม่ที่ไร้เดียงสา (ซึ่งเขาไม่ใช่ - เขาแค่ไม่ ทันกับความก้าวหน้าบางอย่างในสนาม) ฉันจะไปเกี่ยวกับการยกระดับมาตรฐานคุณภาพรหัสของผู้พัฒนานี้ตามวิธี Dale Carnegie ผ่านการโน้มน้าวใจที่อ่อนโยนและสิ่งจูงใจที่ไม่ใช่วัสดุได้อย่างไร อะไรจะเป็นกลยุทธ์ที่ดีที่สุดในการทำให้เกิดการเปลี่ยนแปลงที่ละเอียดและค่อยเป็นค่อยไปโดยไม่ต้องสร้างสถานการณ์ที่เป็นปฏิปักษ์? มีคนอื่น ๆ โดยเฉพาะผู้พัฒนานำ - เคยอยู่ในสถานการณ์แบบนี้มาก่อนหรือไม่? กลยุทธ์ใดที่ประสบความสำเร็จในการกระตุ้นความสนใจและสร้างกลุ่มพลังเชิงบวก กลยุทธ์ใดที่ไม่ประสบความสำเร็จและควรหลีกเลี่ยงได้ดีกว่า ชี้แจง: ฉันรู้สึกว่าหลายคนกำลังตอบตามความรู้สึกส่วนตัวโดยไม่อ่านรายละเอียดทั้งหมดของคำถาม โปรดทราบสิ่งต่อไปนี้ซึ่งควรบอกเป็นนัย แต่ตอนนี้ฉันกำลังชี้แจงอย่างชัดเจน: …

16
ใช้เวลาในการดีบักมากเกินไป
เมื่อวานฉันเปิดตัวโครงการเว็บ v1.0 ที่ฉันใช้เวลาทำงานประมาณ 6 สัปดาห์ (เปิดและปิดนั่นคือ) ฉันไม่ได้ทำบันทึกเวลาที่แน่นอน แต่จากประสบการณ์ของฉันฉันจะประเมินว่าตลอดเวลาที่ฉันใช้การเขียนโปรแกรมครึ่งหนึ่งนั้นใช้การดีบัก ฉันคาดการณ์ว่าจะใช้เวลาในการดีบักประมาณ 15-20 ชั่วโมงซึ่งเป็นเวลาอันมีค่าที่ดีกว่าที่จะใช้การเขียนโค้ดใหม่หรือทำโครงการให้เสร็จเร็วขึ้น โดยเฉพาะอย่างยิ่งมันไม่ได้ช่วยว่าฉันจะเป็นนักศึกษาใหม่ในวิทยาลัยใน 5 สัปดาห์ สิ่งคือฉันรู้สึกไม่ดีที่ใช้เวลาในการดีบั๊กทุกครั้ง เวลาที่ใช้ในการดีบักนั้นทำให้ฉันรู้ว่าฉันทำผิดพลาดโง่ ๆ ในขณะที่ฉันกำลังพัฒนาโครงงานของฉันความผิดพลาดที่ทำให้ฉันต้องใช้เวลาพอสมควรในการแก้ไข ฉันจะป้องกันไม่ให้สิ่งนี้เกิดขึ้นในอนาคตได้อย่างไร ฉันไม่ต้องการใช้จ่าย 50% ของการดีบักเวลาฉันควรใช้การดีบัก 10% และส่วนที่เหลือเขียนโค้ดใหม่ มีเทคนิคอะไรบ้างที่ฉันสามารถพยายามช่วยให้ฉันไปถึงเป้าหมายนี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.