留学生代考 The purpose of this milestone is finalise your FavouritePlaces project to

The purpose of this milestone is finalise your FavouritePlaces project to have a fully polished app that uses online location services, including geo-coding, reverse geo-coding, and sunrise/sunset times. Make sure you can convert forwards and backwards between a location
name and its geographical coordinates for each place in your app. Add a navigation link to your detail view to display the full location information of that place, which includes the name of the location, its coordinates, as well as an interactive map showing the place. Make
sure that the map updates whenever the coordinates of the location change, and make sure that you allow the user to change the coordinates interactively through the map. Ensure that you provide a means for the user to look up the coordinates for a given name as
well as looking up the a name for the coordinats. Also make sure that your app is fully polished and tested. For an example, see the video below.

Copyright By PowCoder代写 加微信 powcoder

Additional Requirements
• Use a local Git repository for version control. Use best practice and commit early and often (see hints below). When submitting, make sure the local repository is included in your submission and that your submission is tagged as milestone3.
• Keep following the Principle of Separation of Concerns, i.e. separate code that deals with different things into different files and types (e.g. Model, View, ViewModel, etc.).
Serialisation (loading and saving) needs to be done using the CoreData protocol as your main persistence protocol for this assignment.
Use JSON through Codable for interacting with online location services that are not built into the iOS API.
• Use best practice when designing your User Interface and make sure your App is fully polished. E.g. design your user interface so it works on differently sized devices, use relevant icons, font settings, emphasis, spacing, separators, drop shadows, and the like.
Some Hints
Create a ZIP archive of the surrounding folder for your assignment (the one containing the project file), i.e. the folder itself, not just its contents. This way you can ensure that everything (including the Git repository) will be included in your submission.
• When using the labs, ZIP up your project often and back up the ZIP file to your local computer, a USB, or network drive (keeping old versions). This ensures you won’t lose your work if anything goes wrong.
• Git only allows you to get back to an earlier version that you have committed. If something breaks, having committed periodic checkpoints means that you can go back to an earlier, working version, look at the changes, figure out why things are not working, and
correct your code.
Use the requirements above as well as the Marking Rubric as a check list early on (and definitely before submitting) to ensure you know what is expected (if in doubt, ask your lab demonstrator or lecturer)
The system names for the images used in the demo video below are: “plus”, “text. magnifyingglass”, “globe.europe.africa.fill”, “questionmark.square.dashed”, “sunrise”, and “sunset’

程序代写 CS代考 加微信: powcoder QQ: 1823890830 Email: powcoder@163.com