Tôi đã làm việc cho một công ty lớn (hơn 8000 nhân viên) gần 2 năm nay và được tuyển dụng ngay sau khi tôi hoàn thành khóa học.
Mọi người ở đây phải đối phó hàng ngày với mã kế thừa thường được thiết kế rất tệ và đầy rẫy. Lúc đầu, tôi giữ một hồ sơ thấp, cố gắng không chỉ trích mọi thứ quá nhiều. Nhưng tình hình, như hiện tại, đã trở nên rất khó sống và dường như không ai sẵn sàng cải thiện / thay thế các công cụ chúng ta sử dụng.
Để rõ ràng hơn, chúng tôi có:
- Một công cụ kiểm soát nguồn lỗi thời (Visual SourceSafe)
- Makefiles cũ đơn giản chỉ hỗ trợ xây dựng lại đầy đủ
.def
các tệp phải được duy trì thủ công và riêng cho tất cả các kiến trúc hiện có- Các tệp và dự án tiêu đề nguyên khối có rất ít tệp khác nhau (nhưng mỗi tệp có khoảng 3000 dòng mã, đôi khi đảm nhiệm các nhiệm vụ rất khác nhau)
- không sử dụng các phương tiện ngôn ngữ "mới" (cũng
std::string
không phải là mới nhưng không ai ngoại trừ tôi sử dụng nó)
Tôi đã quyết định, một vài tháng trước để làm một cái gì đó về nó, bằng cách thiết kế một môi trường biên dịch mới. Tôi có thể có các bản dựng tăng dần để hoạt động đáng tin cậy, thời gian biên dịch nhanh hơn, các dự án có cấu trúc tốt hơn, .def
tạo tệp tự động . Tôi thậm chí đã tạo một cầu nối từ / đến Git đến / từ Visual SourceSafe.
Tôi đã cho thấy thành tích của mình cho một số đồng nghiệp và ông chủ của chúng tôi nhưng nó giống như không ai quan tâm. Tất cả họ đều như "Chà ... mọi người đã quen làm theo cách đó bây giờ. Tại sao chúng ta sẽ thay đổi mọi thứ?"
Những thay đổi tôi đề xuất được thiết kế để chúng tôi có thể có sự chuyển đổi mềm mại từ hệ thống cũ sang hệ thống mới. Mỗi cải tiến có thể được áp dụng riêng biệt và an toàn.
Tôi thậm chí đã cố gắng để một số đồng nghiệp của tôi tham gia vào các thay đổi. Nhưng cho đến nay, không có thành công.
Bạn đã phải đối mặt với một tình huống tương tự? Người ta có thể làm gì khi "dẫn dắt bằng ví dụ" không hoạt động?