Trong khi bản thân câu hỏi nghe có vẻ ngớ ngẩn, câu trả lời khá quan trọng đối với tôi, vì tôi cảm thấy vấn đề đó ảnh hưởng tiêu cực đến hiệu suất công việc của tôi.
Một chút nền tảng ở đây: Tôi là một nhà phát triển phần mềm cao cấp dày dạn trong một bộ phận phần mềm cỡ trung bình của công ty phi phần mềm. Mặc dù ở trên mức trung bình về mặt kỹ thuật của mọi thứ, tôi lại kém hơn nhiều trong việc giao tiếp và giải thích mọi thứ. Ngay cả khi giải thích một cái gì đó cho các nhà phát triển khác.
Những khó khăn nhất xảy ra khi tôi giải thích cách một đoạn mã nhỏ cụ thể hoạt động.
Điều buồn cười là, việc giải thích và cung cấp các ví dụ về cách một thứ gì đó hoạt động ở mức cao hơn nhiều, ví dụ như sự tương tác giữa các mô-đun và hệ thống con riêng biệt, đối với tôi dễ dàng hơn nhiều.
Để làm cho nó rõ ràng hơn, cái mà tôi gọi là "kỹ năng giải thích mã nguồn" là một
a) khả năng giải thích rõ ràng luồng thực thi của mã - ví dụ: "điều này gọi điều đó là điều đó, trả về đối tượng đó, sau này gọi phương thức A, chuyển đối tượng B đến ..."
a) khả năng giải thích rõ ràng các vấn đề với thiết kế hiện tại, hoặc, điều quan trọng hơn, hàm ý của mã nguồn thay đổi như trong "nếu, vì lý do hiệu năng, chúng ta bắt đầu lưu trữ đối tượng như một trường của lớp, chúng ta sẽ có để sửa đổi ở mười nơi khác nhau để đảm bảo rằng bộ đệm luôn ở trạng thái cập nhật ", v.v.
Tôi đã cố gắng phân tích lý do tại sao tôi lại tệ trong việc giải thích mọi thứ và không tìm thấy bất kỳ lời giải thích nào ngoại trừ có thể tôi giải thích mọi thứ theo cách gạch đầu dòng, điều mà một số người có thể thấy quá cứng nhắc. Ngoài ra khi tôi giải thích những điều có lẽ tôi tập trung quá nhiều vào những gì tôi nói và bỏ lỡ những câu hỏi, những gì mọi người hỏi, nhưng một lần nữa với tôi cảm giác như những câu hỏi này thường không liên quan và chỉ đơn giản là kéo cuộc trò chuyện đi.
Những gì bạn có thể đề xuất (ngoại trừ "thực tiễn làm cho nó hoàn hảo", thứ mà tôi không thực sự mua, vì tôi nghĩ rằng tôi có thể sẽ thực hành nhiều lỗi tương tự hết lần này đến lần khác) để tôi có thể cải thiện nguồn kỹ năng giải thích mã.