This challenge is based on the following requirements:
- Book Store consists on a simple 2-column list of available books about mobile development. Using google’s api for books, the app should fetch and display the Thumbnail of a few books at a time and load more as the user scroll’s through the list. References:
- The list should also have a button to filter/show only books that the user has set as favorite.
- When the user clicks on one of the books, the app should present a detailed view displaying the most relevant information of the book: Title, Author, Description and, if available, a Buy link.
- In the detail view, the user can also favorite or “unfavorite” a book. This option should be stored locally so it persists through each app usage.
- Clicking on the Buy link should open the link on safari/chrome.
This app must be build following this rules:
- All the API integrations must be built using C++.
- The app should call this api method and receive a callback with the API result (a json object or an error).
- An APP built using Objective-c/Java that import and use those C++ class.
- It is very important show your experience with testing;
Nice to have:
- Favorites in local storage using C++
All the requirements for the challenge where match:
- API integration built with C++,
libcurl
andjsoncpp
(for parsing) - Favorites storage built with C++ and
sqlite3
- Home screen which recycle every
UICollecitonViewCell
when they leave screen and loads more items when the user reaches the end of the listing - Details screen with favorite button and buy button (if buyLink is available)
- Favorites screen listing from local storage
- Unit tests for Favorites local storage
Screen | Screenshot |
---|---|
Home | |
Detail | |
Favorites |