The two types of abstraction discussed in Section 7.4.1 (data abstract translation - The two types of abstraction discussed in Section 7.4.1 (data abstract Vietnamese how to say

The two types of abstraction discus

The two types of abstraction discussed in Section 7.4.1 (data abstraction and procedural abstraction) are in turn instances of a more general design concept put forward by Parnas, information hiding [Parnas, 1971, 1972a, 1972b]. Parnas’s ideas are directed toward future maintenance. Before a product is designed, a list should be made of implementation decisions likely to change in the future. Modules then should be designed so that the implementation details of the resulting design are hidden from other modules. As a result, each future change is localized to one specifi c module. Because the details of the original implementation decision are not visible to other modules, changing the design clearly cannot affect any other module. (See Just in Case You Wanted to Know Box 7.4 for a further insight into information hiding.)
To see how these ideas can be used in practice, consider Figure 7.24, which uses the abstract data type implementation of Figure 7.17. A primary reason for using an abstract data type is to ensure that the contents of a job queue can be changed only by invoking one of the three methods of Figure 7.17. Unfortunately, the nature of that implementation is such that job queues can be changed in other ways as well. Attributes queueLength and queue are both declared public in Figure 7.17 and therefore accessible inside queueHandler. As a result, in Figure 7.24, it is perfectly legal C++ (or Java) to use an assignment statement such as
highPriorityQueue.queue[7] 5678;
anywhere in queueHandler to change highPriorityQueue. In other words, the contents of a job queue can be changed without using any of the three operations of the abstract data type. In addition to the implications this might have with regard to lowering cohesion and
0/5000
From: -
To: -
Results (Vietnamese) 1: [Copy]
Copied!
Hai loại trừu tượng thảo luận trong phần 7.4.1 (dữ liệu trừu tượng và thủ tục trừu tượng) lần lượt là các trường hợp của một khái niệm thiết kế tổng quát hơn do Parnas, đưa ra thông tin ẩn [Parnas, 1971, 1972a, 1972b]. Ý tưởng của Parnas được hướng về bảo trì trong tương lai. Trước khi một sản phẩm được thiết kế, một danh sách phải được thực hiện trong thực hiện quyết định khả năng thay đổi trong tương lai. Mô-đun sau đó nên được thiết kế để cho các chi tiết thực hiện của thiết kế được ẩn từ các module khác. Kết quả là, mỗi thay đổi trong tương lai bản địa hoá cho một mô-đun c thuật. Bởi vì các chi tiết của các quyết định thực hiện ban đầu không hiển thị cho các module khác, thay đổi thiết kế rõ ràng không thể ảnh hưởng đến bất kỳ mô đun khác. (Xem chỉ trong trường hợp bạn muốn biết hộp 7.4 cho một cái nhìn sâu sắc thêm vào thông tin ẩn.) Để xem cách những ý tưởng có thể được sử dụng trong thực tế, xem xét con số 7,24, sử dụng thực hiện loại dữ liệu trừu tượng hình 7,17. Một lý do chính cho việc sử dụng kiểu dữ liệu trừu tượng là để đảm bảo rằng nội dung của một hàng đợi công việc có thể được thay đổi chỉ bằng cách gọi một trong ba phương pháp hình 7,17. Thật không may, bản chất của thực hiện đó là như vậy mà hàng đợi công việc có thể được thay đổi theo những cách khác. Thuộc tính queueLength và hàng đợi được cả hai tuyên bố công cộng trong hình 7,17 và do đó có thể truy cập bên trong queueHandler. Kết quả là, trong hình 7,24, nó là hoàn toàn hợp pháp C++ (hoặc Java) để sử dụng như một tuyên bố nhiệm vụhighPriorityQueue.queue[7] 5678;bất cứ nơi nào trong queueHandler để thay đổi highPriorityQueue. Nói cách khác, nội dung của một hàng đợi công việc có thể được thay đổi mà không cần sử dụng bất kỳ hoạt động ba loại dữ liệu trừu tượng. Ngoài những tác động này có thể đã liên quan đến việc giảm gắn kết và
Being translated, please wait..
Results (Vietnamese) 2:[Copy]
Copied!
Hai loại trừu tượng thảo luận trong Phần 7.4.1 (trừu tượng dữ liệu trừu tượng và thủ tục) là trong trường hợp lần lượt của một khái niệm thiết kế tổng quát hơn được đưa ra bởi Parnas, che giấu thông tin [Parnas, 1971, 1972a, 1972b]. Ý tưởng của Parnas hướng đều bảo trì trong tương lai. Trước khi một sản phẩm được thiết kế, một danh sách cần được thực hiện quyết định thực hiện có thể thay đổi trong tương lai. Module sau đó phải được thiết kế sao cho các chi tiết thực hiện các thiết kế kết quả được ẩn từ các module khác. Kết quả là, mỗi thay đổi trong tương lai được bản địa hoá cho một module c specifi. Bởi vì các chi tiết của các quyết định thực hiện ban đầu không nhìn thấy được đến các module khác, thay đổi thiết kế rõ ràng không thể ảnh hưởng đến bất kỳ thành phần khác. (Xem Chỉ trong trường hợp bạn muốn biết Box 7.4 cho một cái nhìn sâu sắc hơn nữa vào che giấu thông tin.)
Để xem làm thế nào những ý tưởng có thể được sử dụng trong thực tế, xem xét hình 7.24, trong đó sử dụng các kiểu dữ liệu trừu tượng thực hiện trong Hình 7.17. Một lý do chính cho việc sử dụng một kiểu dữ liệu trừu tượng là để đảm bảo rằng các nội dung của một hàng đợi công việc có thể được thay đổi chỉ bằng cách gọi một trong ba phương pháp của Hình 7.17. Thật không may, bản chất của việc thực hiện là như vậy mà hàng đợi công việc có thể được thay đổi theo những cách khác như là tốt. Các thuộc tính queueLength và xếp hàng đều công bố trong hình 7.17 và do đó có thể truy cập bên trong queueHandler. Kết quả là, trong hình 7.24, nó là hoàn toàn hợp lệ trong C ++ (hoặc Java) sử dụng một câu lệnh gán như
highPriorityQueue.queue [7] 5678;
bất cứ nơi nào trong queueHandler thay đổi highPriorityQueue. Nói cách khác, nội dung của một hàng đợi công việc có thể được thay đổi mà không cần sử dụng bất kỳ một trong ba hoạt động của các kiểu dữ liệu trừu tượng. Ngoài các tác động này có thể có liên quan với giảm thiểu các sự cố kết và
Being translated, please wait..
 
Other languages
The translation tool support: Afrikaans, Albanian, Amharic, Arabic, Armenian, Azerbaijani, Basque, Belarusian, Bengali, Bosnian, Bulgarian, Catalan, Cebuano, Chichewa, Chinese, Chinese Traditional, Corsican, Croatian, Czech, Danish, Detect language, Dutch, English, Esperanto, Estonian, Filipino, Finnish, French, Frisian, Galician, Georgian, German, Greek, Gujarati, Haitian Creole, Hausa, Hawaiian, Hebrew, Hindi, Hmong, Hungarian, Icelandic, Igbo, Indonesian, Irish, Italian, Japanese, Javanese, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Korean, Kurdish (Kurmanji), Kyrgyz, Lao, Latin, Latvian, Lithuanian, Luxembourgish, Macedonian, Malagasy, Malay, Malayalam, Maltese, Maori, Marathi, Mongolian, Myanmar (Burmese), Nepali, Norwegian, Odia (Oriya), Pashto, Persian, Polish, Portuguese, Punjabi, Romanian, Russian, Samoan, Scots Gaelic, Serbian, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenian, Somali, Spanish, Sundanese, Swahili, Swedish, Tajik, Tamil, Tatar, Telugu, Thai, Turkish, Turkmen, Ukrainian, Urdu, Uyghur, Uzbek, Vietnamese, Welsh, Xhosa, Yiddish, Yoruba, Zulu, Language translation.

Copyright ©2024 I Love Translation. All reserved.

E-mail: