Table of Contents
Tables, Data & Networking in iOS Week 01 Quiz Answers
Quiz 1: Exploring Data
Q1. What are some important consideration when working with data in iOS?
- Apps should respect the fact that mobile network bandwidth and data limits can be low
- Apps should only ask for data when it is needed
- Apps need to respect the fact that there could be thousands of rows of information that needs to be displayed
- Users will need a way to easily access data
Quiz 2: Tables & Data Review
Q1. Which of the following are functions of the UITableViewDataSource protocol?
- cellForRowAt
- heightForHeaderInSection
- numberOfSections
- numberOfRows
- didSelectRow
Q2. To get your UITableView to recycle its rows, you need to call the recycle() function
- True
- False
Q3. How can you create a variable that is publicly accessible, but that cannot be modified from outside the file it is declared in?
- private(set) var title: String
- public get private set var title: String
- private(set) public(get) var title: String
- readonly public var title: String
Q4. Which of the following is the correct way to change the scroll direction of a UICollectionView to horizontal?
1. var collection = UICollectionView()
if let layout = collection.collectionViewLayout as? UICollectionViewFlowLayout {
layout.scrollDirection = .horizontal
} 2. var collection = UICollectionView() collection.direction = .horizontal 3. var collection = UICollectionView() collection.layout.scrollDirection = .horizontal
4. All of the above will work
Q5. If the items in the data source that your UITableView is using is altered or updated, what do you need to do to reflect those changes in the UITableView user interface?
- You must reset your table view’s delegate
- Call the function reloadData() on your table
- Call the function setNeedsDisplay() on your view controller
- Call the function refreshData() on your table
Quiz 1: Final Review
Q1. Name one of the two required protocols you must implement when working with UITableView?
Enter answer here
Q2. What class can you inherit from that will automatically implement the protocols needed for UITableView?
Enter answer here
Q3. What class does UITableView inherit from?
Enter answer here
Q4. What class must you inherit from to create cells for a UITableView?
Enter answer here
Q5. How do you reuse table view cells for your table view?
- Call dequeueReusableCell on UITableView
- Call unloadEmptyCell on UITableView
- Simply create a new table view cell, it will grab an unused cell automatically
- None of the above
Q6. Where do you tell UITableView how many cells you will need?
- numberOfCellsPerSection
- rowsNeededPerSection
- totalRowsForSection
- numberOfRowsInSection
Q7. Which of these functions are part of the UITableViewDelegate protocol?
- heightForRow
- cellForRowAt
- willDisplay
- viewForHeaderInSection
Q8. What must you do to any UITableViewCell before you can dequeue them for reuse?
- Add each class to the Info.plist file
- Assign them a unique cell identifier
- You must enable them by setting the property isEnabled on the cell
- You must register them within the protocol function registerCell
Q9. Before your UITableView protocol functions are called, what must you do first?
- Set the direction property of the table view
- Set the dataSource property of the table view
- Set the delegate property of the table view
- Set the totalRows property of the table view
Q10. You can remove the separator line that is shown between table cells?
- True
- False
Tables, Data & Networking in iOS Week 02 Quiz Answers
Quiz 1: Core Data Preamble
Q1. What are some good use cases for implementing Core Data in your iOS app?
- When you want data to be stored even after your app closes
- When a stable network connection is not guaranteed
- When you are working with complex data sets
- When you need high performance data saving and fetching
Quiz 2: Core Data Quick Review
Q1. To save an object to Core Data what must you do?
- Make your data changes, then call save() on the managed object context
- Call the saveAll() function on the persistent container
- Your data changes are automatically saved as they are made
- None of the above
Quiz 3: Final Review
Q1. Can the persistent store coordinator have multiple persistent stores?
- Yes
- No
Q2. How many managed object models can a persistent store coordinator have?
Enter answer here
Q3. Where do you create Core Data entities and relationships?
- In the Info.plist file
- In the xcdatamodeld file
- In any struct that inherits from the CoreData protocol
- Any of the options above will work
Q4. How can you retrieve data from Core Data?
- By calling find on an NSFetchRequest
- By calling retrieve on the NSPersistentStore
- By calling find on the NSPersistentStore
- By calling fetch on the NSManagedObjectContext
Q5. An Entity can inherit from another Entity?
- True
- False
Q6. Properties that you define as part of the model, but that are not saved to the persistent store as part of an entity instance’s data are known as?
Enter answer here
Q7. Which of the following are valid Core Data attribute types?
- NSString
- NSNumber
- NSDate
- NSMutableArray
Q8. The Core Data stack consists of what primary objects?
- NSManagedObjectContext
- NSPersistentStoreCoordinator
- NSPersistentCoordinator
- NSFetchedResultsController
- NSManagedObjectModel
Q9. To create a subclass for an entity in code, you must inherit from what class?
- NSManagedObject
- NSObject
- NSFetchRequest
- NSEntityModel
Q10. What class would you use to filter fetched results from Core Data?
Enter answer here
Tables, Data & Networking in iOS Week 03 Quiz Answers
Quiz 1: Quick Review
Q1. What does HTTP stand for?
Enter answer here
Quiz 2: Swift Refresher
Q1. Given the code below, what will be printed?
1. let number = 5
2.
3. switch number {
4. case 0..<5:
5. print("A")
6. case 5...10:
7. print("B")
8. case 0...5:
9. print("C")
10. default:
11. print("D")
12. }
- A
- B
- C
- D
Q2. Given the code below, what will be printed?
1. func display(names: String...) {
2. print("Friends:", names.joined(separator: ", "))
3. }
4.
5. display(names: "Tom", "Larry", "Moe")
- Friends: Tom, Larry, Moe
- Friends: TomLarryMoe
- Friends: ,Tom, Larry, Moe,
- The code will not compile
Q3. Given the code below, what will be printed?
1. var people = Dictionary<String,String>()
2. people["Bob"] = "Smith"
3. print(people.count)
- 0
- 1
- This code will compile, but will print nothing at runtime
- This code will not compile
Q4. When the code below runs, what will the value of the result constant be?
1. func sum(numbers: Array<Int>) -> Int {
2. var result = 0
3.
4. for number in numbers {
5. result += number
6. }
7.
8. return result
9. }
10.
11. let result = sum(numbers: [5, 4, 3, 2, 1])
Enter answer here
Q5. When the code below is run, what will be printed?
1.let card = "Aces"
2.
3.switch card {
4.case "Aces":
5. fallthrough
6.
7.case "Spades", "Clovers", "Hearts":
8. print("Spades Clovers Hearts")
9.
10.default:
11. print("No Card")
12.}
Enter answer here
Q6. When the code below runs, what will the value of the result constant be?
1. let numbers = [1, 3, 5, 7, 9]
2. let result = numbers.map { $0 * 10 }
- [1,3,5,7,9]
- [10,30,50,70,90]
- [0]
- This code will not compile
Q7. Given the code below, what value will be printed?
1. let digits = Array(1..<10)
2. print(digits.count)
Enter answer here
Q8. Given the code below, what value will be printed?
1. let countries = [String](repeating: "Belgium", count: 2)
2. print(countries.count)
Enter answer here
Q9. Given the code below, what value will be printed?
1. var cars = Set()
2. cars.insert("Volvo")
3. cars.insert("Mercedes")
4. cars.insert("Ford")
5. cars.insert("Volvo")
6. print(cars.count)
Enter answer here
Q10. Given the code below, what value will be printed?
1. var trees = [String]()
2. trees.reserveCapacity(2)
3. trees.append("Oak")
4. trees.append("Redwood")
5. trees.append("Evergreen")
6. print(trees.count)
Enter answer here
Tables, Data & Networking in iOS Week 04 Quiz Answers
Quiz 1: Networking Review
Q1. What does the acronym CRUD stand for?
- Create, Read, Update, Delete
- Creation, Replication, Universal, Derivative
- Casting, Replication, Universal, Derivative
- None of the above
Q2. What does REST stand for?
Enter answer here
Q3. What is the best and quickest way to parse JSON from the network?
- Use Swift’s JSONSerialization class
- Implement the Codable or Encodable protocol on your data model
- Use XML instead of JSON
- None of the above
Q4. What do you need to do in your iOS app in order to allow insecure network requests?
- Register the insecure domains you wish to use on https://developer.apple.com
- In App Transport Security Settings you can add insecure “Exception Domains”
- In App Transport Security Settings you can “Allow Arbitrary Loads”
- As of iOS 10 you can no longer make insecure network requests
Q5. Network requests on iOS should always be:
- Asynchronous
- Synchronous
Q6. Because network requests can fail, you must always:
- Check for 404 and 403 status codes
- Parse the message field of the incoming error
- Retry the request if it fails
- Request status codes and errors are determined by the API and you must therefore match what the API sends
Q7. Which of the following are usually the headers that you will need to send up with a network request?
- “Client” : “POST”
- “Security” : “HTTP/HTTPS”
- “Content-Type” : “application/json”
- “Accept” : “application/json”
Q8. To get back on the UI thread after an asynchronous request is made you must call what function?
Enter answer here
Q9. Which status code typically represents success?
Enter answer here
Q10. What is the primary difference between a GET request and a POST request?
- A POST request can only be made against secure (HTTPS) endpoints
- A GET request is for creating new objects while POST is for fetching existing objects
- A POST request often has a body while a GET request does not
- A GET request is just another name for a POST request
Get all Course Quiz Answers of Swift 5 iOS Application Developer Specialization
Introduction to Programming in Swift 5 Coursera Quiz Answers
Introduction to iOS App Development with Swift 5 Quiz Answers
Tables, Data & Networking in iOS Coursera Quiz Answers
iOS App Store & In-App Purchases Coursera Quiz Answers