Giới thiệu chung I Đặt vấn đề
Giới thiệu về ngôn ngữ Java
1 Nền tảng đ-ợc thiết lập cho Java
Vào cuối thập niên 80 và đầu thập niên 90, C++ trở thành ngôn ngữ lập trình phổ biến nhờ sự kết hợp giữa hiệu quả cao và các yếu tố của ngôn ngữ C với mô hình hướng đối tượng Tuy nhiên, sự phát triển của ngôn ngữ máy tính đã thay đổi khi World Wide Web và Internet trở nên phổ biến, dẫn đến một cuộc cách mạng trong lập trình và sự ra đời của Java.
Java là công nghệ quan trọng trong phát triển ứng dụng phần mềm, đặc biệt nổi bật vào cuối thế kỷ 20 và đầu thế kỷ 21 Được xem là một bước đột phá, Java cho phép tạo ra các ứng dụng chạy mượt mà trên nhiều nền tảng chỉ với một lần biên dịch Hiện nay, Java trở thành nền tảng thiết yếu cho các ứng dụng quy mô lớn trong doanh nghiệp nhờ vào khả năng mở rộng và các nền tảng phong phú mà nó cung cấp.
Sun Microsystem (SUN viết tắt của Stanford University Network), công ty đã phát minh ra ngôn ngữ Java, chính thức ban hành bản Java Development Kit
1.0 vào năm 1996 hoàn toàn miễn phí Java đã trải qua 3 b-ớc phát triển quan trọng: Java 1.0 gắn liền với bản JDK đầu tiên, Java 2 gắn với JDK 1.2 và Java
2 Ngôn ngữ lập trình Java
Ngôn ngữ lập trình Java, được phát triển bởi SUN vào giữa thập niên 90, là một ngôn ngữ hướng đối tượng tương tự như C++ Khác với nhiều ngôn ngữ lập trình thông thường, Java biên dịch mã nguồn thành bytecode thay vì mã máy, cho phép môi trường thực thi chạy bytecode này Nhờ vào phương pháp này, Java thường có hiệu suất cao hơn so với các ngôn ngữ thông dịch như Python, Perl, và PHP, đồng thời cũng mang lại tính khả chuyển tốt hơn so với các ngôn ngữ biên dịch như C++ Cần lưu ý rằng Java không nên bị nhầm lẫn với JavaScript, mặc dù cả hai đều có cú pháp tương tự như C.
Ngày nay, Java không chỉ được coi là một ngôn ngữ lập trình mà còn là một công nghệ và nền tảng phát triển toàn diện, bao gồm nhiều thành phần khác nhau.
* Bộ công cụ phát triển : J2SDK
* Các đặc tả chi tiết kĩ thuật (specifications)
* Ngôn ngữ lập trình (programming language)
* Các công nghệ đi kèm nh- JSP, Servlet, EJB, JDBC, JNDI, JMX, RMI … và framework nh- Struts, Spring, JSF, Hibernate, JavaFX
3 Sự ra đời của Java
Ngôn ngữ lập trình Java do James Gosling và các cộng sự trong nhóm
Đội ngũ Green Team của Công ty Sun Microsystems đã phát triển một ngôn ngữ lập trình mới dành cho các thiết bị tiêu dùng Năm 1995, Sun chính thức giới thiệu Java, đánh dấu bước tiến quan trọng trong lĩnh vực công nghệ.
Java, được giới thiệu vào năm 1995, là một ngôn ngữ lập trình dành cho trình duyệt Web, nhanh chóng trở thành công cụ quan trọng cho doanh nghiệp và các ứng dụng thiết yếu Điều thú vị là sự phát triển ban đầu của Java không xuất phát từ Internet, mà từ nhu cầu về một ngôn ngữ lập trình độc lập nền tảng.
Kiến trúc trung lập cho phép phát triển phần mềm nhúng cho nhiều thiết bị điện tử tiêu dùng khác nhau Nhiều loại CPU, đặc biệt là bộ điều khiển, thường được sử dụng trong quá trình này Tuy nhiên, việc sử dụng C và C++ trong lập trình phần mềm nhúng có thể gặp một số khó khăn.
Hầu hết các ngôn ngữ lập trình, bao gồm C++, được thiết kế để biên dịch cho một loại CPU nhất định Mặc dù có thể biên dịch chương trình C++ cho bất kỳ loại CPU nào, nhưng việc này yêu cầu một trình biên dịch C++ hoàn chỉnh cho từng CPU, điều này vừa tốn kém vừa mất nhiều thời gian Do đó, cần tìm kiếm một giải pháp dễ dàng và hiệu quả hơn.
Gosling và các đồng nghiệp đã phát triển một ngôn ngữ lập trình linh động, độc lập với nền tảng, nhằm tạo ra mã có thể thực thi trên nhiều CPU và trong các môi trường khác nhau.
Sau hơn 18 tháng phát triển, nhóm đã đặt tên ngôn ngữ lập trình đầu tiên là Oak, lấy cảm hứng từ những cây sồi trồng bên ngoài văn phòng của Gosling Tuy nhiên, khi biết rằng tên Oak đã được sử dụng cho một ngôn ngữ lập trình khác, họ đã đổi tên thành Java, theo tên một hòn đảo ở Indonesia Hòn đảo Java nổi tiếng với các vườn cà phê, lý do giải thích cho biểu tượng ly cà phê xuất hiện trong nhiều sản phẩm phần mềm và công cụ lập trình Java của Sun cũng như các hãng phần mềm khác.
Java là ngôn ngữ lập trình hấp dẫn cho các nhà phát triển mô hình hướng đối tượng nhờ vào cấu trúc mã dễ hiểu, tương tự như C/C++, nhưng với tính liên kết và logic nhất quán cao hơn Nó có ít cấu trúc không an toàn và hạn chế các tính năng xử lý cấp thấp, đồng thời tích hợp cơ chế dọn dẹp bộ nhớ tự động Đặc biệt, Java có khả năng chạy trên nhiều nền tảng phần cứng khác nhau, mang lại sự linh hoạt cho người dùng.
4 Một số đặc điểm của Java Đơn giản (simple):
Java được xem là ngôn ngữ lập trình đơn giản vì nó kế thừa từ C++, nhưng Sun đã loại bỏ những tính năng phức tạp nhất của C++ để tăng tính dễ sử dụng cho người lập trình.
Là một ngôn ngữ lập trình mới, nó cần có giao diện và cảm giác tương tự như các ngôn ngữ phổ biến hiện nay, đồng thời yêu cầu thời gian đào tạo lại tối thiểu và dễ sử dụng hơn cho người dùng.
Ngôn ngữ này được thiết kế đơn giản và nhỏ gọn, phù hợp cho các thiết bị điện tử dân dụng như đầu chạy video và hộp điều khiển từ xa, nơi không gian lưu trữ thường rất hạn chế.
H-ớng đối t-ợng (Object Oriented):
H-ớng đối t-ợng trong Java t-ơng tự nh- C++ nh-ng Java là một ngôn ngữ lập trình h-ớng đối t-ợng hoàn toàn Tất cả mọi thứ đề cập đến trong Java đều liên quan đến các đối t-ợng đ-ợc định nghĩa tr-ớc, thậm chí hàm chính của một ch-ơng trình viết bằng Java (đó là hàm main) cũng phải đặt bên trong một lớp H-ớng đối t-ợng trong Java không có tính đa kế thừa (multi inheritance) nh- trong C++ mà thay vào đó Java đ-a ra khái niệm interface để hỗ trợ tính đa kế thừa Vấn đề này sẽ đ-ợc bàn chi tiết trong phần sau
Các công cụ sử dụng trong đồ án
những thành phần Swing sử dụng để giao tiếp thông tin với các class
javax.swing.table cung cấp các mô hình và khả năng quan sát cho thành phần bảng, cho phép sắp xếp dữ liệu một cách riêng biệt trong định dạng lưới, mang đến giao diện tương tự như bảng tính.
- javax.swing.text :Cung cấp các điểm của các lớp và giao tiếp dựa trên văn bản hỗ trợ thiết kế thông dụng đ-ợc biết đến nh- document/view.
Giới thiệu chi tiết đồ án
Phân tích thiết kế hệ thống 1 Sơ đồ phân cấp chức năng
Các chức năng chính của hệ thống quản lý thông tin bác sỹ:
- Quản lý thông tin bác sỹ
- Quản lý thông tin ng-ời dùng
1 Sơ đồ phân cấp chức năng
Sơ đồ phân cấp chức năng là công cụ quan trọng để mô tả chức năng và quá trình của biểu đồ luồng dữ liệu, giúp thể hiện các chức năng xử lý của hệ thống theo các mức độ khác nhau Việc phân rã chức năng trong sơ đồ này không chỉ làm rõ các thành phần của hệ thống mà còn chỉ ra mức độ xuất hiện của từng quá trình hoặc quá trình con trong biểu đồ luồng dữ liệu.
Khảo sát thực tế về "Hệ thống quản lý thông tin bác sỹ" đã chỉ ra sơ đồ phân cấp chức năng của hệ thống, được trình bày theo các mức cụ thể.
Biểu đồ luồng dữ liệu
Biểu đồ luồng dữ liệu là công cụ mô tả các chức năng của hệ thống, thể hiện mối quan hệ giữa các bước xử lý và việc trao đổi thông tin Nó giúp làm sáng tỏ các chức năng và thông tin cần thiết, cho phép người dùng hiểu rõ hơn về hoạt động thực tế của hệ thống Biểu đồ luồng được phân chia thành nhiều mức, trong đó có mức ngữ cảnh.
Mức tổng quát nhất được xây dựng ở giai đoạn đầu của quá trình phân tích nhằm xác định biên giới của hệ thống Người phân tích và thiết kế cần xem xét các luồng dữ liệu từ bên ngoài, xác định các tác nhân ngoài của hệ thống và coi toàn bộ các xử lý của hệ thống như một chức năng Ở mức này, biểu đồ chưa bao gồm kho dữ liệu.
Quản lý thông tin bác sỹ Quản lý thông tin ng-ời dùng
Thêm thông tin bác sỹ
Chỉnh sửa thông tin bác sỹ
Quản lý thông tin bác sỹ
Thêm thông tin ng-ời dùng
Chỉnh sửa thông tin ng-ời dùng
Hiển thị thông tin T×m kiÕm b Mức đỉnh
Dựa vào sơ đồ phân cấp chức năng ở mức 2 để tách các chức năng thành các chức năng con trên cơ sở tôn trọng 4 nguyên tắc sau:
- Các luồng dữ liệu phải bảo toàn
- Các tác nhân ngoài cũng phải đ-ợc bảo toàn
- Có thể xuất hiện các kho dữ liệu
- Có thể bổ sung các luồng dữ liệu nội bộ
- Có 2 thực thể bên ngoài: Ng-ời quản lý và ng-ời sử dụng
Hệ thống quản lý thông tin bác sỹ
Ng-êi quản lý(admin)
Ng-ời sử dông(Users)
Quản lý thông tin bác sỹ
Quản lý thông tin ng-êi dùng Ng-ời quản lý
- Kho dữ liệu: Ng-ời sử dụng c Mức d-ới đỉnh
Dựa trên các chức năng cơ bản được thể hiện trong biểu đồ luồng dữ liệu cấp cao, chúng ta sẽ phân tích và chi tiết hóa thành các chức năng con tương ứng với biểu đồ phân cấp chức năng thấp nhất, tuân thủ các nguyên tắc cơ bản đã đề ra.
- Phải phân rã các chức năng ở mức trên xuống mức d-ới
- Các tác nhân ngoài bảo toàn từ sơ đồ mức đỉnh
- Kho dữ liệu xuất hiện dần theo yêu cầu quản lý nội bộ
- Bảo toàn các luồng dữ liệu vào ra với các tác nhân ngoài và thêm các luồng nội bộ
- Có thể tách biểu đồ thành từng trang ứng với một hoặc vài chức năng ở mức đỉnh
*Quản lý thông tin ng-ời dùng:
- Các tiến trình: Xóa, thêm thông tin, chỉnh sửa thông tin, hiển thị thông tin
*Quản lý thông tin bác sỹ:
- Các tiến trình: Xóa, thêm thông tin, chỉnh sửa thông tin, t×m kiÕm
Users(UserName,Password,Name,IsAdmin)
T×m kiÕm Ng-ời quản lý
Hospital(HospitalCode, HospitalName,Address, CountryRegion)
Doctor(DoctorCode, DoctorName, Birthday, Sex, MaritalStatus,
HomeAddress, PhoneNumber, MobilePhone, Email, Website, HospitalCode,
Achievement(AchieCode, DoctorCode, DateTime, Description, Degree,
WorkSchedule(WorkScheCode, DoctorCode., WorkPlace, StartTime,
Thiết kế ch-ơng trình I Cơ sở dữ liệu 1 L-ợc đồ quan hệ dữ liệu
Giao diện ch-ơng trình
Form Thay đổi mật khẩu:
2.3 Form Quản lý ng-ời dùng: