Siêu thị PDFTải ngay đi em, trời tối mất

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: Tái cấu trúc mã nguồn hướng theo thiết kế pdf
MIỄN PHÍ
Số trang
22
Kích thước
480.6 KB
Định dạng
PDF
Lượt xem
863

Kiến trúc tiến hóa và thiết kế nổi dần: Tái cấu trúc mã nguồn hướng theo thiết kế pdf

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: Tái cấu trúc mã nguồn hướng theo

thiết kế

Tìm và thu thập thiết kế ẩn trong mã của bạn

Neal Ford, Kiến trúc phần mềm, ThoughtWorks

Tóm tắt: Các bài viết trước đây của loạt bài viết này thảo luận về việc kiểm thử

đơn vị giúp bạn có một thiết kế tốt hơn như thế nào. Nhưng nếu bạn đã có rất

nhiều mã, thì làm thế nào bạn có thể khám phá các yếu tố thiết kế ẩn bên trong các

mã đó? Bài viết trước đã bàn về xây dựng các đích cấu trúc cho mã của bạn. Trong

bài viết này, tác giả Neal Ford của của loạt bài viết mở rộng các ý tưởng đó và nói

về các kỹ thuật sử dụng tái cấu trúc mã nguồn để cho phép thiết kế nổi dần lên.

Trong hai bài viết "Thiết kế hướng kiểm thử, phần 1" và "Thiết kế hướng kiểm

thử, phần 2," tôi đã nói về cách mà việc kiểm thử có thể dẫn đến thiết kế tốt hơn

cho các dự án mới. Trong phần "Phương thức hợp thành và SLAP," (N.D: SLAP

là viết tắt “single level of abstraction principle” - nguyên tắc chỉ một mức trừu

tượng) tôi có nói về hai mẫu trọng yếu — phương thức hợp thành và nguyên tắc

chỉ một mức trừu tượng — hai mẫu này mang lại cho bạn một cái đích tổng thể

cho cấu trúc mã của bạn. Hãy ghi nhớ các mẫu này. Khi bạn có một dự án phần

mềm đang tồn tại rồi, thì tuyến đường để phát hiện và thu thập các yếu tố thiết kế

nằm trong việc cấu trúc lại mã nguồn. Trong cuốn sách kinh điển Tái cấu trúc mã

nguồn, của mình, Martin Fowler đã định nghĩa tái cấu trúc mã nguồn "là một kỹ

thuật có quy tắc để cấu trúc lại phần chính yếu hiện tại của mã, thay đổi cấu trúc

bên trong của nó mà không thay đổi hành vi bên ngoài của nó" (xem phần Tài

nguyên). Cấu trúc lại mã nguồn là một phép chuyển đổi cấu trúc có mục đích. Có

một cơ sở mã dễ cấu trúc lại là một mục tiêu đáng khen ngợi của bất kỳ dự án nào.

Trong bài viết này, tôi nói về cách sử dụng việc tái cấu trúc mã nguồn như thế nào

để tìm ra một thiết kế chưa được sử dụng đúng mức còn ẩn giấu trong mã của bạn.

Về loạt bài viết này

Loạt bài viết này nhằm cung cấp một phối cảnh tươi mới về các khái niệm thường

được thảo luận nhưng khó nắm bắt về kiến trúc và thiết kế phần mềm. Thông qua

các ví dụ cụ thể, Neal Ford mang đến cho bạn một nền tảng vững chắc cho cách

làm thực tế lanh lẹn của kiến trúc tiến hóa và thiết kế nổi dần. Bằng cách trì hoãn

các quyết định quan trọng về thiết kế và kiến trúc cho đến thời điểm quyết định

cuối cùng, bạn có thể ngăn ngừa được những phức tạp không cần thiết không để

chúng ngầm phá hoại các dự án phần mềm của bạn

Các kiểm thử đơn vị là cái lưới an toàn chính cho phép bạn tuỳ ý cải tiến cơ sở mã

của mình. Nếu bạn có mức bao quát kiểm thử là 100 phần trăm mã của dự án của

mình, thì bạn có thể cấu trúc lại mã của mình mà không gặp rắc rối nào. Nếu bạn

không theo đuổi mức kiểm thử đó, thì việc quá hăng hái cấu trúc lại mã nguồn sẽ

nguy hiểm hơn. Các thay đổi được khoanh vùng rất dễ áp dụng và bạn có thể thấy

tác dụng ngay lập tức của chúng, nhưng các rạn vỡ do tác dụng phụ lâu dài về sau

này sẽ làm cho bạn điêu đứng. Phần mềm sẽ dẫn đến những điểm kết dính không

mong muốn, và một thay đổi nhỏ đối với một phần của mã có thể lan truyền qua

cơ sở mã, gây ra lỗi cho hàng trăm dòng mã từ việc thay đổi đó. Sự tự tin để sửa

đổi mã và tìm ra những lỗi lan xa này là một dấu hiệu nổi bật của kiểm thử đơn vị

bao quát mọi nơi. Một dự án kéo dài trong 2 năm của công ty tư vấn

ThoughtWorks đã được người phụ trách kỹ thuật tiến hành 53 lần cấu trúc lại mã

nguồn khác nhau cho đến tận ngày trước khi dự án đi vào hoạt động. Ông đã làm

điều này với sự tự tin thanh thản vì dự án bao trùm toàn bộ mã.

Làm thế nào để đưa cơ sở mã của bạn tới chỗ có thể thực hiện được những đợt tái

cấu trúc mã nguồn rộng lớn? Một lựa chọn là từ chối viết thêm mã khác cho đến

khi bạn có thời gian để thêm các phép kiểm thử cho toàn bộ dự án. Ngay khi bạn

đề xuất việc này thì bạn sẽ bị đuổi việc và bạn có thể đi làm việc cho một công ty

coi trọng việc kiểm thử đơn vị hơn. Cách tiếp cận này có thể là không tối ưu. Lựa

Tải ngay đi em, còn do dự, trời tối mất!
Kiến trúc tiến hóa và thiết kế nổi dần: Tái cấu trúc mã nguồn hướng theo thiết kế pdf | Siêu Thị PDF