DANH MỤC TÀI LIỆU
Hướng dẫn cách cải thiện chất lượng code
Cách c i thi n ch t l ng code ấ ượ
Code ch t l ng là đi u mà ai cũng nh c đ n, nh ng ch a ch c đã th c ấ ượ ế ư ư
hi n.
H u h t m i ng i đ u bi t th nào là t t, nh d đ c d hi u, không t n ế ọ ườ ế ế ư
t i l i nghiêm tr ng, cover đ y đ các tr ng h p, self-documenting code ạ ỗ ườ
v.vv.. th nh ng vi c vi t đ c l i khó h n nhi u. Li u ng i khác s ế ư ế ượ ạ ơ ườ
nghĩ sao v nh ng dòng code c a mình, s n m b t 1 cách đ n gi n hay ẽ ắ ơ
coi nó nh ác m ng, th c s là th thách đ i v i m i l p trình viên. Khôngư ỗ ậ
ch th , khi d án c to d n lên, s có ngày chính b n không đ c n i ỉ ế
nh ng gì b n thân đã vi t.ữ ả ế
Có th b n đã bi t: ể ạ ế
Đ không bao gi b qua ch t l ng code, c n ph i t o ra nh ng quy t c ờ ỏ ượ
đ b n có th d a vào, đ luôn tham chi u đ n trong khi làm vi c.ể ạ ể ự ế ế
D i đây là 5 quy t c mà tôi v n th c hi n m i khi code. Chúng giúp tôi ướ ự ệ
đ t năng su t cao trong công vi c, giúp đ ng nghi p c a tôi có th d dàng ể ễ
ti p c n và tri n khai các đo n code c a tôi. Tôi mong r ng chúng cũng có ế ậ
th giúp b n code t t h n! ố ơ
Test
Test là vi c mà ai cũng bi t là nên làm, nh ng đôi khi đ ng tr c áp l c ế ư ứ ướ
th i gian, chúng ta hay l a ch n vi c đi t t. Th nh ng, dù ch là vài dòng ế ư
code đ n gi n cũng có th đ l i h u qu nghiêm tr ng n u chúng ta nghĩ ơ ậ ả ọ ế
ch vi c gì ph i test.ả ệ
Đ 100% đ m b o code ch y t t, không có cách nào khác ngoài test. ạ ố
Hãy b t đ u v i unit test đ ki m tra xem t ng ph n nh có ho t đ ng ắ ầ ể ể ạ ộ
đúng mong mu n hay ch a. Sau đó, d n d n test v i t ng subsystems, và ư ớ ừ
cu i cùng là test trên toàn b h th ng. Th c hi n hoàn ch nh theo trình t ộ ệ
đó s giúp b n d dàng bi t đc n i v n đ có th phát sinh, xu t phát t ế ơ ấ
component đ n l hay subsystem nh nào.ơ ẻ
Đ t tên có ý nghĩa
Đây chính là self-documenting code. Khi b n đ c l i các đo n code cũ, b n ọ ạ
không c n ph i xem k t ng comment hay ph i ch y th đ bi t ý nghĩa ỹ ừ ế
c a đo n code đó là gì.ủ ạ
Hãy đ code có th đ c đ c nh 1 đo n văn ti ng Anh đ n thu n. Đi u ể ọ ượ ư ế ơ
này áp d ng cho c tên bi n, class hay function. Chúng c n đ c đ t tên ế ượ ặ
sao cho không c n gi i thích v n hi u đ c. Thay vì l i bi ng đ là “x”, ầ ả ẫ ể ượ ườ ế
“y”, “z”, hãy l a ch n “width” hay “distance” – nh ng t ng đ i di n cho ữ ạ
th gi i th c.ế ớ
Class và function nên chia nh và tuân theo SRP (Single Responsibility
Principle)
Các class và function nh th c s có ích l i. Tr c h t, chúng cho phép ỏ ự ướ ế
vi c unit test đ c di n ra đ c l p. N u đo n code b n đang ph i test nh , ượ ộ ậ ế
vi c tìm ngu n và s a l i b t c v n đ nào xu t hi n trong khi test ho c ứ ấ
khi tri n khai tr nên d dàng h n. ở ễ ơ
Các class và function nh cũng giúp cho vi c đ c tr n d dàng h n. ệ ọ ơ
Thay vì có m t kh i code kh ng l v i nhi u vòng l p và vô s các bi n, ồ ớ ế
b n có th gi m kh i code đó thành m t function có th ch y nhi u ả ố ạ ề
function khác nh h n. Sau đó b n có th đ t tên cho các function d a trên ỏ ơ ể ặ
ch c năng c a chúng và đó, b n đã có m t đo n code mà con ng i có th ộ ạ ườ
đ c hi u đ c ! ể ượ
SRP mang l i cho b n nh ng l i ích t ng t . Trách nhi m đ n có nghĩa là ữ ợ ươ ự ệ ơ
b n ch c n test m t s ít các edge case và các tr ng h p đó t ng đ i d ỉ ầ ườ ươ
dàng đ debug. Thêm vào đó, vi c đ t tên cho các function sao cho sát v i ệ ặ
th c t cũng tr nên t ng đ i d dàng. Do m i function ch có m t m c ự ế ươ
đích s d ng duy nh t nên các function này đ c đ t tên t ng ng v i ử ụ ượ ươ
m c đích c a nó, tránh đ c vi c ph i đ t tên cho m t function mà c n ượ ả ặ
gi i quy t r t nhi u v n đ khác nhau. ế ấ
B t và x lý các exceptions, ngay c khi b n nghĩ b n không c n ph i ầ ả
làm đi u đó
Các exceptions trong code th ng là các edge cases ho c các errors mà ườ ặ
chúng ta mong mu n đ c gi i quy t b ng cách th c riêng c a mình. Ví ượ ế ằ
d , thông th ng khi m t l i xu t hi n thì ch ng trình s ng ng ch y, ườ ộ ỗ ươ ư
đi u này ch c ch n chúng ta không mu n x y ra trên production – n i các ố ả ơ
end-users đang s d ng. Chúng ta c n xem xét l i đó riêng bi t, có khi ch ử ụ
th xem li u nó có th c s quan tr ng không, hay có th b qua nó. ể ỏ
B n nên th ng xuyên b t và x lý các exceptions m t cách c th ngay ườ ụ ể
c khi b n nghĩ r ng mình không c n ph i làm th . Phòng còn h n ch a. ế ơ ữ
Vi c gi i quy t các exceptions giúp cho b n n m b t đ c các th t ế ượ ứ ự
ki m soát đo n code c a mình m t cách t t h n do b n hi u m t cách c ố ơ
th nh ng gì có th s x y ra n u nh nh ng exceptions xu t hi n hay ể ẽ ế ư
m t đo n code nh g p l i. ỏ ặ
Hi u bi t sâu h n v đo n code làm cho vi c debug tr nên d dàng và ế ơ ề ạ
giúp đo n code có kh năng kháng l i cao h n. ỗ ơ
Logs, logs, logs
Hãy ghi l i log. Không bao gi logs tr nên th a thãi. ở ừ
Các log th c s là c u cánh hàng đ u cho vi c debug và theo dõi ng d ng ự ự
đang ch y trên môi tr ng production. B n nên ghi l i log cho m i b c ườ ỗ ướ
chính c a ch ng trình, b t c tính toán quan tr ng, errors, exceptions hay ươ ấ ứ
k t qu b t th ng nào. Vi c ghi l i log th i gian các s ki n đó di n ra ế ả ấ ườ
cũng có th tr nên h u hi u cho vi c theo dõi. T t c nh ng thông tin này ể ở
giúp cho vi c xác đ nh chính xác b c nào trong h th ng g p s c tr ướ ự ố
nên đ n gi n h n.ơ ả ơ
Có r t nhi u ngôn ng l p trình ph bi n nh Python s d ng h th ng ổ ế ư ệ ố
ghi log riêng v i r t nhi u ch c năng h u ích mà b n có th tìm hi u. N u ớ ấ ế
ph n m m c a b n ch y d i d ng ng d ng SaaS thì có th b n s ạ ướ ạ ứ
mu n cân nh c vi c ghi log t p trung ngoài thi t b . B ng cách này khi m t ế ị
máy ch thu c h th ng g p s c thì b n cũng có th khôi ph c l i các ự ố
logs m t cách d dàng!ộ ễ
thông tin tài liệu
Dưới đây là 5 quy tắc mà bạn nên thực hiện mỗi khi code để giúp bạn đạt năng suất cao trong công việc, dễ dàng tiếp cận và triển khai các đoạn code.
Mở rộng để xem thêm
từ khóa liên quan
xem nhiều trong tuần
yêu cầu tài liệu
Giúp bạn tìm tài liệu chưa có

LÝ THUYẾT TOÁN


×