Copy and paste developer

Là một người mới bước vào con đường trở thành một developer, tôi đã gặp rất nhiều khó khăn, thiếu kiến thức, kỹ năng giải quyết vấn đề. Cách xử lý thường xuyên nhất của tôi là search trên google, tìm kiếm đoạn code, cách xử lý phù hợp, điều chỉnh và copy - paste, vậy là vấn đề đã được giải quyết. Tuy nhiên tôi vẫn thấy không thỏa mãn, tôi muốn có thể tự lực giải quyết vấn đề và tự hỏi rằng liệu mình có đang làm đúng?

Nhưng hãy suy nghĩ lại một chút về thực tế của công việc:

  • Việc biết mọi thứ về lập trình phần mềm gần như là không thể.
  • Chúng ta hiếm khi phải bắt đầu từ đầu mà gần như là luôn làm việc với code có sẵn hơn là một empty project trên IDE
  • Bất cứ điều gì bạn đang xây dựng bây giờ, rất có thể nó đã được hoàn thiện từ lâu rồi. Có bao nhiêu thư viện , framework, API đã được xây dựng (và được test kỹ lưỡng)? Nhờ sử dụng lại chúng, ta sẽ tiết kiệm được tài nguyên như thời gian, nỗ lực cho dự án.
  • Có hàng nghìn các cách giải quyết vấn đề đã được chia sẻ. StackOverflow là một ví dụ điển hình.
  • Thực tế thì hiện nay việc tìm kiếm cách giải quyết nhanh chóng cũng là một kỹ năng cần thiết.

Vậy nên bạn đừng coi thường việc mà bạn đang làm. Copy - paste không phải là xấu, nhưng nó chỉ có ích khi bạn phải hiểu được cách họ giải quyết trước khi áp dụng nó vào vấn đề bạn đang gặp phải. Nếu chỉ kết thúc khi bạn copy code và nó chạy, rất có thể đoạn code đó sau này sẽ sinh ra các bug, và việc bảo trì sẽ trở thành ác mộng.

Một số lời khuyên khi copy - paste:

  • Đọc thêm một số cách giải quyết khác, không chỉ cách được chấp nhận.
  • Nên gõ lại code thay vì copy - paste để khi gặp dòng code nào khó hiểu, dành thêm thời gian để tìm hiểu nó.
  • Điều chỉnh lại code cho phù hợp với trường hợp mình áp dụng.
  • Ghi chú lại vấn đề và cách giải quyết, nếu có thể hãy giải thích cho người khác.

Tóm lại hãy chỉ copy - paste khi bạn thực sự hiểu nó. Thật ra đó cũng là một cách phát triển kỹ năng: Đọc cách người khác giải quyết vấn đề và nghĩ xem liệu có nên áp dụng hay có cách giải quyết nào tốt hơn, chắc chắn kỹ năng giải quyết vấn đề của bạn cũng sẽ cải thiện lên nhiều.

Nguồn tham khảo

https://www.quora.com/I-am-a-copy-and-paste-developer-how-do-I-become-a-real-software-developer