1.1 GIỚI THIỆU
Các những khó khăn lớn nhất của việc viết chương trình máy tính lớn không trong việc quyết định những gì các mục tiêu của chương trình nên được, cũng không phải ngay cả trong phương pháp fi nding mà có thể được sử dụng để đạt được các mục tiêu này. Chủ tịch một doanh nghiệp có thể nói, "Chúng ta hãy lấy một máy tính để theo dõi tất cả các thông tin kiểm kê của chúng tôi, hồ sơ kế toán, và
2
nhân fi les, và để cho nó nói với chúng tôi khi hàng tồn kho cần phải được sắp xếp lại và dòng ngân sách đang bội chi, và để cho nó xử lý biên chế. "Với đủ thời gian và nỗ lực, một nhân viên của các nhà phân tích hệ thống và lập trình viên có thể có thể để xác định cách các nhân viên khác nhau đang làm những công việc này và viết chương trình để làm việc trong cùng một cách. Cách tiếp cận này, tuy nhiên, gần như chắc chắn là một thất bại thảm hại. Trong khi phỏng vấn nhân viên, các nhà phân tích hệ thống sẽ fi nd một số nhiệm vụ có thể được đặt trên các máy tính một cách dễ dàng và sẽ tiếp tục làm như vậy. Sau đó, khi chúng di chuyển workproblems khác của chương trình lớn để các máy tính, họ sẽ fi thứ mà nó phụ thuộc vào những nhiệm vụ đầu tiên. Sản lượng từ những, không may, sẽ không được khá trong các hình thức thích hợp. Do đó họ cần lập trình nhiều hơn để chuyển đổi dữ liệu từ các hình thức nhất định cho một nhiệm vụ cho các hình thức cần thiết cho người khác. Các dự án lập trình bắt đầu trông giống như một quilt chắp vá. Someofthepiecesarestronger, someweaker. Someofthepiecesarecarefully khâu vào người lân cận, một số được chỉ tacked với nhau. Nếu các lập trình viên là người may mắn, sáng tạo của họ có thể giữ lại với nhau cũng đủ để làm hầu hết các công việc thường xuyên nhất của thời gian. Nhưng nếu có thay đổi phải được thực hiện, nó sẽ có hậu quả khó lường trên toàn hệ thống. Sau đó, một yêu cầu mới sẽ đi cùng, hoặc một vấn đề bất ngờ, thậm chí có trường hợp khẩn cấp, và những nỗ lực của các lập trình viên sẽ chứng minh là có hiệu quả như sử dụng một quilt chắp vá như một mạng lưới an toàn cho người nhảy từ một tòa nhà cao tầng. Mục đích chính của cuốn sách này là để mô tả các phương pháp lập trình và các công cụ mà sẽ chứng minh hiệu quả cho các dự án quy mô thực tế, các chương trình lớn hơn nhiều so với những người bình thường được sử dụng để minh họa cho các tính năng của chương trình tiểu học. Kể từ khi một cách tiếp cận từng phần cho các vấn đề lớn phải thất bại, chúng ta phải fi đầu tiên của tất cả các áp dụng một cách nhất quán, uni ed fi, và cách tiếp cận hợp lý, và chúng ta cũng phải cẩn thận quan sát nguyên tắc quan trọng của thiết kế chương trình, nguyên tắc mà đôi khi bị bỏ qua bằng văn bản các chương trình nhỏ , nhưng mà bỏ bê sẽ tai hại cho các dự án lớn. Đầu tiên kinh rào cản lớn trong việc tấn công một vấn đề lớn được quyết định chính xác vấn đề là gì. Nó là cần thiết để dịch những mục tiêu mơ hồ, yêu cầu mâu thuẫn, vấn đề Speci fi cation và mong muốn có lẽ không nói ra vào một dự án xây dựng chính xác mà có thể được lập trình. Và các phương pháp hoặc các bộ phận của công việc mà người ta đã sử dụng trước đó không nhất thiết phải là tốt nhất để sử dụng trong một máy. Do đó phương pháp tiếp cận của chúng ta phải xác định mục tiêu tổng thể, nhưng những người chính xác, và sau đó từ từ phân chia công việc thành những vấn đề nhỏ hơn cho đến khi họ trở thành các thể quản lý. Câu châm ngôn mà nhiều người lập trình quan sát, "Đầu tiên làm việc của chương trình, thiết kế chương trình của bạn sau đó làm cho nó đẹp," có thể hiệu quả cho các chương trình nhỏ, nhưng không phải cho những người lớn. Mỗi một phần của một chương trình lớn phải được tổ chức tốt, được viết rõ ràng và hoàn toàn hiểu, hoặc người nào khác cấu trúc của nó sẽ bị lãng quên, và nó có thể không còn được gắn với các bộ phận khác của dự án tại một số nhiều sau thời gian, có lẽ bằng cách khác lập trình viên. Do đó, chúng tôi không phân biệt theo phong cách từ các bộ phận khác của thiết kế chương trình, nhưng từ đầu chúng tôi phải cẩn thận để tạo thành thói quen tốt.
đang được dịch, vui lòng đợi..
