# Technology_Device_Assignment2.java
**Repository Path**: nxdxwj/Driver.java
## Basic Information
- **Project Name**: Technology_Device_Assignment2.java
- **Description**: Technology_Device_Assignment2
- **Primary Language**: Java
- **License**: MulanPSL-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-06-01
- **Last Updated**: 2024-06-06
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# TechnologyDevice_Project
## This is the Assignment2 contributed by Group 21
### Our group's innovative points are:
**@Author 202383910014 Yingyue Sha, 202383910012 Feier Niu, 202383910029 Weijie Xu**
**@Contribution detailed information is as follows:**
- We have standard naming, indentation, DRY code to improve code quality and maintainability.
- We have added more extra functionality. For example, we use bubble sorting to implement sortByPriceDescending, and we use insertion sorting to implement sortByPriceAscending.
- We have extra detailed Javadoc written for TechnologyDeviceAPI.
- We use placeholders to achieve standard output of strings.
- We create extra fancy menu systems to greet the User.
**@Author 202383910014 Yingyue Sha, 202383910012 Feier Niu, 202383910029 Weijie Xu**
**@Contribution detailed information is as follows:**
- Yingyue Sha: Successfully finish the SmartBand & SmartWatch & WearableDevice Class and test each of them.
- Feier Niu: Successfully finish the Tablet & ComputingDevice Class and test each of them.
- Weijie Xu: Successfully finish the Technology & TechnologyDeviceAPI & Driver Class and test each of them. At the same time, he improved the Utilities Class and fixed all potential errors of the Whole program.
**@Version process:**
### version 1.0:
- basic Technology class, add some extra useful utilities into Utilities Class.
- Write first version of WearableDevice Class with fields and (dummy) methods as per UML.
- Write first version of SmartWatch Class with fields and (dummy) methods as per UML.
### version 2.0:
- basic Tablet & SmartBand & SmartWatch Class.
- basic TechnologyDeviceAPI Class, add some useful utilities.
- Write tests for WearableDevice Class (call the test class WearableDeviceTest)
- Write code for WearableDevice Class. Get (WearableDeviceTest) tests passing.
### version 2.5:
- Write tests for SmartWatch Class (call the test class SmartWatchTest)
- Write code for SmartWatch Class and get tests passing.
- Write tests for SmartBand Class (call the test class SmartBandTest)
- Write code for SmartBand Class and get the tests passing.
### version 3.0:
- Write first version of TechnologyDeviceAPI Class with fields and (dummy) methods as per UML.
- Write dummy code for all methods (as per UML).
- Ensure that the (partial) TechnologyDeviceAPITest compiles.
- Write the TechnologyDeviceAPI Class methods that are tested in the (partial) TechnologyDeviceAPITest.
### version 3.5:
- Complete the tests in TechnologyDeviceAPITest by writing the tests for the untested methods in TechnologyDeviceAPI Class.
- Write the code for these methods and get the tests passing.
- Complete all the tests and ensure all of them properly operating in TechnologyDeviceAPITest & ComputingDeviceTest & ManufacturerTest & SmartBandTest & SmartWatchTest & TabletTest & TechnologyTest & WearableDeviceTest.
### version 4.0:
- Complete the remaining code for Manufacturer CRUD MENU such as addManufacturer(), deleteManufacturer(), updateManufacturer() methods.
- Complete the code for Manufacturer Find and List such as the findManufacturer(), listByManufacturerName() methods
### version 5.0:
• Write the code for Technology CRUD MENU such as the addTechDevice(), deleteTechDevice(), updateTechDevice(),
listTechDevice() methods
• Write the code for Reports MENU such as the runManufacturerReports(), runTechnologyReports() methods.
### version 5.5:
• Write the code for Search Manufacturers such as the listManufacturersByManufacturer(), listByManufacturerName()
methods.
• Write the code for Search Technology Devices such as the searchTopFiveMostExpensiveTechnology(),
searchTopFiveMostExpensiveSmartWatch(), searchTopFiveMostExpensiveTablet() methods.
### version 6.0:
• Write the code for Sorting Technology Devices such as the sortByPriceDescending(), sortByPriceAscending() methods
• Write the code for three different Technology, including SmartBand & SmartWatch & Tablet to implement sort ,list and
search methods separately.
### version 6.5:
• Write the code for saveAll() and loadAll() methods to implement serialization and deserialization processes for Java
and XML files.
### version 7.0:
• We successfully improve the Driver Class running logic and fix all potential errors of the Whole program.
### ==> This TechnologyDevice program is successfully running with the User concrete action.