L ỜI CAM ĐOAN
3.2.1 Một số CSDL hướng đối tượng
Tại mục này ta sẽ xem xét một số CSDL hướng đối tượng đã được áp dụng trong thực tế. Các CSDL hướng đối tượng đó là:
A. Object Store
Object Store được sử dụng rộng rãi trong công nghiệp cho các cơ sở dữ liệu cơ khí, CAD/CAM. Object Store là một sản phẩm của hãng Object Design. Nó cung cấp việc lưu trữ bền vững các đối tượng, cung cấp việc hỗ trợ các chỉ sốđối tượng
40
và có thể lưu trữ các dạng dữ liệu khác nhau. Object Store tạo điều kiện thuận lợi cho việc tạo và duy trì đa phiên bản và dữ liệu, cung cấp các ghi nhớ phiên bản.
Object Store cung cấp nguồn thao tác dữ liệu rất tốt như là giao tiếp C và C++ với dữ liệu bền vững. Nó cũng cung cấp các truy vấn được biên dịch trước hoặc đang trong khi thi hành.
Object Store lưu trữ giữ liệu bền vững trên các đĩa cho các hệ thống tệp của Object Store. Hệ thống tệp có thể là những phần dành riêng hoặc là hệ thống tệpUNIX chuẩn.
B. dBASE
Dbase là sản phẩm của hãng Borland. Borland chuyên cung cấp các sản phẩm và dịch vụ cho các nhà phát triển phần mềm, trong đó phải kể đến Delphi, Borland C++, Paradox, dBASE, Borland Database Engine và Interbase.
Visual dBASE 5.5 là sản phẩm hướng đối tượng thế hệ thứ hai trong dòng sản phẩm dBASE, dựa trên các công cụ trực quan và một ngôn ngữ lập trình linh hoạt. Với sự bổ sung tính năng kế thừa trực quan, cho phép tạo các thư việc biểu mẫu và người dùng có thể dùng lại trong suốt quá trình phát triển ứng dụng.
Delphi cung cấp chương trình biên dịch mã gốc và các công cụ trực quan, công cụ phát triển ứng dụng theo nhóm. Visual Query Builder dùng để thiết kế các truy vấn phức tạp với thư việc có hơn 75 các thành phần sẵn có. Reportsmith SQL cho phép hỏi đáp và báo cáo trên các máy chủở xa.
dBASE 5.5 là CSDL với mô hình dữ liệu đối tượng quan hệ bao gồm kế thừa, đóng gói và đa hình. Trường kiểu binary cho phép lưu các dữ liệu phức tạp như âm thanh, hình ảnh và đa phương tiện trong các bảng. Trường OLE cho phép lưu các đối tượng tạo từ các ứng dụng khác nhau trong bảng của dBASE. Việc xử lý các giao dịch hướng sự kiện đảm bảo tính toàn vẹn của dữ liệu, cho phép người dùng phục hồi lại từng giao dịch tại bất kỳ thời điểm nào.
Ngôn ngữ lập trình dBASE hỗ trợ phương pháp lập trình hướng sự kiện. Mô hình đối tượng bao gồm kế thừa, đóng gói và đa hình, hỗ trợ OLE, DDE, các điều khiển VBX, truy cập trực tiếp tới các thư viện liên kết đồng và các hàm trong
41
Windows API. Ngoài ra nó còn có thể được mở rộng với các ngôn ngữ lập trình C, C++ hay Pascal.
C. Công nghệ O2
O2 là hệ quản trị CSDL hướng đối tượng thích hợp cho các ứng dụng khác/chủ cỡ lớn. O2 thích hợp cho công nghệ phần mềm, CAD/CAM, viễn thông, hệ quản lý các thông tin kỹ thuật, các hệ thông tin địa lý (GIS) cũng như các lĩnh vực tài chính, ngân hàng và bảo hiểm. O2 Engine là một cơ cấu CSDL đối tượng kết hợp tất cả những tính năng của một hệ CSDL chuẩn với những tính năng của mô hình CSDL hướng đối tượng.
O2 tương thích với chuẩn ODMG cung cấp môi trường phát triển bao gồm cả tập hợp các công cụ phát triển giao diện. Để phát triển ứng dụng trên O2, nhà phát triển có thể sử dụng các giao diện lập trình CSDL, C++ và O2C.
Các kiểu dữ liệu chuẩn bao gồm Boolean, string, character, integer, real và bit. O2 hỗ trợ đóng gói ở các mức: lớp, lược đồvà CSDL. Các phương thức trong O2 được liên kết trong thời gian chạy chương trình. Một lớp có thể sử dụng đơn hay đa kế thừa từ các lớp sẵn có.
D. Phần mềm CAD và CSDL CAD
Ta đã biết các phần mềm CAD là trung tâm của hệ thống CAD. Nó bao gồm các chương trình cho phép thực hiện mô hình hóa vật thể chi tiết, thiết kế và phân tích kỹ thuật... Từtrước tới nay ta thường chỉ biết với các tệp DWG, DGN, DSN... như là các tệp bản vẽ. Tuy nhiên, nếu xét về khía cạnh CSDL, các tệp bản vẽ thực chất lại là các CSDL hướng đối tượng bởi vì chúng đảm bảo lưu trữ tồn tại bền vững các đối tượng CAD và các phần mềm CAD là các trình quản trịCSDL hướng đối tượng cho phép người sử dụng thêm bớt, xử lý và kết xuất dữ liệu theo các yêu cầu khác nhau. Tuy nhiên để tệp lưu trữ dữ liệu CAD thực sự trở thành CSDL đòi hỏi phần mềm CAD phải cung cấp hoặc hỗ trợ API lập trình để người dùng có thể đăng ký đối tượng mới, có thể truy nhập sâu vào CSDL và nếu như vậy, API lập trình đó thực sự là trình quản trị CSDL CAD.
42
Trong giai đoạn đầu của quá trình phát triển tin học các phần mềm CAD chỉ mới là công cụ trợ giúp cho người sử dụng thể hiện các bản vẽ kỹ thuật cho nên mô hình đối tượng chỉ dừng lại ở mức độlà các đối tượng điểm, đường, cung tròn, vòng tròn... Với các đối tượng hình học đó mới chỉ giúp chúng ta thể hiện được bản vẽ của chi tiết, cụm chi tiết máy cụ thể. Cho nên càng về sau các phần mềm CAD càng phát triển giúp người sử dụng có được mô hình đối tượng thực sự (mô hình solid) của vật thể cần thể hiện trong CSDL CAD bằng cách cung cấp các API lập trình. Khi mà các vật thểđã được hình dung như vốn bản tính tự nhiên của chúng thì sẽ tạo ra tiền đề thuận lợi cho việc thực thi các giai đoạn sau của quá trình CAD/CAM/CAE/CAQ được thể hiện như sau:
Ý tưởng CAD CAPP CAM CNC, Robots CAQ CAE Lưu trữ Phân phối PP MRP II Nhu cầu Hệ cơ sở dữ liệu trung tâm
Hình 3.3: Vai trò của CAD trong hệ thống sản xuất tích hợp
Người sử dụng thao tác với CSDL CAD thông qua một phần mềm CAD, mà cụ thể là thông qua các thể hiện đồ họa của phần mềm CAD. Các dữ liệu mà người sử dụng đưa vào sẽ phải được mô hình hóa sau đó mới được lưu trữ vào CSDL như hình vẽ 3.4.
43
Hiện nay, tệp bản vẽ của một số phần mềm CAD đã trở thành CSDL hướng đối tượng thực sự khi chúng cung cấp API lập trình phù hợp cho phép người dùng đăng ký đối tượng với CSDL CAD, truy nhập sâu vào cấu trúc CSDL để lấy thông tin về mối quan hệ và ràng buộc giữa các đối tượng thông qua các chỉ sốđối tượng.
Thể hiện đồ
họa Mô hình đối tượng
Các API lập trình PHẦN MỀM CAD Người sử dụng Người phát triển ứng dụng Cơ sở dữ liệu CAD (CSDL HĐT)
Hình 3.4: Cấu trúc của một phần mềm CAD
CATIA là một trong những phần mềm CAD thông qua các API của mình đã thực sự làm tốt điều đó. Với các API của hãng Dassault Systèmes đã tạo ra môi trường phát triển ứng dụng nhanh (RADE – Rapid Application Development Enviroment) cho phép người dùng có thể tích hợp các Know – how của mình trong các ứng dụng đặc biệt của CATIA và ENOVIA. Chính vì điều này CATIA đã phát triển nhiều trình ứng dụng tích hợp trong nó Mechanical (Part Design; Assembly Design; Mould Design...); Shape Design và Styling; Analysis; Equipment & Systems Engineering; Plant; NC Manufactering; Product Synthesis; Architectural Design; ... phục vụcho các lĩnh vực khác nhau. Các đối tượng tồn tại bền vững mà người sử dụng có thểđăng ký mới với CSDL là các đối tượng chuyên biệt (Custom Object) thông qua API trình quản trị, thực chất là bộthư viện liên kết động dựa trên ngôn ngữ lập trình C++, Java dưới dạng các tệp DLL cho phép mô hình hóa hướng đối tượng và can thiệp sâu vào CSDL của CATIA (gọi tắt là CSDL CATIA). Vơi API đó, chúng ta có thể lập ra những ứng dụng tạo nên những đối tượng được thiết
44
kế thông minh từ những đối tượng cơ sở trong CSDL CATIA (đối tượng chuyên biệt). Các đối tượng chuyên biệt có tính mềm dẻo với mức độ cao có thể đáp ứng nhanh các yêu cầu của người sử dụng như nâng cấp, cải tiến, hiệu chỉnh đối tượng.
Phần mềm CAD MicroStation với API MDL (MicroStation Development Language) cho phép người dùng có thể truy nhập được vào CSDL của nó và có thể phát triển các chương trình con phục vụ cho công việc của mình. MicroStation thiên vềlĩnh vực thiết kế và xây dựng CSDL cho các lĩnh vực liên quan tới hạ tầng cơ sở hơn là lĩnh vực cơ khí CAD/CAM. Tuy nhiên MDL không cho phép mô hình hóa hướng đối tượng và can thiệp sâu vào CSDL hình học của MicroStation và không được phát triển tiếp từ năm 1992. Phiên bản mới MicroStation/J cho phép mô hình hóa bằng ngôn ngữ lập trình Java. Tuy nhiên, mức độ can thiệp vào CSDL hình học nội tại của bản thân MicroStation/J thấp hơn nhiều so với CATIA và nó sẽ không được đề cập tiếp trong luận văn này.