Phần mềm Quản lý cửa hàng điện thoại với Java | Học phần lập trình hướng đối tượng với Java giúp sinh viên năm được phương pháp lập trình hướng đối tượng (OOP) và ngôn ngữ lập trình Java cơ bản. Bài tập lớn môn học là tổng hợp kiến thức, kỹ năng về phương pháp lập trình hướng đối tượng và ngôn ngữ lập trình Java. Nội dung bài tập lớn gồm: Phân tích bài toán, giới thiệu tông quan về phương pháp lập trình hướng đối tượng, đặc trưng của ngôn ngữ lập trình Java, cài đặt phần mềm với ngôn ngữ Java trong đó sử dụng các lớp kế thừa, lớp trừu tượng vào giao diện (interface) của lập trình hướng đối tượng. Bài tập lớn là tài liệu tham khảo hữu ích cho SV ngành CNTT.
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á
TIỂU LUẬN/
BÀI TẬP LỚN HỌC PHẦN: Lập trình hướng đối tượng
Bắc Ninh, 11 tháng 10 năm 2021
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á
Nhóm 4
TÊN (TIỂU LUẬN/ BÀI TẬP LỚN):
ĐỀ 5: Quản lý cửa hàng điện thoại
Khóa : 11
Lớp: CNTT1
Giảng viên: Thầy Trần Xuân Thanh
Ngành: CNTT
CÁN BỘ CHẤM 1
(Ký và ghi rõ họ tên)
CÁN BỘ CHẤM 2
(Ký và ghi rõ họ tên)
Bắc Ninh, 11 tháng 10 năm 2021
Trang 3Danh sách thành viên:
Lời nói đầu:
Lập trình hướng đối tượng là phương pháp lập trình phổ biến hiện nay Bài giảng “Lập trình hướng đối tượng với Java” là môn học cung cấp cho sinh viên ngành Công nghệ thông tin những kiến thức cơ bản về phương pháp lập trình hướng đối tượng và bước đầu làm quen với ngôn ngữ lập trình Java Đây là ngôn ngữ lập trình mã nguồn mở của hãng SunMicrosystem đang được sử dụng rộng rãi nhƣ một ngôn ngữ lập trình chuyên nghiệp
Bài giảng dành cho sinh viên hệ Đại học và Cao đẳng ngành Công nghệ thông tin trường Đại Học Thành Đô Bài giảng này được biên soạn dựa trên đề cương chi tiết môn Lập trình hướng đối tượng với Java của khoa Công nghệ thông tin Nội dung bài giảng được biện soạn dựa trên nhiều nguồn khác nhau nhằm đáp ứng tốt nhất cho việc học trên lớp cũng như tự học nhà của sinh viên hệ đào tạo tín chỉ
Trang 4Mục lục: Trang
Chương I) Tổng quan về Lập trình hướng đối tượng: 4
1 Tổng quan lập trình hướng đối tượng: 4
1.1: Giới thiệu: 4
1.2: Một số khái niệm: 4
2 Tổng quan về ngôn ngữ JAVA: 5
Chương II) Phát biểu bài toán 6
1 Phát biểu bài toán: 6
2 Yêu cầu: 7
3.Chức năng 7
4.Mô hình lớp,mô hình dữ liệu 7
Chương III) Cài đặt hệ thống 8
1.Project 8
2.Code 9
Chương IV: Kiểm chứng và đánh giá: 13
Link project:https://github.com/manhtieneaut/Baitaplon-CNTT1 Chạy demo:https://drive.google.com/drive/u/1/my-drive
Trang 5Chương I) Tổng quan về Lập trình hướng đối tượng:
1 Tổng quan lập trình hướng đối tượng:
1.1: Giới thiệu:
Lập trình hướng đối tượng (object oriented programming- OOP), là kĩ thuật lập trình hỗ trợ công nghệ đối tượng, giúp tăng năng suất, đơn giản hóa độ phức tạp khi bảo trì cũng như mở rộng phần mềm bằng cách cho phép lập trình viên tập trung vào các đối tượng phần mềm ở bậc cao hơn
Những đối tượng trong một ngôn ngữ OOP là các kết hợp giữa mã và dữ liệu
mà chúng được nhìn nhận nhƣ là một đơn vị duy nhất Mỗi đối tượng có một tên riêng biệt và tất cả các tham chiếu đến đối tượng đó được tiến hành qua tên của
nó Như vậy, mỗi đối tượng có khả năng nhận vào các thông báo, xử lý dữ liệu (bên trong của nó), và gửi ra hay trả lời đến các đối tượng khác hay đến môi trường
1.2: Một số khái niệm:
- Đối tượng(Object) là một trong những thành phần cốt lõi Thông qua
các Object ta có thể làm được các công việc chúng ta cần như: Tính toán, tạo giao diện Các tài nguyên được các object trước tạo ra có thể được các object khác sử dụng lại để thực hiện công việc của chính nó
- Lập trình hướng đối tượng có các tính chất sau:
không cho các truy cập từ code bên ngoài như thay đổi trong thái hay nhìn trực tiếp Việc cho phép môi trường bên ngoài tác động lên các dữ liệu nội tại của một đối tượng theo cách nào là hoàn toàn tùy thuộc vào người viết mã Đây là tính chất đảm bảo sự toàn vẹn, bảo mật của đối tượng Trong Java, tính đóng gói được thể hiện thông qua phạm vi truy cập (access modifier) Ngoài ra, các lớp liên quan đến nhau có thể được gom chung lại thành package
+) Tính kế thừa (Inheritance): là khả năng cho phép ta xây dựng một lớp mới
dựa trên các định nghĩa của một lớp đã có Lớp đã có gọi là lớp Cha, lớp mới phát sinh gọi là lớp Con và đương nhiên kế thừa tất cả các thành phần của lớp Cha,
có thể chia sẻ hay mở rộng các đặc tính sẵn có mà không phải tiến hành định nghĩa lại
Ví dụ:
Trang 6• Lớp Cha là smartphone, có các thuộc tính: màu sắc, bộ nhớ, hệ điều hành…
• Các lớp Con là iPhone, Samsung, Oppo cũng có các thuộc tính: màu sắc,
bộ nhớ, hệ điều hành…
+) Tính trừu tượng (abstraction): giúp loại bỏ những thứ phức tạp, không cần thiết của đối tượng và chỉ tập trung vào những gì cốt lõi, quan trọng
Ví dụ: Quản lý nhân viên thì chỉ cần quan tâm đến những thông tin như: họ tên, ngày sinh, giới tính…
Chứ không cần phải quản lý thêm thông tin về: chiều cao, cân nặng, sở thích, màu
da
+) Tính đa hình (polymorphism): cho phép các đối tượng khác nhau thực thi chức năng giống nhau theo những cách khác nhau
Ví dụ: Ở lớp smartphone, mỗi một dòng máy đều kế thừa các thành phần của lớp cha nhưng iPhone chạy trên hệ điều hành iOS, còn Samsung lại chạy trên
hệ điều hành Android
2 Tổng quan về ngôn ngữ JAVA:
* Lịch sử: Java là ngôn ngữ lập trình hướng đối tượng (tựa C++) do Sun
Microsystem đưa ra vào giữa thập niên 90 Chương trình viết bằng ngôn ngữ lập trình java có thể chạy trên bất kỳ hệ thống nào có cài máy ảo java (Java Virtual Machine-JVM) Ngôn ngữ lập trình Java do James Gosling và các công
sự của Công ty Sun Microsystem phát triển
* Đặc điểm:
- Thông dịch: Java là một ngôn ngữ lập trình vừa biên dịch vừa thông dịch
Chương trình nguồn viết bằng ngôn ngữ lập trình Java có đuôi *.java đầu tiên được biên dịch thành tập tin có đuôi *.class và sau đó sẽ được trình thông dịch thông dịch thành mã máy
- Độc lập nền: Một chương trình viết bằng ngôn ngữ Java có thể chạy trên
nhiều máy tính có hệ điều hành khác nhau (Windows, Unix, Linux, ) miễn sao
Trang 7ở đó có cài đặt máy ảo java(Java Virtual Machine) Viết một lần chạy mọi nơi (write once run anywhere)
- Hướng đối tượng: 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
- Đa nhiệm - đa luồng (MultiTasking - Multithreading): Java hỗ trợ lập
trình đa nhiệm, đa luồng cho phép nhiều tiến trình, tiểu trình có thể chạy song song cùng một thời điểm và tương tác với nhau
- Khả chuyển (portable): Chương trình ứng dụng viết bằng ngôn ngữ Java
chỉ cần chạy được trên máy ảo Java là có thể chạy được trên bất kỳ máy tính,
hệ điều hành nào có máy ảo Java
- Hỗ trợ mạnh cho việc phát triển ứng dụng: Công nghệ Java phát triển
mạnh mẽ nhờ vào “đại gia Sun Microsystem” cung cấp nhiều công cụ, thư viện lập trình phong phú hỗ trợ cho việc phát triển nhiều loại hình ứng dụng khác nhau cụ thể như: J2SE (Java 2 Standard Edition) hỗ trợ phát triển những ứng dụng đơn, ứng dụng client-server; J2EE (Java 2 Enterprise Edition) hỗ trợ phát triển các ứng dụng thương mại, J2ME (Java 2 Micro Edition) hỗ trợ phát triển các ứng dụng trên các thiết bị di động, không dây,
Chương II) Phát biểu bài toán
1 Phát biểu bài toán:
_Cửa hàng bán điện thoại cần có một phần mềm dùng để quản lí hoạt động của cửa hàng
Trang 8_Phần mềm cần có tác dụng là in ra hóa đơn bán hàng và nhập hàng hóa,quản
lí các sản phẩm điện thoại có trong cửa hàng
_Trong hóa đơn bán hàng cần biết rõ mã số hóa đơn,tên và giá của sản phẩm,số lượng được bán,thông tin khách hàng ,thời gian thực hiện giao dịch
và lợi nhuận của mỗi hóa đơn
_Hóa đơn nhập hàng cần biết rõ nguồn gốc nhập hàng,giá trị của đơn hàng,
số lượng của hàng hóa
_Sản phẩm khác nhau cần có mã số riêng,giá sản phẩm,và tên sản phẩm
2 Yêu cầu:
_Một phần mềm quản lý cho cửa hàng điện thoại
_Sử dụng ngôn ngữ lập trình java và các kiến thức về lập trình để hoàn thành sản phẩm
_Yêu cầu của sản phẩm
+Phi chức năng: giao diện GUI (Giao diện đồ họa) đơn giản dễ sử dụng +Yêu cầu khác:Sử dụng kiến thức về tính kế thừa,lớp trừu tượng,….về lập trình hướng đối tượng để làm bài
3.Chức năng
_Chức năng: nhập /xuất,tính toán,thống kê,báo cáo
4.Mô hình lớp,mô hình dữ liệu
Trang 9Chương III) Cài đặt hệ thống
1.Project
Trang 10
2.Code
Trang 14Chương IV: Kiểm chứng và đánh giá:
Trang 16* Tài liệu JAVA tham khảo:
- Bộ giáo trình học lập trình Java từ cơ bản đến nâng cao – Tiếng Việt (4 phần) (Tác
giả : Đại học FPT Polytechnic)
- Giáo trình lập trình hướng đối tượng với Java – ĐH Công Nghệ, ĐHQGHN.