logo

Đang load dữ liệu

logo devmaster

VIỆN CÔNG NGHỆ VÀ ĐÀO TẠO DEVMASTER

Đào tạo - Phần mềm - Cho thuê nhân sự

  • 0969.609.003
  • 0978.611.889
  • Trang chủ
  • Các khoá đào tạo
    • Chuyên đề WEB - PHP

      • Lập trình web với HTML5 - CSS3- JQuery - Bootstrap - Ajax - [36 giờ]
      • Lập trình web frontend - reactjs - [75 giờ]
      • Lập trình web với mã nguồn mở PHP&MYSQL - PHP FRAMEWORK [126 giờ]

      Chuyên đề Mobile

      • Lập trình Games/Apps trên nền tảng Android - [120 giờ]
      • Lập trình Games/Apps trên nền tảng IOS - [120 giờ]

      Chuyên đề JAVA

      • Ngôn ngữ lập trình hướng đối tượng với java - [40 giờ]
      • Lập trình ứng dụng với java - [100 giờ]
      • Lập trình web site với java framework (JPA, HIBERNATE, SPRING MVC, SPRINGBOOT) - [276 giờ]

      Chuyên đề NETWORK/SECURITY

      • Khoá học Quản trị hạ tầng mạng CCNA v6 - [72 giờ]
      • Khoá học quản trị hệ thống với Windows SERVER 2012- [72 giờ]
      • Chuyên gia bảo mật hệ thống CompTIA + - [110 giờ]

      Chuyên đề .NET

      • Nền tảng lập trình hướng đối tượng với C# - [40 giờ]
      • Lập trình ứng dụng WINDOWS FORM - [100 giờ]
      • Lập trình Web với ASP.NET MVC 5, WebAPI - [145 giờ]

      Chuyên đề khác

      • Ngôn ngũ lập trình C/C++ - [80 giờ]
  • Lập trình cho trẻ em
  • Dịch vụ
    • Đào tạo theo như cầu
    • Cung cấp thiết bị - Phần mềm
    • Tư vấn - Thiết kế mạng hạ tầng
    • Tư vấn - Triển khai dịch vụ mạng
    • Tư vấn - Tư vấn, triển khai giám sát hệ thống
    • Thực tập dự án
  • Lịch khai giảng
  • Tin tức
    • Tin tức và sự kiện
    • Tin hoạt động
    • Tin công nghệ
    • Hội thảo, workshop, Codecam
    • Thông tin việc làm
    • Cẩm nang chia sẻ kiến thức
  • Tiện ích
  • Liên hệ

Tin công nghệ

Sep - 2018

04

Những nguyên tắc cơ bản giúp cải thiện code của bạn

Tin công nghệ

Những nguyên tắc cơ bản giúp cải thiện code của bạn

 

Bài viết này tôi dịch lại từ chia sẻ của một lập trình viên đã có 15 năm kinh nghiệm trong lập trình, anh đã từng code qua rất nhiều ngôn ngữ, nhiều framework. Anh đưa ra những nguyên tắc để code có thể tốt hơn.

1. Tối ưu hóa code hay là code dễ đọc. Bỏ ý định tối ưu hóa đi

Luôn luôn viết code thật đơn giản, điều đó làm cho các lập trình viên khác nhìn vào code của mình sẽ dễ hiểu hơn. Bởi vì thời gian và công sức bỏ ra để đọc và hiểu được code còn tốn gấp nhiều lần so với thời gian bạn ngồi tối ưu code. Nếu bạn cần phải tối ưu code thì hãy làm nó thành module với DI và 100% coverage test

2. Xây dựng kiến trúc đầu tiên

Tôi có nghe nhiều người nói ” Chúng ta cần làm mọi thứ thật nhanh nên chúng ta không có thời gian để làm kiến trúc cho dự án “. Và 99% trong số những dự án đó gặp phải những vấn đề lớn. Nếu viết code mà không suy nghĩ đến kiến trúc của nó vô dụng như kiểu bạn mơ về ham muốn của mình mà không có kế hoạch gì đạt được nó. Trước khi viết dòng code đầu tiên bạn nên hiểu những gì mình sắp làm, làm như thế nào, nó sẽ được sử dụng như thế nào, module , service nào, kiến trúc nó là gì, làm thế nào để test và debug, làm thế nào để update.

3. Test coverage

Test cần thiết cho các dự án của bạn nhưng không phải lúc nào cũng vậy Khi nào bạn cần phải test:

  • Khi bạn viết 1 module, service nhỏ mà ít sử dụng trong khoảng thời gian ít nhất 1 tháng
  • Khi bạn viết mã nguồn mở
  • Khi bạn viết core code và có liên quan đến tài chính
  • Khi bạn có resouces đang update cùng lúc với code Khi nào bạn không cần phải test:
  • Khi bạn vừa mới bắt đầu
  • Khi bạn có 1 team nhỏ và code thay đổi nhanh chóng
  • Khi bạn viết các đoạn mã đơn giản mà có thể dễ dàng test bằng tay

4. Luôn làm thật đơn giản

Đừng viết code phức tạp. Càng đơn giản bao nhiều thì càng ít bug bất nhiêu. Từ đó bạn sẽ càng tốn ít thời gian để debug chúng. Code nên viết những thứ cần thiết, không dư thừa

5. Comments

Comment cho thấy code kém ư. Code tốt dễ hiểu mà không cần comment dòng nào. Nhưng làm thế nào để tiết kiệm thời gian cho lập trình viên mới tiếp cận đến dòng code đó? – Chỉ cần viết những mô tả cơ bản trong tài liệu mô tả phương thức. Điều đó sẽ tiết kiệm thời gian để hiểu và sử dụng được đoạn code đó.

6. Code review

Review code có những mặt tốt và có những mặt không tốt. Bạn có thể tố chức review code nếu bạn có những lập trình viên mà họ hiểu 95% code, và họ có thể cập nhật code đó bất cứ lúc nào mà không tốn quá nhiều thời gian. Nhiều người cho rằng review code là một cách hay để dạy cho những lập trình viên mới nhiều thứ tốt hơn. Tuy nhiên mục đích chính của review code là đảm bảo chất lượng code. Một team tốt, là một team mà mỗi người đều có vai trò riêng của mình và chịu trách nhiệm chính xác về công việc mình làm. Nếu một thành viên muốn hiểu thêm một đoạn code của người khác, thì thành viên kia phải chỉ cho người này và phải đạt đc 30% hiểu được tất cả.

7. Refactoring không hoạt động

Tôi từng nghe rất nhiều câu ” Đừng lo tôi sẽ refactor nó lại trong tương lai”. Và trong tương lai có quá nhiều thứ công nghệ lỗi thời khó sửa, rất nhiều người đã đập đi làm lại. Vì vậy đừng cố mang cục nợ đó vào người, trừ khi bạn có tiền để thuê phát triển lại từ đầu

8. Đừng viết code khi bạn đang mệt mỏi

Khi lập trình viên mệt mỏi họ có thể làm tăng khả năng bị bug từ 2 đến 5 lần. Vì vậy 1 số bước cho rằng chỉ nên làm việc 6h/1 ngày. Công việc tinh thần thì không thể so sánh với công việc cơ bắp được

9. Đừng viết tất cả 1 lần – mà hãy phát triển lặp đi lặp lại

Trước khi viết code vần phân tích và dự đoán, những gì mà khách hàng thực sự cần, sau đó sẽ lựa chọn ra những cái thiết thực nhất như vậy sẽ dễ dàng tạo ra sản phẩm chất lượng và trong thời gian ngắn nhất. Hãy phân tích đi phân tích lại để đánh giá và đưa ra phương án tối ưu nhất.

10. Chạy ra ngoài và làm những gì mình thích

Làm việc có thể tăng khả năng sáng tạo bằng cách tạm dừng công việc và ra ngoài hít thở không khi trong lành, trò chuyện với bạn bè, chơi guitar…

11. Học tập những cái mới khi bạn rảnh

Khi con người ngừng học hỏi họ bắt đầu suy thoái

Bằng những chia sẽ trên mong rằng bạn rút ra cho mình được những bài học, kinh nghiệm để áp dụng vào công việc và cuộc sống, khiến nó trở nên tốt hơn!

Nguồn: Sưu tầm từ internet via Viblo

Các bài viết cùng chủ đề

Việt Nam khả năng thiếu 150.000 đến 200.000 nhân sự IT mỗi năm
Việt Nam khả năng thiếu 150.000 đến 200.000 nhân s...
Tổng quan ngành khoa học máy tính
Tổng quan ngành khoa học máy tính
8 xu thế công nghệ đáng chú ý nhất trong năm 2021
8 xu thế công nghệ đáng chú ý nhất trong năm 2021...
Tìm hiểu về API? Tại sao API lại được trọng dụng!
Tìm hiểu về API? Tại sao API lại được trọng dụng!...
Học ngôn ngữ lập trình nào để bắt kịp xu thế công nghệ năm 2021
Học ngôn ngữ lập trình nào để bắt kịp xu thế công ...
Nên làm việc ở công ty Product hay công ty Outsourcing?
Nên làm việc ở công ty Product hay công ty Outsour...

Các khóa đào tạo chuyên đề

Thiết kế và lập trình Website PHP, Laravel chuyên nghiệp - FullStack
Thiết kế và lập trình Website PHP, Laravel chuyên nghiệp - FullStack
Lập trình ứng dụng trên nền tảng android Lập trình ứng dụng trên nền tảng android
Lập trình Ứng dụng với Công nghệ ASP.NET Core MVC, WebAPI, ReactJS - FullStack

Lập trình Ứng dụng với Công nghệ ASP.NET Core MVC, WebAPI, ReactJS - FullStack
Lập trình ứng dụng với WINDOWS FORM Lập trình ứng dụng với WINDOWS FORM
Lập trình ứng dụng với JAVA (FORM) Lập trình ứng dụng với JAVA (FORM)
Thiết kế và lập trình Ứng dụng với công nghệ Java (Java Framework springBoot, hibernate,...) - FullStack
Thiết kế và lập trình Ứng dụng với công nghệ Java (Java Framework springBoot, hibernate,...) - FullStack
Thiết kế và lập trình website với công nghệ HTML5, CSS3, Javascript, Bootstrapt 4, Jquery Thiết kế và lập trình website với công nghệ HTML5, CSS3, Javascript, Bootstrapt 4, Jquery
Lập trình frontend với reacjs (Full) Lập trình frontend với reacjs (Full)
Viện Công Nghệ Và Đào Tạo Devmaster

DEVMASTER ACADEMY

Địa chỉ: Tầng 6 - Tòa nhà VIỆN CÔNG NGHỆ
Số 25, Vũ Ngọc Phan - Láng Hạ - Đống Đa - Hà Nội

Hotline: 0969 609 003 | 0978 611 889

devmaster.contact@gmail.com

hna.tvchung@gmail.com

CÁC KHÓA HỌC CHUYÊN ĐỀ

  • Thiết kế và lập trình Website PHP, Laravel chuyên nghiệp - FullStack
  • Lập trình ứng dụng trên nền tảng android
  • Lập trình Ứng dụng với Công nghệ ASP.NET Core MVC, WebAPI, ReactJS - FullStack
  • Lập trình ứng dụng với WINDOWS FORM
  • Lập trình ứng dụng với JAVA (FORM)
  • Thiết kế và lập trình Ứng dụng với công nghệ Java (Java Framework springBoot, hibernate,...) - FullStack
  • Thiết kế và lập trình website với công nghệ HTML5, CSS3, Javascript, Bootstrapt 4, Jquery
  • Lập trình frontend với reacjs (Full)
Viện Công Nghệ Và Đào Tạo Devmaster

VIỆN CÔNG NGHỆ VÀ ĐÀO TẠO DEVMASTER - Học thực tế * Làm thực tế * Cam kết việc làm
Copyright by Ⓒ DEVMASTER 2015