1. How did you decide to use that design and architectural patterns?
I preferred MVVM pattern for this project. MVVM is very useful pattern because it gives you more flexibility with dependencies, and compared to other patterns, it is much faster to build on if you start from scratch.
2. What should be the part of this app that needs more time to develop or improve?
Error handling with generic alert structure would make this app much smoother.
For search requests, filtering responses and showing more reliable data would make this app much reliable.
Downloaded image sizes are high, there might be performance issues related to memory because of those image sizes.
3. Which part did you like most in this app?
- I enjoyed developing the detail page where we have 2 different types of tableview cell, each has different use case, while making the page scrollable.
4. Does this app ready to submit to store? If not, what should be done to achieve that?
App is not ready to submit to store, because it doesn't have written tests yet.
Backend response should be verified.
UI transitions should be handled smoothly for better experience.
5. Do you have any comments to us?
- There are some technical debts which couldn't be covered due to shortage of time.
"Read More" button can be added to description label on detail page, for expanding the label.
Some kind of network package is used rather than simply URLSession or Alomofire. Because, I think that there will be always a customized network package in real life projects, this one I used is something I'm familiar with.
I added another scheme and configuration just like asked in bonus points, however I haven't connected it to network manager.
6. What are the things you think are missing or open in this assignment?
- I think that this case study covers lots of topics for iOS development and quite educational. The only thing missing is maybe it would be better to have UI designs for smaller screen sizes but overall it was fun.