Cải tiến kĩ năng viết mã

Một sinh viên viết cho tôi: “Bạn gái của em học cách viết chương trình chỉ trong vài ngày rồi cô ấy viết thẳng mã ngay nhưng em phải mất ba tuần chỉ viết được vài dòng mã. Chúng em hiện đang học JavaScript và với em dường như cứ mãi mãi chỉ hiểu những điều cơ bản. Làm sao người khác có thể học các thứ nhanh thế còn em lại chậm quá? Em bối rối và thậm chí còn ghen tị với cô ấy. Có kĩ thuật nào nhờ đó em có thể cải tiến việc lập trình của em cho nhanh hơn không?

Đáp: Mọi người học các thứ một cách khác nhau. Chừng nào em đang học cái gì đó, không thành vấn đề nhanh hay chậm thế nào. Có thể bạn gái của em có nền tảng vững mạnh hơn ở trường trung học cho nên cô ấy có thể học các thứ nhanh hơn nhưng em cần biết rằng chính vấn đề là chất lượng chứ không phải tốc độ. Với lí do này điều quan trọng là học qua hành rồi suy ngẫm về công việc của em và cải tiến nó. Em có thể hội tụ vào viết vài câu lệnh một lúc và chắc chúng là đúng rồi em sẽ thấy dễ học cấu trúc của ngôn ngữ hơn vì nó có liên quan tới kinh nghiệm thực tại. Một trong những cách tốt nhất để giữ cho mã nhất quán và có tổ chức là gộp nhóm chức năng với nhau. Chẳng hạn, thay vì tống mọi JavaScript của em vào một tệp main.js, em có thể gộp nhóm chúng vào trong các tệp tách biệt dựa trên tính chức năng, rồi gắn chúng lại một khi em đạt tới bước dựng.

Sau khi viết mã, em nên để thời gian kiểm điểm lại công việc riêng của em hay đề nghị bạn khác kiểm điểm nó lại cho em. Việc kiểm mã là đưa mã của em cho vài người bạn xem để cho em có thể giải thích điều em đã viết, tại sao em làm nó theo cách đó và dựa trên ý kiến phản hồi của họ, em học cách viết tốt hơn. Mục đích của kiểm điểm mã là để tìm ra lỗi và học cải tiến kĩ năng viết mã của em. Tất nhiên, nếu em không muốn xem mã của em, em có thể dùng các công cụ như jslint hay SCSSlint để kiểm mã của em để tìm lỗi. Cách khác để cải tiến kĩ năng viết mã của em là đọc mã của người khác, xem xét cấu trúc dữ liệu và thuật toán của họ và tự hỏi bản thân em tại sao họ làm theo cách đó? Bằng việc kiểm điểm mã tốt, em sẽ học nhiều và khá hơn với mã riêng của em và sẽ tạo khả năng cho em viết tốt hơn trong tương lai.

Việc học ngôn ngữ lập trình yêu cầu thực hành; em càng viết nhiều mã kĩ năng của em càng tốt hơn. Khi em đã làm nó đủ lâu, em sẽ biết mọi cấu trúc của ngôn ngữ đó và nó sẽ trở thành dễ hơn. Về căn bản, em học làm chọn lựa nào từ tri thức riêng của em cũng như các ngoại lệ. Bằng việc có những kĩ năng này thì em có thể viết mã chất lượng cao nhanh hơn. Vài năm trước, một người bạn nhạc sĩ nói với tôi rằng việc học ngôn ngữ lập trình là tương tự như chơi nhạc cụ. Bạn bắt đầu chậm để chắc rằng bạn học mọi điều cơ bản rồi bạn học chơi tương ứng để phát triển kĩ năng của bạn trước khi bạn có thể chơi cùng người khác trong ban nhạc. Anh ấy bảo tôi rằng sau khi bạn đã chơi đủ lâu, bạn biết mọi kiểu nhạc thì bạn có thể chơi chúng theo cách khác và là một nhạc sĩ giỏi.

Lời khuyên cuối cùng của tôi: Đừng so sánh bản thân em với người khác, đặc biệt với bạn gái. Cứ là bản thân em nhưng kính trọng ngườ khác vì em vẫn còn đang học và trưởng thành.

Tác phẩm, tác giả, nguồn

  • Tác phẩm: Lời khuyên cho sinh viên
  • Nguồn: Blog của giáo sư John Vu, Carnegie Mellon University.
  • Wiki hóa: https://kipkis.com

Có thể bạn muốn xem