C211 Problem Solving and Programming II

C211 Project Phase 2

Due Dates:
First draft: Monday, October 30, 2023.
Working version: Monday, November 6, 2023.

Ex. 1. GitHub Class Project

In this phase of the group project, you will work with your group on a project distributed in GitHub that will represent a collaboration of the whole class. The goal is to get used a little more to GitHub, to work on implementing some code with your team, and to get used to the library class ArrayList.

The project will consist of implementing two classes: LargeNumber and TestNumber. The first class implements a large integer number of unlimited size and a few arithmetic operations to manipulate it. The second one will perform some testing of the class. The class LargeNumber uses an ArrayList to store the digits of the number.

You will receive individually an invitation to join the project on GitHub. Then each team will receive one method assigned to them to implement. One person in each team will need to submit the code of the function through GitHub.

a. Getting Started

If you haven't installed GitHub Desktop yet, you can download it from here:
https://desktop.github.com/

Open the GitHub Desktop application for your system. From the list of repositories on the left, click on the little arrow next to the repository name, then on Add, Clone Repository. Click on the URL tab, then enter the address
https://github.com/dvrajito/C211_Large_Number
Choose a local path for the project, then click Clone. The project should appear in your list of repositories.

You can open the project folder by clicking Show in Explorer. The Java files are in the folder src. If you use Eclipse, you can open the application, then from the File menu, select Open Project from the File System. Click on Directory, then browse to the project folder, then click Finish. You will need to clone the repository on each computer where you want to work on it.

If you use NetBeans, you probably need to create a project to add these files to it. You can copy the files from that project back to this folder when you are ready to commit the code you wrote to GitHub.

The code should compile and run, and it showcases how to create and display a large number object.

b. Team Methods

Each student that has provided a link to their GitHub account will receive an invitation to be added as collaborator to the repository. You will not be able to commit your changes until you accept the invitation.

Each team will receive an email assigning them one or two methods to implement. For example, if you are assigned an addition method in the class LargeNumber, you will also be assigned to write a small testing method in TestNumber. Use the Git tools to commit the implementation of your method(s) to the repository.

Make sure to add a comment before each method that you add where you briefly explain its purpose but where you also add your names as authors to the method. You should also add your names in the comment at the top of the file.

You will need to pull or fetch the code from the cloud repository from time to time as other teams submit their code. Every local clone should eventually end up containing the code from all the teams and a main that tests all of the methods.

Submission

One person per team should commit the code to the GitHub project. There is nothing to submit to Canvas for this assignment.