A young entrepreneur has decided to start an online exotic car sales company named Exotic Moves and he’s contacted you to build the company’s website. You have been given the following requirements and will need to create a prototype with JavaFX:
1. The company sells 5 brands of exotic cars (Aston Martin, Ferrari, Lamborghini, McLaren, and Maserati).
2. The website should allow a user to see the total inventory of cars or filter their view based on certain criteria.
3. The website must allow the user to filter cars by brand, color, prince range, or whether the car is convertible or not. The filters should work together (i.e. a user should be able to view all blue convertibles or all white Ferraris).
4. A user should be allowed to click on an image and view details about a specific car. Clicking on a car image should allow the user to see a larger view of the image along with details about the car.
5. Each car should display the following details:
Convertible (yes or no)
Number of cylinders
Time it takes to go from zero to 60 MPH
6. Along with the details, a user should be given the option to purchase (via a button) an individual car once an image of the car is clicked.
7. If a user chooses to purchase a car, the website should show a form asking for the user’s first and last name, credit number, credit card expiration date, and credit card 3 digit code. Once the information is entered, the website should display a receipt.
Additional Information
Your controls should enforce data validation. First and last names can only consist of letters A-Z. Credit card numbers should only consist of numbers and must be exactly 16 digits. The credit card date field must allow only dates. The credit card 3 digit code must allow only 3 numbers.
Your application window should be large enough to comfortably house all controls. Image size must be uniform across the board. There should be 2 viewing sizes – one for viewing as a collection and one for viewing individual images. When implementing the filtering feature, your app should present options to the user (for example, a combo box, a list, or a checkbox, control).
Follow good UI design practices. Your presentation should look and feel professional. Pay attention to spacing between controls.
Object Orientation
Your program should showcase your knowledge of polymorphism, inheritance, and encapsulation. Use accessor/mutator methods. Demonstrate a knowledge of either abstract classes or interfaces as a super class(es).

New Download