68009 – PROG2004 Assignment 2Weight: 40% of your final markDue:

FIND A SOLUTION AT Academic Writers Bay

PROG2004 Assignment 2Weight: 40% of your final markDue: 27th September 2021 11 pmSpecificationsYour task is to complete various exercises in Netbeans, using the Java language, and to submit these via the MySCU link created for this purpose.Marking criteria includes:• Use of correct coding style, including the use of comments;• Accuracy of coding;• Use of suitable coding structures;• Correct submission and naming conventions of assessment items as required.Getting HelpThis assignment is to be completed individually. It is the opportunity to gain an understanding of the concepts of object oriented programming and coding syntax. It is important that you master these concepts yourself. You are permitted to work from the examples in the study guide or textbook but you must acknowledge assistance from other textbooks or classmates. In particular, you must not use online material or help from others, as this would prevent you from mastering these concepts.Who can you get help from? Use this diagram to determine from whom you may seek help with your program.Lecturer Tutors Online ForumsRelatives Students outside unit Hired codersClassmates Private Tutors OtherEncouragedAttribution RequiredAsk tutorNot acceptablePlease Note for all parts of the assignment:• You cannot use the same examples that the Study guide uses. Examples taken from the study guide will result in no marks and may count as plagiarism.• Marks will be given for high cohesion. This means that you should not have all your code in the start method.• If your marker has any suspicion that you had help with your code or that your work is not your own you will be asked to come to a meeting with your marker to explain your code. Any student who is unable to explain their code will be submitted for academic misconduct.Part 1 –Shapes and EventsCreate a new JavaFX project called firstName_lastName_Part1 in Netbeans. In my case, the project would be called Alex_Hendry_Part1.Using a BorderPane:• Add at least 4 different shapes to your app (Every shape must have at least 1 event)Your app must:• Demonstrate the use of at least 4 different Mouse events• Demonstrate the use of at least 2 different Key events• Demonstrate the use of a GridPane in one section of the BorderPane• Demonstrate the use of a FlowPane in one section of the BorderPane• Demonstrate the use of at least 1 inner class• Demonstrate the use of at least 1 anonymous inner class• Demonstrate the use of at least 1 lambda expression• Demonstrate the use of setHgap, setVgap, setHalignment and setValignment• Marks will be given for cohesion i.e. you should not have all of your code in the start method. You should make use of multiple methods, each with a distinct function. Ideally you should have a method for each shape.Part 2 – Images and AnimationsCreate a new JavaFX project called firstName_lastName_Part2 in Netbeans. In my case, the project would be called Alex_Hendry_Part2.• Add an image as the background for your app using an ImageView object• Demonstrate the use of at least 3 methods of ImageView• Add a Polygon with at least 8 sides o Demonstrate the use of the FadeTransition class to fade the polygon in and out• Add a second shape (can be any shape) o Demonstrate the use of the PathTransition class using the second shape as the path and any shape as the node• Add a third shape (can be any shape) o Demonstrate the use of the Timeline class to change the colour of the third shape every 1 second indefinitely e.g., red to blue to red to blue to red to blue etc. You can choose whatever colours you likePart 3 – UI Controls and CollectionsCreate a new JavaFX project called firstName_lastName_Part3 in Netbeans. In my case, the project would be called Alex_Hendry_Part3.For this part of the assignment, you need to build an app that stores a collection of Students (see attached class at the end of this assignment). Your app will allow the user to enter data about a student. When the user is finished the data will be written to a Student object and then the Student object will be added to an ArrayList. The user can then enter data for a new Student and repeat the process.Your app will need the following UI controls that will be mapped to instance variables in the Student Class provided at the end of this document:• Text field for the first name• Text field for the last name• Slider for the age• Radio buttons for the gender• Check boxes for the subjects the student has completed (add at least 4 subjects from the IT degree)• A list view for the programming languages the student likes (at least 4 programming languages)Once a user has entered the data for a student your app needs to do the following:• Write the data from the UI to a Student object (use the attached class at the end of this assignment)• Add the Student object to an ArrayList that will store all students entered by the user• Reset the UI controls so the user can enter a new StudentOne way to do this would be to have the following (you do not have to do it this way):• A “New Student” button that resets the UI controls.• An “Add Student” button that creates a new instance of the Student, sets the Students instance variables (via the mutator methods) using the values from the UI controls and then adds the Student to the ArrayListPLEASE NOTE:• Marks will be given for cohesion i.e. you should not have all of your code in the start method. You should make use of multiple methods, each with a distinct function• You CANNOT modify the attached Student classSubmissionYou should now have 3 Netbeans projects. You must zip the projects into one zip file called firstName_lastName_A2.zip For example, mine would be alex_hendry_A2.zip.Submit this file via the Assignment 2 link on MySCU by the due date. Please leave enough time for it to upload, so do not submit at the last minute!Student ClassUse the following class for your Student:public class Student { // text fieldprivate String firstName;// text fieldprivate String lastName;// slider private Integer age; // radio buttons private String gender; // check boxesprivate HashSet String subjects = new HashSet();// list viewprivate HashSet String programmingLanguages = new HashSet();public Student() {}public void setFirstName(String firstName) {this.firstName = firstName;}public void setLastName(String lastName) { this.lastName = lastName;}public void setAge(Integer age) {this.age = age;}public void setGender(String gender) {this.gender = gender;}public void setSubjects(HashSet String subjects) {this.subjects = subjects;}public void setProgrammingLanguages(HashSet String programmingLanguages) { this.programmingLanguages = programmingLanguages;}}

Order from Academic Writers Bay
Best Custom Essay Writing Services

QUALITY: 100% ORIGINAL PAPERNO PLAGIARISM – CUSTOM PAPER