Find Jobs
Hire Freelancers

C++ refactoring

$30-250 CAD

Cancelled
Posted over 6 years ago

$30-250 CAD

Paid on delivery
Download the zip folder and read the requirements html file and the attached code. You only need to do part 2 of the requirements file which you need to write a document on what needs to be refactored. The deadline is in **8 HOURS** THE BUDGET IS 30-40 CAD PART 2: Refactoring Recommendations: In Part II we want you to analyse the code provided, make a refactoring recommendation, and then implement it. Here is your chance beat up on our code for a change. Thoroughly examine the solution code provided and find something about it that you DON'T like. That is, find something (other than the collections problem from part I) that you think should be refactored. This can be based on the current state of the code or something you think will become a problem as the code scales up or grows in complexity. Remember refactoring is not about fixing bugs but about reorganizing code that already works. If you are in doubt about your intended refactoring please discuss it with us before you proceed. (If you do find bugs please report them so we can fix them.) Here are the specific itemized requirements that specify the task. Some of the requirements call for written explanations or pictures. Provide a Part II Analysis document in .pdf format that has the itemized explanations and documentation asked for below. Submit this document file with your code files. FR3.2.1) Identify the aspect of the code you DON'T like and describe what it is. Provide some sample lines from the provided code to make it clear what you have identified. FR3.2.2) Provide an explanation of what you find objectionable about the code you've identified and explain why you think it should be refactored. FR3.2.3) Your refactoring recommendation should be warranted. It should make a real improvement. Don't suggest, for example, replacing a chain of if-else statements with a switch statement instead. Something that trivial is not worthy of being considered a refactoring. (If you are in doubt discuss your planned modifcation with us ahead of time.) FR3.2.4) Explain your refactoring strategy and how you intend to refactor the code. Provide some sample code or pseudo-code to illustrate your strategy. FR3.2.5) Provide two UML class diagrams of the classes that will be involved in, or affected b,y your refactoring. They should show the classes involved before and after the refactoring. The diagrams should both show the relationships the classes have to one another. (It is possible that the diagrams will look identical depending on what your refactoring modification is.). FR3.2.6) The code you submit for this assignment should include your part II refactoring. FR3.2.7) The code, after your part II refactoring should behave the same as originally (That is, still meet all the functional requirements it did before). FR3.2.8) Provide a test script called [login to view URL] that you feel illustrates that your refactoring did not alter the intended behaviour of the code. That is, provide a script that executes commands that could have been affected by your refactoring if not done correctly. This is called "Regression Testing" where you provide test cases in which you hope that nothing has changed from before the code change.
Project ID: 15655450

About the project

Remote project
Active 6 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs

About the client

Flag of CANADA
Ottawa, Canada
5.0
51
Payment method verified
Member since Oct 19, 2013

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.