30
จะทำอย่างไรกับไฟล์ต้นฉบับ C ++ 11,000 บรรทัด
ดังนั้นเราจึงมีไฟล์ต้นฉบับขนาดใหญ่ (มีขนาด 11,000 บรรทัดหรือไม่) ไฟล์ mainmodule.cpp ในโครงการของเราและทุกครั้งที่ฉันต้องแตะมันฉันประจบประแจง เนื่องจากไฟล์นี้มีขนาดกลางและใหญ่มากจึงมีการสะสมรหัสมากขึ้นเรื่อย ๆ และฉันไม่สามารถนึกถึงวิธีที่ดีที่จะทำให้มันเริ่มหดตัวลง ไฟล์ถูกใช้และเปลี่ยนแปลงอย่างแข็งขันในหลายเวอร์ชันการบำรุงรักษา (> 10) ของผลิตภัณฑ์ของเราดังนั้นจึงเป็นการยากที่จะปรับโครงสร้างใหม่ ถ้าฉันจะแยก "ง่ายๆ" ให้พูดเพื่อเริ่มต้นเป็น 3 ไฟล์จากนั้นการรวมการเปลี่ยนแปลงกลับจากเวอร์ชันการบำรุงรักษาจะกลายเป็นฝันร้าย และถ้าคุณแบ่งไฟล์ด้วยประวัติที่ยาวนานและเต็มไปด้วยเช่นนั้นการติดตามและตรวจสอบการเปลี่ยนแปลงเก่า ๆ ในSCCประวัติศาสตร์นั้นจะยากขึ้นมาก ไฟล์นั้นมี "คลาสหลัก" (การมอบหมายงานภายในและการประสานงานหลัก) ของโปรแกรมของเราดังนั้นทุกครั้งที่มีการเพิ่มฟีเจอร์มันจะมีผลกับไฟล์นี้และทุกครั้งที่มันเติบโต :-( คุณจะทำอะไรในสถานการณ์นี้ มีแนวคิดใดบ้างเกี่ยวกับวิธีย้ายฟีเจอร์ใหม่ไปยังไฟล์ต้นฉบับที่แยกต่างหากโดยไม่ทำให้SCCเวิร์กโฟลว์ยุ่งเหยิง? (หมายเหตุเกี่ยวกับเครื่องมือ: เราใช้ C ++ ด้วยVisual Studio; เราใช้AccuRevเป็นSCCแต่ฉันคิดว่าประเภทของSCCไม่สำคัญที่นี่; เราใช้Araxis Mergeเพื่อทำการเปรียบเทียบจริงและการรวมไฟล์)