Ebook phát triến hệ thống hướng đối tượng với UM l2 0 và c phần 1 nguyễn văn ba

180 347 2
Ebook phát triến hệ thống hướng đối tượng với UM l2 0 và c   phần 1   nguyễn văn ba

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

N(ílJYỄN VÃN BA Phát triến hệ thống hướng đối tượng với UM L2.0 và'c++ {In lân thứ hai) S ách d ù n g cho; - Sinh vỉẻn c c trư ờng Đại h ọ c , C ao đ ẳn g - C ác n hà x â y d ự n g h ệ th ố n g ch u y ê n n g h iệp • C ác kỹ s phân tích thiết kế NHÀ XUẤT BẢN ĐAI HỌ C Q U Ố C G IA HÀ NỘI NHÀ XURT BẢN DỌI HỌC ọuốc Gin Hii NỘI 16 [ e Chuối - Hai Bà Trưng - H Nội Đ icn ĩlioai: (04) : (04) 7 j-ax: (0 ) 9 c hịu tr c h n h i ệ m x u ấ t bấn: Qưốc G iã m đôc: PHỪNG BÁO T ống hiên tập: NCUYỀN b t h n h Biẽn tập: HỔ ĐỐNG LAN HƯƠNO Trinh b y hio: HẤI ĐỔNG HÁT TRIẺN HỆ THÒNC HƯỜNC ĐOI TƯỢNC VỚI UML 2.0 VÀ C + + lã số: IL-OI Đ H 2008 1000 cuốn, khố 16 X 24 cm lại Xướng in Tạp chí tin học & đời sống ố xuất bàn: 136 - 2007/C X B /03 - 13/DHQGHN, ngày 13/2/2007 •uyếl định xuất bán số: 0] LK/XB xong \'à nộp lưu chiẻLi quv nám 2008 LỜI NÓI ĐẦU Mục tiêu hướng tới sách bao hàm đầy đủ irong tựa đề Đ ó là; “Phát triển hệ thống hướng đối tượng với UM L 2-0 C++" Đ ể bạn đọc có ihể có nhìn bao quát nội dung sách, xin ỉần lượt xét v ế irong tựa đề P h t triển hệ thò ng Hệ thống để cập hệ thống phần mềm, hay nói rộng chút hệ thống tin học (bao gồm phần m ềm phần cứng) Vậy phát triển hệ thống hiểu trình xây dựng hệ thống tin học tính từ A đến z , kể từ lúc manh nha ý đồ, đến khảo sát để tìm hiểu m ôi irường nhu cầu, phân tích để sâu vào chi tiết, ihiết kế để làm cho thích ứng với điều kiện kỹ thuật sẩn có, cài đặt để thực thi ngôn ngừ lập trình tảng kỹ thuật, cuối kiểm chứng chuyển giao Tuy nhiên, hạn ch ế số trang, nên sách cũtig dành nhiều ý vào số khâu trình phát triển hệ thống Đ ó là: lìm hiểu nhu cầu, phân lích, thiết k ế cài đạt trẽn ngôn ngữ lập trình C++ Định hướng cho ph át triển hệ íhống Tổn lụi nhiều phương pháp để liến hành việc phát iriển hệ ihỏng Đ ê tránh dàn trải theo lối "cưỡi ngựa xem hoa", sách buộc phải chọn phưcmg pháp để có ihể trình bày sâu kỹ Tuy c ó nhiều phưong pháp, song cách dại thể c ó tách chúng thành hai nhóm lớn luỳ thuộc vào hai định hướng khác biệt Đ ó pliương pháp hướng chức nãng phưcng pháp hướng đối tưcmg Các phương pháp hướng chức năng, nở rộ vào nãm 70, 80 kỷ trước, lấy chức làm đơn vị phân rã liến hành phân tích hệ thống Câu hỏi hệ thống thường đặt sớm cho người dùng, cho người thiết kế câu hỏi; "Hệ thống phải làm gì?” Bời nghiên cứu hệ thống dựa vào chức nãng (tức Lời nói đầu việc phải làm) cách làm tự nhiên dễ hiểu Phương pháp hướng chức dẫn tới viêc cài đặl hệ Ihống ngôn ngữ lập trình Iheo thủ lục (như Pascal, c ) Dù dễ làm dể hiếu, lliì theo năm tháng, phương pháp hướng chức nãng để lộ nhược điếm khó chấp nhận: hệ thống xãy dựng theo cách khó sửa chữa, khó nânc cấp Íí có khả nãng lái sử dụng vào hoàn cảnh khác Các phương pháp hướng đối tượng khắc phục nhược điếm đời từ đầu nãm 90 đến nav lại lấy dối tư m g f.àm đim ngiiyén hệ ihống Đ ối tượng kết hợp chức \'à liệu Đ ó kết hợp hợp lý, chức chi thao tác irên số liệu dintỊ ngược lại mổi hệu duơc xử lý bới số chức định Không h(ĩp Iv mã lại rãl lự nhiéa dễ hiếu, đổi tưoTig ĩìn học thưởng dùng đé piìảiì áiỉh hav m ô đối tượng giới thực (tức sư hay vậi) Sự thành đạt ngày ngôn ngữ lập trình hướng đối iượiig (như C++, Java ) dã khẳng định vị áp đảo cúa phương pháp phãn tích thiết k ế hướng đối tượng trước phưcmg pháp phân tích thiết kế truyền thống Cho nên, khỏi phải cân nhắc nhiều, sách trình bày với bạn đọc tri ihức công nghệ phát triển hệ thống theo định hướng đối lượng Ngỏn n g ữ mô hình ho U M L Dù dùng phươTig pháp nào, người phân tích ’'à Ihiếi k ế luòn phài dùng hình thức hiểu để diễr tả sắc thái khár hệ thông Hình ihức diễn tả c ó thể dạng vãn lự, phưcjiìg trình toán học, bảng đổ Ihị Người ta gọi mô hình, việc sử dụng m ô hlnh để diẻn tả hệ thống gọi m ỏ hình hoá Trước đày m ỗi phương pháp phát triển hệ thông đề nghị loại m ô hình riêng Sự khác biệt ngôn ngữ diễn tả hệ thống đó, giống người nói tiếng Anh, kẻ nói liếng V iệt vấn đề, gây khó khăn không cần thiết Xu hướng phái triển lất yếu phải Bạn đọc muốn tìm hiểu phương pháp hướng chức xin tham khảo cuon 'T h â n tích th iế t k ế hệ thống thông tin - Các phương pháp cấu trú c”, x u ất b ản năm 2003 cùa tác giả Lời n ó i đầu _ íỉi đến thống ngôn ngừ Vì mà vào năm 1997 đời ngôn ngữ m ỏ hình hoá thống ƯML N gôn ngữ mô hình hoá UM L công nhận chuẩn, tiếp tục nâng cấp Đến (cuối 2004) có phiên ƯML 2.0 UM L dùng m ỏ hình dạng biểu dồ Phiên UM L 2.0 dưa 13 loại biểu đổ, thay cho loại biểu đồ dùng phiên l.x trước Cuốn sách trình bày với bạn đọc vé UML 2.0 cách vận dựng vào tiến trình phát triển hệ ihống hướng đối tượng C ài đ ặ t với C++ V iệc cài đặi hệ thống luôn phải sử dụng ngôn ngữ lập irình đó, mà ngôn ngữ lập trình lại thường khác biệt cú pháp ngữ nghĩa với Cuốn sách trình bày việc cài đặt hệ thống ngôn ngữ lập trình C++ Khi la tiến hành phân tích thiết k ế hướng đối tượng, chuyển qua cài đật ngòn ngữ lập trình hướng đối tượng, C ++, chọn lựa tự nhiên Nhưng lại ỉại chọn lựa C ++ mà ngôn ngữ lập trình hướng đối tượng khác? K hông phải C ++ đặc sắc hay hơn, mà chẳng qua vì, theo kỳ vọng tác giả, C++ quen thuộc với đông đảo bạn đọc (phần lớn khoa công nghệ thông tin trường đại học dã c ó giáo trình "Lặp trình hướng đối tưc;ng với C++") Và m ộl quen ihuộc, bạn đọc nghiên cứu chương cài đặt cuối sách khỏi bận tàm việc học thêm ngôn ngữ iập irình tập trung ý vào ý iướng chủ đạo irong cài đặt Nếu nắm bắt ý tưởng đạo rồi, cho dù sau bạn đọc sử dụng ngôn ngừ lập trình hướng đối lượng khác, việc vận dụng ý tưởng khỏng khó khãn C ấu trú c sách N ộ i dung sách trình bày Iheo hai tuyến chính: - M ột mặt trình bày khái niệm m ô hình UML, - Mặt khác trình bày bước triển khai tiến trình phát triển hệ thống _ Lời nói đầu Hai luyến trình bày song song hỗ ỉrợ cho dọc theo chương sách Các mó hình UM L giới Ihiộu dần dán iheo trậl tự vận dụng vào bước cúa tiến trìnli phát triển Còn chương llìì lại dược phân theo đé lớn củu \ iõc phái triển hệ thống Hai chuơiìg đầu chi có tính châl dầi) nhập Cliuơng I nh^i^ ; lói thiệu lại cho bạn đọc ý tưởng chù đạo lập trình hưới' : Joi tượng, để từ bạn đọc thấv »rước đích cùa phàn tích vỳ thiết kc' IV: p h â n líc h v thiế t k ế đ ế d i đ ế n lậo i r ìn h ) lý giài h n \ é C.IC cung cách phàn tích thiết kế dược liình bày dọc theo sách Chương II giới thiệu cách khái quát mỏ hình, ngôn ngữ L;MÌ, va tiên ưinh phát triển hệ Ihống dũng ư đươc chọn lọc theo mục đích khiêm lốn sách, dã không dược irìnhì bàv vét cạn Đ ế tra cứu ƯM L bạn đọc sử dụng lài liệu gốc cứa ba tác giả cùa ƯML [6 ] [28], xem irên website [36] Đ ể lìm liiểu thực vổ C++, có nhiều sách thích hợp, chảng hạn [31] hay [18] Vậy rỏì cục sách chọn đối tượng phục vụ cho người hành nghề hay hành nghề phát triển hệ thống có ý định bổ sung cập nhật kiến thức công nghệ để vận _ Lời nói đầu dụng thực vào nghề nghiệp Đó nhà phâii tích thiết k ế chuyên nghiệp, người lập trình, người kiểm định hộ thống, sinh viên theo học khoa Công nghệ thông tin, bậc đại học hay bậc cao học Nó giúp ích cho thầy giáo Công nghệ phấn mềiĩi scạn thảo giáo trình Cuối cùng, lác giả bày tỏ biết ơn đông nghiệD khoa CNTT cùa trường ĐHBK Hà N ội dã giúp đỡ dộng viên lúc giá nhiéu soạn thảo sách Cuốn sách cĩĩng klió uáiih khoi sai SÓI tác giá mong nhận ý kiến phán hổi từ dộc giả, qua e-maìl: b a n v ( ặ ii-li'ií ưdu.yn Nguyẻn Vãn Ba Chương I cnc sở củn Lộp TRÌNH HƯỚNG D ốl TƯỢNG Phát iriến hệ ihống hướng đối tượng auá trinh thiết lập hệ Ihống lin học qua bước phàn tích thiết kế, để tiến tới lập irình ngôn ngữ hướng đối tượng Như muốn hiểu việc phân lích thiết k ế hướng đối tượns (mà ta thường gọi mô hình hoá hướng dối tượng), la cần hiểu trước hết đích mà hướng tới tức lập trình hướng đối tưựng Chương giúp bạn dọc có nhìn khái quát (không vào chi tiết) sờ lập trình hướng đối iượng, hai phương diện: Khuôn phép lập trình hướng đối tượng, lức dặc thù việc vận dụng lĩiộl ngôn ngữ lập trình hướng đối tượng M áy đối tượng, tức nguyên tắc cho việc cài đặi ngôn ngữ lập trình hướng đối iượng §1 K H U Ô N P H É P L Ậ P T R ÌN H HƯỚNG ĐỐI TƯỢNG Ì C Á C K H U Ô N P H É P L Ậ P TR ÌN H a) K hu ôn phép ỉà gì? Gần đáy lài liệu nước thường xuất thuật ngữ "paradigm", mà ỏ la diễn tả qua tiếng Việt từ "khuôn phép”“ * Paradìgm bắt nguồn từ thuật ngữ Hy Lạp "parađeigma” có nghĩa m ô hình (model) hay mẫu (pattern) Thomas Kuhn, tập sách The Structure o f Scientiíic Revolution, đưa định nghĩa chi tiết hơn: '1) Nếu bạn không thích từ "khuôn phép", xin thay từ "mô thức" J _ Chương I Càc sở lập trình hưởng đối tượng "Paradigm lập hợp lý thuyết, liẽu chuẩn phương pháp quy tụ lại nhằm biểu diễn cho cách tổ chức tri thức” b) C ác kh u ò n phép lập trìn h tru yền thôn g đại Lịch sử phát triến gần 50 nãm cúa ngôn ngữ lộp trình (xem Ifinh 1,1) dã đc xuất nhiéu khuỏi) phép lập tiình khac Síiu d j \’ số khuòn phép chính; • L ập t>-ìiĩli ìhii íuc (proceduraỉ orogramming) hav lão ìrìiìh chí lììỊ (impcrativc programmingj: Là loại lập trinh tlieo cách íh;'uih lạp m ột dãy chí Ibị (lệnh) cho máv tính thực đế chạy giái ihuật giải quvết toán Đây cách lập Irình truyền thống, với ngôn ngữ lập Irĩph thó' hệ hi.ii ví ba nhu Pascal, c Cobol, Acỉci • l.(io ỉrình (íogical progrummirig): La ioai lụp tvinh iroiìg dó người la dùng biểu lliức lógic vị lừ đế diẻn tà líiili chãi nià biến toán phải tuân thủ Vậy ỉoại lập trình phi thú tục hay gọi lập trình khai báo (declarative programming) v\ khai báo mà ta muốn có, mà không cho thú tục để đạt tới Bộ diễn giải (interpreter) ngôn ngữ lập trình lỏgic sc thực lúẹn bước suy dién loogic cân thiết dê dại đến yéu cáu Trong số ngôn ngữ lập trình lôgic, kể Prolog, C5 • L ập rrìnli hàm (íunclional programming): loại lập trình dựa trẽn hàm Các giai đoạn chương irinh dẫn xuất irực tiếp lừ lý thuyết tính toán hàm, d o Church đề xuất, gọi Ẳ-tinlỉ toán Trong số ngôn ngữ lập trình hàrn, có lliế kế ML, CAM L Scheini \ xu hơii m ộl cliúì Lisp • L ập trình hướng dối tượiìíi (object orienled programming); Là loại lập irình sử dụng đối tượng tin học, bọc gói liệu thủ tục vào một, đế m ô vật thực lế hay lôgic, qua mà lạo hiệu xử lý thông tin N hờ khả nãng bám sát Ihực tế, mà lập trình hướng đối lượng tạo phong cách lư hoàn toàn mới, rời bỏ cách tư thủ lục, cách tư "chuồng bổ câu" (pigeon hole), xem liệu ỉà chim bồ câu chui chui vào ngăn chuổng N hờ có giấu kín liệu thủ lục bên đối tượng đến mức tối da, ta làm giảm thiểu plíức tạp\ chương trình d ễ 168 Chương v^ Mô hình hoá hành vi Cứ tiếp lục dọc Iheo đường đời m ỏi đối tượng, ta kiếm íra tương thích hai loại biểu đồ Đ Ố I C H IẾ U C Á C M Ô H ÌN H Đ Ộ N G V Ớ I M ổ H ÌN H T lN H Sau lập mô hình dộng (biổu dồ tương tác, biếu đồ máy trạng thái), la lại phải đối chiếu chúng với lĩiõ hình ỉìrih (biểu đ.T lớp) đế chỉnh sửa lại cho àn khớp N hớ lạp biểu đồ lớp, ta chưa có đu để đẩy đú thuốc tính, liên kết thao tác, lúc phài bổ sung chiirig cho đầy đủ Mặt khác, kin lệp biểu đồ tương tác máy trạng thái, ta đặt tên cho thóng diệp, kiện, tham số cách luỳ tiện theo bán chát chúng, nià chua nhìn iai rtguồn gốc cùa thú ng biếu đổ lớp dế eoi Icn Íĩiộí cách chír.h xác Chính vậ\ mà dây phai có chinh sừa cá đói béii cho Ihật ãn khớp Vậy yếu lố biểu đổ lớp iliao tác ilìiiộc tính lién kếỉ có m ối liên hệ với yếu tố Irong biểu đồ tương tác biểu đổ máy trạng Ihái ià ỉìứmg diệp, kiện, hùìih động, hoạt độìiịị, cánh giới, tham số.v.v ! Có thể kể m ối lién hệ chính, để làm càn cho việc kiểm tra tính tương thích, sau đây: ♦ Đ ối với Ihao tác: - thông điệp lời gọi tới thao lác có đối tưcmg (bên nhận), phát lừ m ội thao tác đối tượng khác (bên gửi); - kiẹn hành động trèn ưiột dịch chuyến cỏ ihể mội lòi gọi lói in«)l ỉhao lác, hoạt động trạng thái xem ihực m ộl thao tác phức lạp tiếp nối nhiều thao tác • Đ ối với thuộc tính liên kết: - điều kiện cảnh giới kiện thay đổi đề cập thuộc lính kết nối tĩnh; - môt hành động dịch chuvến đề cập thuộc tính kết nối lĩnh; - tham số thông điệp thuộc lính đối tượng trọn vẹn §2 Bước 5: Mô hình hoá n g xừ 169 Hình V 36 minh hoạ đối chiếu biếu đổ máy trạng thái bién đổ lớp dốỉ với lớp Chuyến hàng (trích Irong m ộl hệ Ihống vận clìuycn hàng hoá) đ iổ u c h ín h « c r e a t e » (lén, dặccliếin) lliain s ố klìỏiig tưửiig ỉlìích với i h u ỏ c uììh bố sung ihu o tác ‘' d u y ệ t o " '’d iề u c h i n h () " tlìtimchicu n*4àyĐic!ựkiến nuà yĐ ín d ự kịỏ n ch úgiái t h a m s ihuỏciínli i h a m s õ sứ dụiìíi m ộ i I huộ c lính c lì uv ê n biồl C lu iy c n s u ố t C huỵcnxắp đ ã c c liể n i H ìỉĩlì V Đ ô l clìiếỉi h iể u đ ó m â y ĩrợỉỉịỊ ỉlìái v ả b iể u d lớ p §3 M Ô H ÌN H H O Á H À N H VI T R Ê N C Á C G Ó C ĐỘ K H Á C M Ụ C Đ ÍC H Cùng với bước ta mổ hình hoá hành vi hai góc độ: tương tác ứng xử Tuy nhiên, đặc điểm khác biệt nhiều hệ thống, có ta cần m ô hình lìoá hành vi góc độ khác V ì UM L cung cấp thêm cho sô' m ô hình động thái, là: 170 Chương V Mô hình hoá hành vi • biếu đổ hoạt động, mô tả hành vi theo luồng công việc; • biểu đổ bao quát tương lác, m ô lả tiếp nối nhiều tương tác phức tạp; • biểu đổ thòi khác, m ô tả hành vi theo liếp nối giai đoạn Các biểu đồ - mà ta lìm hiểu - không gắp, kế' nhấl định vào rnột hước tiến irúih 10 biiớc inà ta theo Song m ô hình hoá hành vi, thấy thích hợp, ta vận dụng chúng nơi hav nơi khác cách tuỳ ý, để bổ sui'.g khía cạnli hà.nh ví chưa diẻn lả biẻu đồ iương tác máy irạng ihái B ĨỂ U Đ Ổ H O Ạ T Đ Ộ N G B:ểi( đ ổ hoại dộĩig (A ctivitv Diagram) ià biểu đổ mó m ộl nội d u n g h o i đ ộ n g Ih eo c c lu ổ n g đ i từ v i ệ c S íin g v i ệ c khác Nó thường dùng để diễn tả lôgic cúa ca sử dụng, m ội kịch mộl nhóm ca sử dụng, quy tắc hay thao tác phức tạp Có thể nói biếu đổ hoạt động m ô hình UM L iưcmg đương với sơ đồ khối với biểu đồ luồng dừ liệu phương pháp phán tích thiết k ế cũ a) C ác ho ạt độ ng dịch chuyển Biểu đồ hoạt động đồ thị có hưcmg, nút (đỉnh) hoạt động, cung dịch chuyển • Hoat dỏnỊị (A clivity) môt cỏng việc, xử lý lay, Điến mẫn, xử lý bàng máy tính, Hiến thị Mùn hình Dàng ký Trong biếu đổ Ihl hoạt động biểu diễn hình chữ nhật tròn góc, có mang tên hoại động: T ỏ n h o ld ộ n g Dịch chuyển (Transìtion) chuyển tiếp từ hoạt động sang hoạt động khác Trong biểu đổ dịch chuyển biểu diẻn bàng mũi lên nối từ hoạt động sang hoạt động khác; 171 §3 Mô hình hoá hành vi góc độ khẩc Hcll ị\ớ2 Như có ihể nói biểu đổ hoạt động biểu đồ máy trạng thái giản lược, với hai đặc điểm; - Các trạng iháì không cần mang lên với hoạt động nó; - Các dịch chuyển dịch chuyên lự động (khởi phát hoàn tất hoạt động, mà không phái kiện từ đến) Cũng biểu đổ máy trạng thái, biếu đồ hoạt động có núi khởi đầu, dạng hình tròn đặc (không thiếi phải có , song có biểu đồ dễ đọc hcíii), có nút kết thúc, dạng hình tròn đặc có viền (có ihể có không nhiểu nút kết thúc) b) C ác cảnh giới Cũng biểu đồ máy trạng thái, ta dùng cảnh giới (các điều kiện Bun loại trừ nhau) để tliực rẽ nhánh UM L dùng hình thoi nhỏ để diễn tả: - cỊu yết định (decision), có luồng vào nhiều luồng (các luồng phái có cảnh giới); - lỉoà nhập (merge) có nhiều luồng vào mội luồng (cliểm hoà nhập dược vượt qua có luồng vào xuẩt hiện) Như hai biếu đồ Hình V 37 tưcmg đưcmg Đ o n h iệt d ộ D o n h iệt d ộ \ Iq u lạ n ly q u nónuỊ lạ n h L / • \ | q u nóng ^ Đốt nóng L ù m lạ n h Đ ố t n ó iiii Hìnlì V J Hai cách dién s ự r ẽ n h n h L m lạ n h 172 Chương V Mô hình hoá hành vi c) Đồng hoá Trong biểu dổ hoạt động, ta dùng ilianlì đốnỊ> hoủ (synchronization bars) để m hay đóng nhánh Ihực song song {Hình V.38): - n i ỏ c c n h n h s o n ^ s o n g b ằ n g m ộ t ih u n h đ ổ n g b ộ ỈIOÚ co m ọi dịch chuvển vào nhiều dịch chuvển - la gọj chục (fork); ctóug nỉidnh soiig song niội ihanh đốĩig hoá có nhiều dịch chuyển vào dịch cliuyển - ta gọi m ộl chụm (join) Chụưi vưọt qua m ọi nhánh vào ho'ìp tất nóng > f Làm Ịhoán 1» Ngừiig dôì iióncỊ 'S f Đ o n h i c i clộ J Hình V.38 M vá đóng cá c nhảnh son^ song T h í dụ: Trở lại hệ ĐKM H Hình V 39 ch o biểu đồ hoạt động (bản phác thảo) dùng đổ diễn tả ca sử dụng Đăng kỷ học §3 M õ hình hoá hành vi góc độ khác 173 HinJì V.39 Biểu d ó hoạt động cho ca sử dụng Đủng kỷ môn học Trong Hình V có hai ký hiệu mới: - Ký hiệu /h irong nút Tuyến sinh, để nói m ội hoạt động phức lạp cáiì diẽn inộl biểu đồ hoạt dộng khác; - Ký hiệu n lìoc |hếíj hùv sf \ t / s K iè m ira lớp g iàng c ò n CÌIỖ? ^ \ Klểiu tra m ó n cân h o c tri tớc , 4 i \ ỵ* * N K ế i LỊuá đ n g k ý ỈÌIỘI in ổ n D anh sách tnô í ì (la t!ư ọ ’c đ n g ký ^ C l ì u p nlìẠiì hojn t đối tượng, nhận đối tượng để xử lý Bấy g iờ ta vẽ thêm đối tượng §3 Mõ hình hoá hành vi góc độ khàc 177 (\’ới Irạiig thái Cítn) vào Irong bicu dõ ho;ii dộng nối với hoạỉ động liên quan bang mũi tôn ciứt nci (>;ọi la luồng đối tượng) M ội iLiổng đối iượiig từ hoạt (lộnii cK-'ii IIIỘI đối iưimg lại úốp tụ c di \ ’à o m ộ t h o ại đ ộ n g kluíc c ó thc Ncm m ộ t lu n g tlíCU khicii (m ột dịcli chiivcn) hai hoạt dộiig dó Thí du Hình V 42 diễn u'i inộl quv Irình bán hàii (frame) Có hai loại khung: - khung tương túc, vẽ biểu đồ tương tác UM L (như biếu đổ ưình tự, biểu đổ giao tiếp, biểu đồ thời khắc biếu đổ bao quát tương lác); §3 M õ hinh hoá hành vi trén góc độ khảc - 179 klìiiiiịỉ iươiì^ lác cụ ilié chí hoạt động m ộl thao lác gọi Ngoài ihi cung Irong biểu đổ giữ nguyên quy ước biếu đồ hoại động, diễn tả cho luồng điều khiển đạỉ tliế T h í dụ Trỏ lụi với ĐKM H Hình V 44 cho inộl biểu đồ bao quát tương lác (lối \'ới ca sử dụng Đãngký môn học Lưu ý m ọi khung rõ loại biểu đổ vẽ bên trong, theo quy ước; - sd cho biếu đổ trình tự; - cd cho biểu đổ giao tiếp; - id cho biểu đồ thời khắc; - iod cho biểu đổ bao quát tương tác Các bieu đổ nàv cho thêm tên m ộl số thông tin liên quan khác (như đường đời đối tượng tham gia) Các khung tương tác cụ thể định ký hiệu ref, lại không cán phải có lèn, lên cùa hoạt động hay thao tác bên đủ nói lẽn điều xẩy Ta dùng cách diễn tả trạng thái đầu, trạng ihái cuối, cảnh giới, định biểu dồ hoạt động Các ràng buộc \'ổ Ihời gian, {0 7.secỊ, dược diễn tà Iheo quy ước ilìing irong ciic loại biếu đổ tương tác khác Nhận Ví'/; UM L dưa thêm loạibiếu dỏ bao quáitưưng tác nỏ cho ta mội nhìn bao quái tương lác, thú vị,Song có lẽ loại biểu đổ khó vận dụiig vào ihực lế, khung khó có đù không gian dể vẽ biếu đổ tưcíng lác phức tạp bôh Irong- Nhận xét có ihể không dúng, ta vần phải chờ thử Ihách ihời gian Chương V Mô hình hoà hành vi 180 iod Đãniỉkýmõnhọc Cácđườiigdời:vSinhvicn;L(ýpeiàfiii:Mỏn:Đání:kỴ Hình V 44 Biểu đ ó bao quát iirơnỊi lác BIỂU Đ Ổ T H Ờ I K H Ắ C Biểu đổ thời khắc (Timing Diagram) mội biếu đổ tương tác có ƯML 2.0 N ó dùng để diễn tả hành hay nhiều đối tượng cách giai doạn trải qua ihcfi gian Nó hay dùng thiết kế phán rnẻin nhúng (chẳng hạn phần mềm diều khiển hộ cung cấp chấl đốt), luy nhiê.i dùng phần m ềm quản lý Có hai dạng biểu đổ thời khắc; dạng súc tích ^à dạng tăng cường Hình V 45 cho biểu đồ thời khắc, dạng súc tích, n ộ t đối lượng Lớp giáng N ó cho ta Ihấy rõ giai đoạn (trạng thái) n Lớp giảng trải qua thời gian: Đ ề xuất, đưa vào k ế hoạch, Eãng ký 181 §3 Mô hình hoá hành vi càc góc độ khác sinh \'iẽn Đung giáng Tiii kết thúc Chấm dứt Bên giai đoạn, ta thời gian tương ứng iL ó n M a iv ’ Đẹ \ / í ) a v i\/1)ã n Ị: k > \ / Đ i i n g X / Thi N ^ C liiV m XLU'ÍI ^ '^ ếlu u iL ly \^ in ]n iêỊ)/\^ iĩià n a y '^ k ẽ'U h ú c/^ \ Ì1 /II Ị/I2 1 /I /7 T !lá l1 X l/9 J /]2 t-iứĩ Ì6 /1 /1 ỊT h n s 11 < -> < - > < - > < - > < - > í - > ỈỊìiilì V.45 Biểii (lổ iliời khắc dan^ sức tích Hình V 46 cho biếu đổ ihời khắc dạng tăng cường diễn tả xảy mộc lớp aiàng thưc (đang giảng) Có hai đối tưmig tham gia việc thực lớp giáng, Thầy giáo Người irợ lý Tliầy g iáo thực công việc Irẽn lớp, bao gồm giảng bài, hướng dẫn lliực hành \'à cho điciTi; người trợ lý làm công việc lớp nghiên cứu tài liệu đế bổ sung kịp thời vào giáng Đ ối với m ỗi đối tượng đó, ta võ đường thời gian, đường thời gian chuyển dổi công việc theo Ihời kỳ Các mữi tên nối hai đường thừi gian thông điệp đối iượng Các ràng buộc Ihời gian, Ị5/10 10/10}, kích ihích tà Kỳ nghi bát đáu Kỳ nghi kết ihức, T - /ỉ có ihế thêm vào ò chồ cán ihiết Mép biểu đồ ihước thời gian, khác theo tuẩn Chương V Mô hinh hoá hành vi 182 Thòi khác: n iự c lóp ciaiiâ 5/K I UL-12/I0 12 / IU Hướng dẫn K,/ UUL ,4:,, uuu k ^ ttịũ k T^23/ỉl \\ T -3/12 / Tliầy giáo Giáiie 1\ \ cấu I T'im lài liệu Nqạrời tìổ siini; bùi licp Ọ p nliật sỊÌ;'iiiJ Tự Tuần lơ 11 12 13 Hình V.46 Biển đ ỉiìờỉ khắc dạn^ íảng cường [...]... số, và như vậy tăng c ờng đối tượng đó vào bối c nh c a đối tượng nhán C năm loại đối tượng thu c vào bối c nh c a một đối tượng, đư c kể lần lượt sau đây a) C c đối tượng thu c tính (th àn h ph ần) c a lớp Đây là những đối tượng bén trong c a lớp Giá sư chúng dã đư c tạo lập, ho c là c ng l c với chính đối tượng, ho c nhờ một thao l c khới gán đư c th c hiện trư c khi dùng c c thao t c kh c t c dộng... nhớ c a máy đối tượng là một dãy c c từ m áy, và thường tách thành ba phần: • Một phần gọi là đống ('tổ ch c bảng bãm) dùng để chứa c c đối tượng, chúng xuất hiện dần dà trong bộ nhớ theo sự tạo lập c a chúng • M ột phần kh c dùng để chứa c c lớp, dưới m ột dạng th c hiện đư c • Phần c n lại dùng làm vùng làm vi c cho c c thao t c Chỗ nhớ cho c c biến c c bộ và c c tham số c a một thao l c sẽ đư c cấp... bảng c c thao t c; • Bảng c c Ihao t c là một dãy c c cặp: lên thao t c và địa chỉ phần mã c a thao t c Cuối bảng c thể thêm địa chỉ c a lóp cha, nếu c ; • Phần mã thao t c gồm mã (chương trình chạy đư c) c a c c thao t c, đặt nối tiếp nhau 24 Chương I C c cơ sỏ c a lập trình hướng đ ổ i tượng T ên lóp Đ ịa chỉ bâng th ao t c Tốn lliao uic Đ ia chỉ ứiao l c Đ ia chỉ Ihao t c Tên thao l c Hình 1. 4 C u... phiên bàn UM L 0, 9 Tliáng 1/ 1997 IBM và Softcam ket lìựp với c c thành viẽn UM L c đưa ra phiên bản 1 1 Ngày 14 /11 /19 97 UML l.ỉ dư c c c ihành viên OMG (Object Managemeiìi Group) bỏ phiếu c ng nhận là chuẩn cbo c c ngôn ngữ mô hình hoá và trao đ c quyền xét lại (RTP - Rc\'ision Task Force) cho UML Tháng 6 /19 98 ra đời ƯML 1. 2 Tháng 10 / 19 98 ra đời UM L 1. 3 Tháng 5/ 200 1 ra đời UM L 1. 4 Tháng 6/ 200 3 thông... tập irung chú ý vào c c lớp chủ động, là c c lớp biểu diễn cho c c lộ trình điéu khiển và quá Irlnh th c hiện, (4) G c nhìn ili c thi (c n gọi là g c nhìn thành phần) : Là g c nhìn đối với dạng phát hành c a phần mểm (hệ thống vật !ý) bao gồm c c thành phần và lệp iưcfng đối đ c lập; c ó thế đư c lắp ráp theo nhiều c ch để tạo ra hệ thống chạy dư c, V ới UM L, s c thái lĩnh c a g c nhìn này đư c ihể hiện... phải dùng c c địa chi tưcmg đối và theo chí số Trong vùng nhớ cho c c lớp và đối tượng, c thế sử dụng c c con trỏ Trong c c vùng làm vi c của c c thao t c, thì vi c truy c p vào c c đối iượng là tham số hay biến c c bộ th c hiện bằng c c địa chi tương đối (độ đời so với dịa chỉ vùng làm vi c) 7 H O Ạ T Đ Ộ N (; C A M Á V Đ ố l TƯ Ợ NG M ột Ihao t c đầu tiên cho phép tạo lập ít nhất một đối tượng Tiếp... chí c a đối tượng là biến c c bộ từ n+m +2 : c c cấu tr c của c c đối lượng biến c c bộ Hình Ị.5 C u ir c củơ m ộí viing làm vi c của m ột thao t c « §2 M áy đối tượng ^ 6 C ơ C H Ế Đ ỊA CHI Một máy đối tượng muốn th c hiện một chương trình, phải di chuyển trong bộ nhớ để đ c và điểu chinh c c nội dung nhớ Muốn ihế nó phái lần theo địa chỉ C nhiều loại c chế địa chỉ ở đây, bởi sự c p phát. .. c n cií c (tên hay địa chi) và bao gổm: - C c llỉu c linh (hay trường), là c c dữ liệu mà nó lưu giữ; - C c thao t c (hay phương th c) , là c c dịch vụ mà nó c thể cung ứng Đ ể dễ m ô tả và kiểm soát vi c sử dụng c c đối iưựng, người la gom chúng theo c c kiểu, gọi là c c lớp V ậy lớp là một mô hình (m ột kiểu) cho phép lừ đó thành lập c c đối tượng c chung c u tr c và khả năng dịch vụ Lớp c một c i... trong c c biểu đồ tươiig l c, c c biểu đổ máy trạng thái và c c biểu đổ hoạt động (2) G c nhìn thiết Ẳ’ẽ' (c n gọi là g ó c nhìn lógic): Là g c nhìn vào bên trong hệ thống, cho ihấy c c nhiệm vụ c a hệ Ihống đư c ihiếl kế ra sao (Ihành c c lớp, c c giao diện, c c hợp t c) Đ ó là c ch nhìn c a những người thiết kế hệ thống Với ƯML, thì s c thái tĩnh c a g c nhìn này thể hiện trong c c biểu đồ lớp, c c biểu... vậy c c tham số là đư c chuyển giao theo địa chỉ, chứ không phải chuyển giao Iheo giá trị) Tiẽ^ đến là m lừ dành để ghi địíi chỉ c a m đối tượng là c c biến c c bộ Sau c ng Ihì chính là m c u tr c cúa c c đối iượng tương ứiig với c c biến c c bộ V ai 0 1 2 é • • bi n+2 • • b • n+m+2 « • • • • 0 : địa chỉ vùng gọi 1 : kích c vùng hiện tại 2 đến n +1 : địa chỉ c a c c tham số n+ 2 đến n+m +1 : địa chí ... c ch c i đặt hệ thống (bư c 10 ) ngôn ngữ lập trình C+ + 51 §4 C c công c trợ giúp §4 C C CÔNG C TRỢ GIÚP TÍNH NĂNG C A C C CÔNG c ụ TRỢ GIÚP C c công c Irợ giúp phần mềm hỗ Irợ cho trình phát. .. TRIẺN HỆ THÒNC HƯỜNC ĐOI TƯỢNC VỚI UML 2 .0 VÀ C + + lã số: IL-OI Đ H 200 8 10 0 0 cuốn, khố 16 X 24 cm lại Xướng in Tạp chí tin h c & đời sống ố xuất bàn: 13 6 - 200 7 /C X B /03 - 13 /DHQGHN, ngày 13 /2/ 200 7... chứa kích c (số lừ) đối tượng iưcrng ứng với lớp Sau phần chứa liệu đối tượng Một đối lượng truy c p địa chỉ, địa từ c u tr c đối tượng ao V địa lớp kích c ciia đối tượng thu c lính nguyên, c

Ngày đăng: 04/12/2015, 02:51

Tài liệu cùng người dùng

Tài liệu liên quan