Một chút nền tảng: Người quản lý phát triển hiện tại của tôi sẽ có một cơ hội khác vào cuối tuần này, để lại cho nhóm của chúng tôi với bốn nhà phát triển toàn thời gian, một nhân viên thực tập bán thời gian và một nhà thiết kế web (là một phần kỹ thuật của Marketing, không phải là AppDev). Tại thời điểm này, chúng tôi không quảng bá hoặc tuyển dụng người quản lý mới.
Người quản lý trước sẽ không bao giờ dành thời gian để đưa ra một bộ tiêu chuẩn mã hóa để tuân thủ (để đặt điều này trong viễn cảnh: Kỷ niệm một năm của tôi tại công việc này là trong hai tuần và tôi đã nói chuyện với anh ấy về các tiêu chuẩn kể từ đó Tôi đã bắt đầu). Do đó, tất cả bốn nhà phát triển của chúng tôi viết mã theo cách riêng của chúng tôi: Một số người trong chúng tôi tuân theo các quy ước đặt tên của Microsoft cho .NET, một số sử dụng ký hiệu tiếng Hungary, một số sử dụng hỗn hợp (ví dụ: trộn PascalCase
và camelCase
cho tên tham số) và hoàn toàn ngẫu nhiên khi bạn mở một tệp mã theo tiêu chuẩn mà nó sẽ tuân theo - về điều duy nhất nhất quán là niềng răng nằm trên các dòng riêng biệt.
Hai trong số ba đồng nghiệp của tôi đã tiếp cận tôi để tạo ra một tài liệu mã hóa tiêu chuẩn mà chúng tôi có thể sử dụng và thực thi tiến lên (mặc dù về mặt kỹ thuật tôi không phải là nhà phát triển cao cấp nhất, nhà phát triển thứ tư đã ở đây vài năm, hai đồng nghiệp và nhân viên thực tập tìm cho tôi lời khuyên / hướng dẫn nhưng chúng tôi không có trưởng nhóm). Tôi đã có ý định làm điều này trong một thời gian nhưng người quản lý sắp rời đi sẽ luôn đặt nó vào bộ đốt ngược; sự ra đi của anh ấy bây giờ cho chúng tôi một cơ hội để dành thời gian và cấu hình mọi thứ một cách chính xác để tạo điều kiện cho một môi trường phần mềm thích hợp và không phải là nơi ẩn náu vội vã mà chúng tôi hiện đang có.
Làm thế nào tôi nên làm điều này và giới thiệu tiêu chuẩn này cho nhóm của tôi mà không gây ra ma sát? Tôi không muốn làm cho nó giống như tôi đang "tiếp quản", mặc dù tôi đã đề nghị vị trí quản lý tôi sẽ chấp nhận nó. Như tôi đã nói, hai trong số ba nhà phát triển khác cùng tham gia với tôi tạo ra một, nhưng người thứ tư ("cấp cao" thực sự trong thời gian dài) có thể hoặc không thể chấp nhận nó. Tôi dự định bắt đầu với các quy ước .Net từ Microsoft (ví dụ: không sử dụng Ký hiệu Hungary), thêm một số tùy chọn cá nhân (ví dụ: _camelcase
cho các trường) và đặc biệt gọi ra một số thực tiễn lạ mà chúng tôi sử dụng ở đây là không được sử dụng (ví dụ: đặt tên một lớp với một dấu gạch dưới khi bắt đầu), nhưng tôi nên bao gồm những gì khác? Tôi không muốn đi vào hướng dẫn kiến trúc như ý muốn gây ra ma sát và chúng ta có một cơ sở mã hiện có rất lớn và có mùi, không tuân thủ nó, và chúng ta không ở đâu đến lúc đưa ra chiến lược tái cấu trúc.
Tóm tắt: Ngoài các quy ước đặt tên cơ bản, nếu có bất cứ điều gì, tôi nên đưa vào tài liệu tiêu chuẩn mã hóa (ví dụ sẽ rất tuyệt - tôi đã không tìm thấy bất kỳ ví dụ cụ thể nào về tài liệu đó sẽ như thế nào) và tôi nên làm thế nào trình bày nó cho đội của tôi mà không có âm thanh như nhà độc tài mới.