Viết mã đơn giản sẽ thực sự rất đơn giản nếu chúng ta không làm cho nó “sẵn sàng trong tương lai”- điều này làm chúng trở nên phức tạp. Một khi có thể gạt bỏ được suy nghĩ này, mã của chúng ta không chỉ trở thành mã đơn giản thực sự mà chúng còn giúp chúng ta trở thành một nhà phát triển chuyên nghiệp hơn.
Càng xa càng tốt
Lập trình rất khó. Khi bạn viết một chương trình, có thể ở bất kỳ dòng mã nào bạn có thể sẽ phạm sai lầm. Dù sai lầm lớn hay nhỏ thì tất cả đều mất thời gian để tìm và khắc phục sự cố.
Và đôi khi, bạn chỉ cần một con vịt cao su.
Khái niệm vịt cao su được đề cập đầu tiên bởi Deane Parker trong bài viết “Làm thế nào để nói chuyện trong hội nghị tốt”_ nơi ông mô tả thực hành một bài thuyết trình bằng tiếng nói để làm nó trở nên tốt hơn.
Ý tưởng sử dụng một con vịt ghi điểm ở cách thực hiện đơn giản nhưng mang lại hiệu quả. Vịt cao su là một vật kiên nhẫn, không phán xét hay làm mất thời gian của bạn. Tuy vậy, thậm chí ngay cả khi chỉ là một thứ vô tri vô giác, chúng cũng có thể đem lại một kết quả tốt đẹp ngoài mong đợi.
Khi bạn xem mã của mình, giải thích từng dòng mã của mình cho con vịt cao su, bạn dừng lại và suy nghĩ về tính huống từ bên ngoài. Bạn có thể đánh giá lại bản thân và có được cái nhìn khách quan về những thứ mình đã viết. Và từ những chiêm nghiệm ấy, bạn có thể tìm được câu trả lời cho những vấn đề của bạn.
Mỗi lần viết một thành phần tái sử dụng là không cần thiết
Một số người lập luận rằng bạn nên luôn cố gắng làm cho các thành phần của mình có thể tái sử dụng càng nhiều càng tốt, bởi vì khi làm được điều này bạn phải xử lý tất cả các vấn đề một cách chất lượng để tạo ra phần mềm tốt hơn. Điều này sẽ rất thuyết phục nếu mục tiêu duy nhất bạn là tạo ra phần mềm tốt nhất trên thế giới, tuy nhiên, chẳng ai trả tiền cho bạn để làm điều đó cả.
Bạn đang được trả tiền để viết một phần mềm đủ chất lượng trong một khoảng thời gian nhất định. Nếu bạn tốn quá nhiều thời gian không cần thiết để “mạ vàng” mã của mình, điều này gây ra lãng phí không đáng có. Bạn nên đặt ra một mức độ tốt nào đó cho sản phẩm phẩm này và tuân theo nó, điều này giúp cho việc viết chương trình với các mã đơn giản hơn nhiều.
You Aren’t Gonna Need It _ một thực hành lập trình cực đoan
YouArentGonnaNeedIt (thường được viết tắt là YAGNI) là một thực hành lập trình “cực đoan”, trong đó nêu rõ:
“Luôn luôn thực hiện mọi thứ khi bạn thực sự cần chúng, không bao giờ thực hiện cho đến khi bạn thấy rằng bạn cần chúng”
Có hai lý do chính cho những điều trên:
Bạn tiết kiệm thời gian vì bạn tránh viết mã không bắt buộc
Mã của bạn tốt hơn vì bạn tránh làm “ô nhiễm” nó với những dự đoán không cần thiết
Làm điều đơn giản nhất có thể
Lập trình “cực đoan” đề cập đến hai quy tắc vàng để viết mã đơn giản:
Đầu tiên, làm một khả năng mới theo cách đơn giản nhất mà bạn cho là “có khả năng thực hiện”. Đừng xây dựng nhiều cấu trúc tuyệt vời hay bất cứ điều gì lạ, chỉ cần làm cho nó hoạt động là được. Điều bạn cần làm là viết mã sao cho chúng có thể vượt qua Bài kiểm tra đơn vị (Unit Test) cho tính năng mới.
Thứ hai và cũng là quan trọng nhất trong quy tắc này đó là cấu trúc lại hệ thống để mã trở nên đơn giản nhất có thể, trong đó bao gồm tất cả tính năng hiện có. Thực hiện theo quy tắt của AfterAndOnlyOnce và các quy tắc chất lượng mã khác để làm cho hệ thống mã sạch nhất.
Lần tới khi bị mắc kẹt ở đâu đó, hãy thử vịt cao su
Hệ thống lại sau khi gặp phải các lỗi, vấn đề và các câu hỏi hóc búa là một phần cơ bản của lập trình. Vì vậy, phát triển các kỹ năng vượt qua các lỗi và tìm đường thoát khỏi những ràng buộc cũng quan trọng như học tất cả các cú pháp.
Vì vậy, đi ra ngoài và tìm con vịt cao su của riêng bạn, hãy chọn bất cứ con nào mà bạn cảm thấy thoải mái và phù hợp với tính cách của mình.
Bây giờ bạn đã biết làm cách nào để viết mã đơn giản cho chương trình của mình. Như Chris Pine đã nói "Lập trình không phải là về những gì bạn biết; đó là về những gì bạn có thể tìm ra.", do đó, không ngừng khám phá cái mới là cách tốt nhất để bạn thành công trở thành một nhà lập trình chuyên nghiệp.
Nguồn Tổng hợp
---
JT1 - IT Recruitment Agency Email: hi@jt1.vn
Website: https://www.jt1.vn
Blog: https://www.jt1.vn/blog Điện thoại: +8428 6675 668 Facebook: https://www.facebook.com/jt1asia/
Comentários