Lập trình hiệu quả luôn là thách thức đối với bất cứ lập trình viên nào. Trong bài viết này, chúng ta sẽ cùng xem một số điều có thể giúp bạn thay đổi để nâng cao kỹ năng lập trình và tiến bộ hơn trong sự nghiệp của mình. Tuy ngắn gọn nhưng những mẹo này không dễ để áp dụng một cách hiệu quả. Cho dù bạn mới vào nghề hay đã là một lập trình viên đã có hàng chục năm kinh nghiệm, những mẹo này luôn có ích đối với bạn. Hãy cùng xem những mẹo đó là gì?
1 – Chia nhỏ chương trình của bạn thành các hàm.
2 – Nếu đã đến giờ rời công ty mà bạn vẫn chưa giải quyết được vấn đề: hãy tắt máy tính và để việc đó cho ngày hôm sau. Đừng nghĩ đến nó nữa.
3- Nguyên tắc YAGNI: “You aren’t gonna need it” , tạm dịch là “Bạn không cần nó”. Nguyên tắc này nói rằng đừng làm gì nhiều hơn những gì bạn được yêu cầu. Đừng đoán trước tương lai và chỉ cần tạo ra thứ gì đó hoạt động càng sớm càng tốt. Chỉ lập trình những phần cần thiết để giải quyết vấn đề hiện tại.
4 – Bạn không cần phải biết mọi thứ cũng như tất cả các framework hiện có. Điều quan trọng là kiến thức nền tảng. Nắm vững về ngôn ngữ trước khi bắt đầu với framework và tìm hiểu những điều cơ bản như nguyên tắc SOLID hoặc cách viết mã sạch.
5 – KISS: “Keep it simple, stupid” hoặc “giữ cho nó đơn giản một cách ngu ngốc” là một nguyên tắc thiết kế nói rằng hầu hết các hệ thống hoạt động tốt nhất nếu chúng được giữ đơn giản thay vì phức tạp. Và mặc dù điều này nghe có vẻ đơn giản và hợp lý, nhưng đôi khi lại rất khó để đạt được.
6- Đừng nghĩ quá nhiều.
7 – Nếu bạn gặp vấn đề hoặc bug khó nhằn, hãy bỏ qua và quay lại sau. Bạn có thể tìm ra các giải pháp tốt nhất khi đang trên đường từ nhà đến công ty, hoặc thậm chí khi đang tắm. Bạn cũng nên đi dạo khiđang tức giận với khách hàng hoặc với đồng nghiệp, sẽ giúp ích rất nhiều.
8 – Học cách viết các test hữu ích và làm theo mô hình TDD(Test-driven development) . TDD là một quá trình phát triển phần mềm dựa trên sự lặp lại của một chu kỳ phát triển rất ngắn: viết bài test, chạy tất cả các bài test và xem có bị lỗi không, viết code, chạy các bài kiểm thử, điều chỉnh lại mã nguồn, lặp lại.
9 – Giải quyết vấn đề trước và sau đó viết code. Đừng bắt đầu viết code mà không biết phải làm gì.
10 – Đừng ghi nhớ code, thay vào đó hãy hiểu logic.
11- Nếu bạn sao chép một giải pháp từ Stack Overflow hay bất kỳ nguồn nào, hãy đảm bảo rằng bạn hiểu nó. Học cách sử dụng Stack Overflow một cách hiệu quả.
12 – Nếu bạn muốn học điều gì đó, hãy thực hành. Đưa ra các ví dụ và thể hiện trên code bởi vì đọc về một cái gì đó là không đủ.
13 – Thường xuyên nghiên cứu code của người khác và để người khác nghiên cứu code của bạn. Lập trình cặp và đánh giá code là một ý tưởng hay.
14 – Đừng phát minh lại bánh xe.
15 – Code của bạn là tài liệu tốt nhất.
16 – Biết cách lên google các thứ. Muốn vậy, bạn cần phải có kinh nghiệm và đọc nhiều để biết mình nên tìm kiếm thế nào cho hiệu quả.
17 – Code của bạn sẽ cần được duy trì bởi chính bạn hoặc bởi những người khác trong tương lai, vì vậy hãy nghĩ đến người đọc code của bạn khi lập trình. Đừng cố gắng trở thành người thông minh nhất. Làm cho việc đọc code giống như bạn đang đọc một câu chuyện.
18 – Cách tốt nhất để giải quyết lỗi với google là sao chép và dán.
19 – Không bao giờ bỏ cuộc. Bằng cách này hay cách khác, bạn sẽ giải quyết được vấn đề. Có những ngày tồi tệ, nhưng rồi sẽ qua.
20 – Nghỉ ngơi, nghỉ ngơi và nghỉ ngơi. Cách tốt nhất để giải quyết vấn đề là đầu óc được nghỉ ngơi.
21 – Học cách sử dụng các software design patterns. Design patterns là giải pháp cho các vấn đề thường gặp trong thiết kế phần mềm. Mỗi patterns giống như một bản thiết kế mà bạn có thể tùy chỉnh để giải quyết một vấn đề thiết kế chung trong code của mình. (Đừng phát minh lại bánh xe)
22 – Sử dụng các công cụ tích hợp và tự động hóa nhiều nhất có thể.
23 – Luyện tập code katas. Code kata là một bài tập về lập trình giúp các lập trình viên nâng cao kỹ năng thông qua thực hành và lặp đi lặp lại. Xem ví dụ ở đây.
24 – Chương trình thông qua interface, không phải implementation. Dependency Injection là bắc buộc. Xem nguyên tắc SOLID. Có thể hơi khó hiểu và bạn nên xem thêm bài viết về vấn đề này tại đây.
25 – Refactor -Test-Refactor. Tái cấu trúc là một kỹ thuật để tái cấu trúc code hiện có, thay đổi và cải thiện cấu trúc bên trong mà không thay đổi hành vi bên ngoài của nó.
26 – Hãy yêu cầu giúp đỡ khi cần. Đừng để mất thời gian.
27 – Tập luyện để hoàn hảo hơn.
28 – Mặc dù đôi khi các comments có thể giúp ích nhưng đừng quá chú ý đến chúng. Chúng có thể đã lỗi thời.
29 – Hiểu rõ môi trường phát triển của bạn và sử dụng một môi trường đủ mạnh, chẳng hạn như IntelliJ.
30 – Sử dụng lại các components.
31 – Khi phát triển một ứng dụng web, hãy nghĩ đến các thiết bị di động và các các giới hạn của thiết bị.
32- Không tối ưu hóa hoặc cấu trúc code lại sớm. Điều quan trọng hơn là phải có một sản phẩm khả thi tối thiểu (minimum viable product) càng sớm càng tốt.
33 – Đừng bao giờ chọn một con đường tắt không hiệu quả để tiết kiệm vài phút. Mỗi khi bạn lập trình, hãy cố gắng hết sức!
34 – Tuân theo các tiêu chuẩn đã được thiết lập.
35 – Người dùng không phải dân kỹ thuật. Hãy nghĩ về điều đó khi bạn phát triển giao diện người dùng.
36 – Luôn sử dụng hệ quản lý mã nguồn như Github hoặc bitbucket và thực hiện các commit git nhỏ và thường xuyên.
37 – Tốt hơn là sử dụng log hơn là gỡ lỗi. Ghi log tất cả các phần quan trọng.
38 – Hãy nhất quán khi viết code. Nếu bạn sử dụng một kiểu, hãy luôn sử dụng cùng một kiểu. Nếu bạn làm việc với nhiều người, hãy sử dụng cùng một phong cách với tất cả mọi người trong nhóm.
39 – Không ngừng học hỏi, nhưng hơn cả các ngôn ngữ hoặc framework mới, hãy tập trung vào những kiến thức cơ bản về phát triển phần mềm.
40 – Và cuối cùng, hãy kiên nhẫn và yêu thích những gì bạn làm. Đó có lẽ là điều quan trọng để có động lực học hỏi, nâng cao kỹ năng lập trình và tiến bộ mỗi ngày.
Trên đây là những mẹo và nguyên tắc giúp các lập trình viên nâng cao kỹ năng của mình. Như đã nói ở trên dù không đơn giản để áp dụng tất cả nhưng nếu bạn có những tuân thủ, chúng sẽ giúp bạn thay đổi rất nhiều trong sự nghiệp của mình.