Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Kiến trúc tiến hóa và thiết kế nổi dần: Thiết kế dựa theo thử nghiệm, Phần 1 Cho phép thử nghiệm để
Nội dung xem thử
Mô tả chi tiết
Kiến trúc tiến hóa và thiết kế nổi dần: Thiết kế dựa theo thử nghiệm, Phần 1
Cho phép thử nghiệm để điều khiển và cải tiến thiết kế của bạn
Neal Ford, Kiến trúc phần mềm, ThoughtWorks
Tóm tắt: Hầu hết các nhà phát triển nghĩ rằng phần mang lại lợi ích nhất của việc
áp dụng phát triển dựa theo thử nghiệm (TDD) là các thử nghiệm. Tuy nhiên, khi
đã thực hiện đúng, TDD cải thiện thiết kế tổng thể của mã lệnh của bạn. Bài viết
này trong loạt bài kiến trúc tiến hóa và thiết kế nổi dần thông qua một ví dụ mở
rộng sẽ chỉ ra thiết kế có thể rõ nét dần từ các mối quan tâm nổi lên sau các thử
nghiệm như thế nào. Việc thử nghiệm chỉ là hiệu quả phụ của TDD; phần quan
trọng là làm thế nào để nó thay đổi mã lệnh của bạn cho tốt hơn.
Một trong những biện pháp thực tiễn phổ biến để phát triển nhanh là TDD. TDD là
một phong cách viết phần mềm có sử dụng các thử nghiệm để giúp bạn hiểu được
bước cuối cùng của pha xác định các yêu cầu. Bạn viết các thử nghiệm trước khi
bạn viết mã lệnh, củng cố thêm hiểu biết của bạn về những cái mà mã lệnh phải
làm.
Hầu hết các nhà phát triển cho rằng lợi ích hàng đầu thu được từ TDD là tập hợp
toàn diện các thử nghiệm đơn vị mà bạn nhận được. Tuy nhiên, khi thực hiện
đúng, TDD có thể thay đổi thiết kế tổng thể của mã lệnh của bạn thành tốt hơn bởi
vì nó trì hoãn các quyết định cho đến thời điểm hợp lý cuối cùng. Bởi vì bạn
không thực hiện các quyết định thiết kế từ trước, nó bỏ ngỏ cho bạn các tùy chọn
thiết kế tốt hơn hoặc cấu trúc lại để thiết kế tốt hơn. Bài viết này đi từng bước
thông qua một ví dụ để minh họa sức mạnh của việc cho phép thiết kế nổi rõ lên từ
các quyết định xung quanh các thử nghiệm đơn vị.
Về loạt bài viết này
Loạt bài này nhằm mục đích cung cấp một cách nhìn mới mẻ về các khái niệm
thường được bàn luận nhưng khó nắm bắt ý nghĩa của thiết kế và kiến trúc phần
mềm. Thông qua các ví dụ cụ thể, Neal Ford sẽ mang lại cho bạn một nền móng
vững chắc về các biện pháp thực hành nhanh kiến trúc tiến hóa và thiết kế nổi dần.
Bằng cách lùi các quyết định thiết kế và kiến trúc quan trọng đến thời điểm hợp lý
cuối cùng, bạn có thể ngăn ngừa không cho những sự phức tạp không cần thiết
hủy hoại các dự án phần mềm của bạn.
Luồng công việc của TDD