Description
Description:
The following workshop lets you practice basic java coding techniques, creating classes, methods,
using arrays, Java I/O, inheritance, polymorphism, Exceptional Handling, JavaFx (GUI). The focus
will be practicing for JavaFx concepts.
Task 1: Write a program to display a simple Address Book screen as show below
Task 2 (Event-Handling): The following task is a continuity of Task – 1 and based on some
research as well.
Research Part:
During the lecture of Week 5 and in the workshop 4 you have practiced different concepts on
• How to read a file.
• How to write a file.
• Mostly everyone has practiced FileReader or FileWriter, FileInputStream or
FileOutputStream, Buffered Readers etc.
• Task – 2 required you to first search on RandomAccessFile in Java, o Advantages.
JAC – 444 Semester ——–
o Where to use it.
o How to use it.
Once you have read about the advantages and disadvantages of the RandomAccessFile in java
then you can start the coding for the workshop.
Coding Part:
Write a program that stores, retrieves, adds and updates addresses as shown in the
figure below.
• Use random access file for reading and writing an address.
• When the program starts your files should contains minimum 5 proper records
[make sure the added records are proper not some random strings and/ or postal
code etc].
Hint: Use fixed-length string for storing each attribute in the address.
Deliverables for Task – 2: there will be two different deliverables for this workshop.
1. A word document includes your findings about Random Access File.
a. Advantages
b. Disadvantages
c. Usage.
d. Syntax.
e. Constructors
f. Methods
Note: Also include your references from where you search.
2. Code for the application.
JAC – 444 Semester ——–
Workshop Header
/**********************************************
Workshop #
Course:
Last Name:
First Name:
ID:
Section:
Signature
Date:
**********************************************/
Code Submission Criteria:
Please note that you should have:
• Appropriate indentation.
• Proper file structure
• Follow java naming convention
• Document all the classes properly
• Do Not have any debug/ useless code and/ or files in the assignment
• Do not have everything in the main method.
• Have a separate TestClass with the main method in it.
• Check your inputs if the user is not entering garbage inputs.
• Use exceptional handling or other methods to let the user know if the inputs are
incorrect.
JAC – 444 Semester ——–
Deliverables and Important Notes:
All these deliverables are supposed to be uploaded on the blackboard once done.
• You are supposed to create video/ record voice/ detailed document of your
running solution. (50%) o Screen Video captured file should state your last
name and id, like
Ali_123456.mp4 (or whatever the extension of the file is) o Record voice clip
should also include a separate word file with the screen shots of your program’s
output, state your last name and id, like Ali_123456.mp3 (or whatever the
extension of the file is)
o Detailed document should include screen shots of your output, have your name
and id on the top of the file and save the file with your last name and id, like
Ali_123456.docx (or whatever the extension of the file is)
• A word/ text file which will reflect on learning of your concepts in this workshop. Also
include the instructions on how to run your code. (30%)
o Should state your Full name and Id on the top of the file and save the file with
your last name and id, like Ali_123456.txt
• Submission of working code. (20%)
o Make sure your follow the “Code Submission Criteria” mentioned above.
o You should zip your whole working project to a file named after your Last Name
followed by the first 3 digits of your student ID. For example, Ali123.zip.
• Your marks will be deducted according to what is missing from the above-mentioned
submission details.
• For Late submissions, please refer to the late policy for the course.
• Remember that you are encouraged to talk to each other, to the instructor, or to
anyone else about any of the assignments, but the final solution may not be copied from
any source.



