Theo như tôi có thể nói, tuyên bố làm bạn bối rối là một sự thỏa hiệp thực dụng được đưa ra để các hướng dẫn phục vụ đối tượng càng rộng càng tốt. Tùy thuộc vào ngữ cảnh cụ thể của bạn (nhiều hơn ở bên dưới), bạn có thể có một tùy chọn để điều chỉnh nó và sử dụng hiệu quả hơn các hướng dẫn.
Bạn thấy, hướng dẫn đề cập đến "sự phản đối cá nhân mạnh mẽ" như là một biện pháp để biện minh cho hành vi vi phạm. Những phản đối như vậy không phải là một cái gì đó để bỏ qua một cách nhẹ nhàng, đặc biệt nếu những điều này đến từ các nhà phát triển có kinh nghiệm.
Những phản đối này có thể sai, làm phiền bạn, nhưng (và đây là một NHƯNG rất LỚN) họ cũng có thể chỉ ra rằng một quy tắc cụ thể là sai - nói chung hoặc trong bối cảnh của dự án cụ thể (một ví dụ về sai quy tắc là một yêu cầu để cung cấp đăng nhập chi tiết trong mã quan trọng hiệu suất).
Tôi nghĩ rằng bất kỳ hướng dẫn phong cách hợp lý nào cũng nên tính đến những điều trên và cố gắng đáp ứng nhu cầu có thể để tự điều chỉnh. Bây giờ, nếu hướng dẫn làm bạn bối rối chỉ nhắm mục tiêu đến các nhóm trưởng thành với các quy trình và môi trường hiệu quả và trơn tru, thì có thể được nêu ít mơ hồ hơn, ví dụ như thế này:
Các quy tắc nên được tuân thủ nghiêm ngặt, trừ khi một thách thức được đưa ra đối với chúng - trong trường hợp đó, quy tắc bị thách thức nên được bỏ qua cho đến khi điều này được giải quyết - bằng cách từ chối thách thức hoặc chấp nhận nó và điều chỉnh các quy tắc cho phù hợp.
Bạn có thể thích những điều trên tốt hơn và bạn có thể muốn nó như vậy ở mọi nơi, cho mọi người, nhưng hãy nhìn kỹ hơn vào phần "thách thức được nâng lên / bỏ qua / điều chỉnh" và tự hỏi làm thế nào nó có thể được thực hiện. Tự hỏi mình có thể mất bao lâu tùy thuộc vào dự án và nhóm. Nếu nó mất một giờ, điều đó có thể chấp nhận? Điều gì nếu nó mất một ngày, hoặc một tuần, hoặc ... một tháng?
Bạn thấy đấy, cách tiếp cận thách thức và bỏ qua cho đến khi được giải quyết có thể mở ra một cánh cửa rộng lớn cho sự lạm dụng nếu nó được trình bày như một hướng dẫn cho bất kỳ dự án nào. "Vâng vâng, chúng tôi nghe thấy bạn, hãy làm theo hướng dẫn nói. Trước tiên, hãy điền vào mẫu thử thách này và nhận được sự chấp thuận của CEO / CFO / CTO; mong đợi điều này sẽ mất một hoặc hai tuần. Sau đó, hãy đợi cho đến khi chúng tôi cập nhật kiểm tra mã của chúng tôi ; điều đó có thể mất một hoặc hai tuần nữa. Trong khi đó, vui lòng đảm bảo rằng mã hiệu suất quan trọng của bạn nôn ra các báo cáo ghi nhật ký được định dạng chính xác về mỗi lần di chuyển đăng ký. "
Tôi không thể đọc được suy nghĩ của các tác giả hướng dẫn nhưng có vẻ hợp lý khi cho rằng họ muốn tránh sử dụng nó để biện minh cho một mớ hỗn độn như mô tả ở trên. Từ quan điểm này, đơn giản là an toàn hơn để nói rõ rằng hướng dẫn không giả định bất kỳ sự thực thi nào - theo cách này, tuy vụng về, vẫn cho phép nó có thể sử dụng được cho một loạt các nhóm và dự án tùy ý. Có lẽ có một kỳ vọng rằng một khoản trợ cấp rộng như vậy sẽ khiến các đội trưởng thành và hiệu quả hơn có cơ hội thu hẹp hợp lý mà không làm giảm năng suất của nhà phát triển.
Áp dụng cho trường hợp cụ thể của bạn, viết tài liệu kiểu mã hóa cho nhóm của bạn và không xem xét mã nếu kiểu không khớp - Tôi nghĩ bạn cần tính xem mất bao lâu để các nhà phát triển thách thức quy tắc cụ thể, bỏ qua nó, đã giải quyết và thay đổi hoặc khôi phục tùy theo độ phân giải.
Nếu bạn tìm ra cách để làm cho quá trình này hoạt động mà không đưa ra nhiều trở ngại vào quy trình phát triển của mình, thì cách tiếp cận thử thách / giải quyết chính thức và dễ theo dõi thực sự đáng để xem xét thay vì "vi phạm nếu bạn khóc đủ lớn".
Là một lưu ý phụ, tôi muốn giải quyết những gì bạn đã viết trong một bình luận khác , "Giả sử rằng phong cách mã hóa là lý tưởng, và nếu đó không phải là trường hợp, v.v."
Đây là một giả định nguy hiểm, thực sự. Tôi đã bị gãy mũi trên nó (hai lần! Trong một dự án duy nhất! Nơi tôi có nhiều kinh nghiệm và tưởng tượng rằng tôi biết mọi thứ về nó, hãy tìm hiểu) và tôi thực sự khuyên bạn nên bỏ nó. Sẽ an toàn hơn khi cho rằng hướng dẫn phong cách có thể có lỗi và đặt nỗ lực suy nghĩ về những việc cần làm trong trường hợp những lỗi đó được phát hiện.