1. Homepage
  2. Programming
  3. ECS 036B: Software Development and Object-Oriented Programming in C++ - Homework 6: JSON2Object

ECS 036B: Software Development and Object-Oriented Programming in C++ - Homework 6: JSON2Object

Engage in a Conversation
USUC DavisECS 036BECS36BSoftware Development and Object-Oriented Programming in C++C++JSON2Object

ECS 36B Spring 2023 Homework #6 (5%) CourseNana.COM

This is a group project involving two students. CourseNana.COM

For homework 3 and 4, you have been asked to design C++ classes to accomplish the following – CourseNana.COM

The ecs36b lecture on Wednesday, April 12 of 2023 ended at 6 pm in the room 176 of Everson Hall at UC Davis. The instructor took the Unitrans L line from the Silo Station, leaving at 6:10 pm, and the bus driver was a Psychology student named Tiffany. On the same bus, there was another ecs36b student, John. John asked the instructor some questions about homework assignment #2 (using his own computer), before he got off the bus at the 8th and J Street stop at 6:20 pm on the same date. After John being off the bus, the instructor started playing an online game on an Android device. The instructor said “thank you” to the bus driver, Tiffany, before he himself got off at the Moore and Pollock stop at 6:32 pm. CourseNana.COM

You designed and implemented classes such as Person, Thing (e.g., bus, computer, device, ), GPS (i.e., locations for classroom and the bus stops), Time (e.g., JvTime), and particular Record (when, where, who, and which things) to cover four events -- CourseNana.COM

  1. Class room at 6:00 pm
  2. Silo station at 6:10 pm
  3. 8th and J Street at 6:20 pm
  4. Moore and Pollock at 6:32 pm

And, for each of the classes, you have implemented two virtual functions – virtual Json::Value ::dump2JSON(); virtual bool ::JSON2Object(Json::Value); For this assignment, you will enhance your design and implementation such that your JSON2Object virtual member function will “throw” ecs36b_exception objects if any of the following FOUR conditions is detected with an error message describing the condition – CourseNana.COM

  1. Missing any essential key-value pairs in the input JSON, for example, a GPS location JSON doesn’t have the latitude component of the DD format. [Message – “Missing ”]
  2. The value type is unexpected/mismatched, for example, the value of the “latitude” key is not a Double or Float, instead, it is encoded as a String. [Message – “ must be ”]
  3. The structure of the input JSON is incorrect. For example, we are expecting a JSON object but it is an Array or any non-object type. This might include anything not generated by your own dump2JSON() function. [Message – “Input JSON is not an Array”]
  4. Very unusual events are detected (this is a new part). We now require you to add a new attribute “hidden”, a String. If the JSON2Object function detects the “hidden” key-value pair AND the String is equal to “SOS” or “HELP”, then, your program will throw an exception as well. [Message – “A Critical Hidden detected”]

Furthermore, you will need to write a test program called ecs36b_hw6_driver.cpp, which will provide the corresponding try and catch clauses such that all four conditions can be tested/demonstrated. CourseNana.COM

For submission via canvas, please follow the steps: • Create a subdirectory ecs36b_s2023, and then cd ecs36b_s2023. (mkdir, cd) • Create a subdirectory hw4, and then cd hw6. • Put all your programs and Makefile under the hw6 directory. • You should also provide a README file to explain how to run your program. • cd .. • tar zcvf ecs36b_s2023_hw6submission.tar.gz hw1 • upload ecs36b_s2023_hw6submission.tar.gz to Canvas • ONLY one member of the team needs to submit with team name and both student IDs included in the README file. CourseNana.COM

Grading policy – If your program makes and compiles okay, 1%. 1% for each of the four conditions, both the generation of throw and the design of catch those throws. CourseNana.COM

Get in Touch with Our Experts

WeChat (微信) WeChat (微信)
Whatsapp WhatsApp
US代写,UC Davis代写,ECS 036B代写,ECS36B代写,Software Development and Object-Oriented Programming in C++代写,C++代写,JSON2Object代写,US代编,UC Davis代编,ECS 036B代编,ECS36B代编,Software Development and Object-Oriented Programming in C++代编,C++代编,JSON2Object代编,US代考,UC Davis代考,ECS 036B代考,ECS36B代考,Software Development and Object-Oriented Programming in C++代考,C++代考,JSON2Object代考,UShelp,UC Davishelp,ECS 036Bhelp,ECS36Bhelp,Software Development and Object-Oriented Programming in C++help,C++help,JSON2Objecthelp,US作业代写,UC Davis作业代写,ECS 036B作业代写,ECS36B作业代写,Software Development and Object-Oriented Programming in C++作业代写,C++作业代写,JSON2Object作业代写,US编程代写,UC Davis编程代写,ECS 036B编程代写,ECS36B编程代写,Software Development and Object-Oriented Programming in C++编程代写,C++编程代写,JSON2Object编程代写,USprogramming help,UC Davisprogramming help,ECS 036Bprogramming help,ECS36Bprogramming help,Software Development and Object-Oriented Programming in C++programming help,C++programming help,JSON2Objectprogramming help,USassignment help,UC Davisassignment help,ECS 036Bassignment help,ECS36Bassignment help,Software Development and Object-Oriented Programming in C++assignment help,C++assignment help,JSON2Objectassignment help,USsolution,UC Davissolution,ECS 036Bsolution,ECS36Bsolution,Software Development and Object-Oriented Programming in C++solution,C++solution,JSON2Objectsolution,