Assignment A This assignment requires you to design and code a Java application that implements a Class. Your code must be logically organised, well commented, and as stable as possible. To help you...

I need someone to complete the Java program for me. I have attached the assignment details



Assignment A This assignment requires you to design and code a Java application that implements a Class. Your code must be logically organised, well commented, and as stable as possible. To help you achieve this, you will be provided with detailed instructions that set out what your class is expected to do, and some rules and restrictions regarding how your code must work. You will be expected to thoroughly test your class. Some example test code will be provided to get you started. We will assess your work by reading your code, commenting on any problems. We will also test your code to check that it works as expected, and that you have implemented the required features correctly. Assessment Summary  Component Course Objectives Weighting Due Date Individual or Pairs Submission Point Assignment A CO1, CO3, CO4, CO5 25% 12:00 PM, Monday of Week 6 Individual Online on Moodle Top of Form Bottom of Form Assessment Description In this assessment, Assignment One, you will: · Create a mutable String Class called StringImproved. · Use a test program to test your code. · Submit a zip file containing all codes via the submission point.  For further information on the task, see the Assessment Details section. Assessment Aims This assessment aims to: · Demonstrate your understanding of how class and strings are coded using Java. This knowledge will assist you as a graduate as you may seek works that requires programming. The assessment addresses the following course objectives: [CO1]. Apply strategies (problem-solving techniques) to conceptualise problems, and formulate a solution including mapping the solution to classes within the Java programming language [CO3]. Debug and fix code defects [CO4]. Apply international coding style standards [CO5]. Communicate appropriately with professional colleagues through source code documentation. Assessment Details In Java, Strings are a great device for storing arrays of characters. One limitation of Strings in Java, however (there is always at least one), is that they are immutable (i.e. they cannot be changed once created). Your mission is to create a mutable String Class (called StringImproved) with some clever features. You will also need to ensure that your program is bug free. Your StringImproved Class should be uncrashable as possible. If your code detects faulty/incorrect input it should handle it as instructed in the java API. Data Structure To make your life easier you will be provided with an API specification (just like the JavaDocs you use for your programming). You must use a char array to store your String in your Class. You are not permitted to use any collection Classes in this assignment. You will need to implement the entire class based on the API specification. This class will encapsulate all the functionality required. Testing A test program is also provided for you to use. Please read it carefully as you will be expected to generate your own in Assignment Two. Use the test driver as a starting point to test your Class as thoroughly as possible. Be aware that your marker can test your program beyond the scope of the test program provided. They may, for example, do this to help them understand the way your program behaves if it does something unexpected.  NOTE: Please download a copy of the test program and use it to test your work as often as you like. This program does not submit your work for assessment. Suggested Procedure It is suggested that you do your assignment in the following order · Create all the method signatures in the StringImproved Class. Each method should just be blank (with a return null, 'a', 0/1, true/false etc if necessary). · Compile and make sure that the program works (well, technically it won't because the methods are empty, but make sure it compiles with no error). · Write the constructors. Test. · Write the length method. Test. · Write the charAt method. Test. · Write the endsWith method. Test. · Write the toLowerCase method. Test. · Write the toUpperCase method. Test. · Write the lastIndexOf method. Test. · Write the increaseArray method. Test (note there is no provided test you will need to do it). · Write the shrinkArray method. Test (note there is no provided test you will need to do it). · Write the contains method. Test. · Write the substring method. Test. · Write the insert method. Test. · Write the append method. Test. · Write the deleteSubString int int method. Test. · Write the deleteSubString string method. Test. · Write the deleteCharAt method. Test. · Write the prepend method. Test. · Write the replaceString method. Test. · Write the sort (advanced students) method. Test. Note that when you add functionality you may have to add test scenarios to other test methods to ensure you have covered all the possibilities. Hint: Many of the more complicated methods can use the easier methods to do part of their job. For instance if you have a method to delete some string you can use contains and delete (by index) together to achieve your aim. Additional Requirement In addition to what is above there are a number of requirements for this assignment. Most of these are to introduce interesting problems for you to solve and must be obeyed. · As you are programming you will also need to comment your code thoroughly in each of your methods. · Whenever you use a String class (for example passed as a parameter) you can only use two methods. One method is the charAt() method of String class to get content. The other method is toCharArray() method of String class. Sorry we can't make this too easy. · The char array in your structure must always have only the space that is required. · You are not permitted to use any other String methods in this class. If you use a String method other than charAt() and toCharArray() methods, you will get 0 (zero) for the offending method. Marking Criteria The following steps will be used in the process:  · We will run javadoc on your code to see if your code generates the API correctly. · We will read your code to look for style and commenting problems. · We will use the test driver to test your testing code. The following marking scheme will be used to assess your submission. Criteria Weight Execution of code with correct output (no issues with the testing of the system) 60% Use appropriate programming logic 20% Apply coding style standards 12% Add appropriate comments 8% Top of Form Bottom of Form Submission Requirements · Export your solutions as an Archive Zip file within the Eclipse IDE. · Name your zipped file: studentEmailID_uopf_AssignmentA.zip, where studentEmailID is your UniSA's login ID or email ID (e.g. karsy028). · Submit one zip file by 12:00 NOON, Monday of Week 6 via the submission point at the bottom of this page.
Jul 22, 2021
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here