Code Monkey home page Code Monkey logo

ios-bootcamp-challenge's Introduction

iOS Bootcamp Challenge

You must solve this challenge in order to be an attendee in the Wizeline Academy's iOS Bootcamp! But don't worry, you won't face any complex algorithms nor tricky questions about complexity. :) Instead, you'll have to solve a series of tasks regarding the basic principles of iOS Development.

What we have here is a little Pokedex app (which uses the famous PokeAPI).

The topics covered by the challenge are:

Networking & Data

The ListViewController contains a collection of PokeCell which display a list of Pokemons to the user. You need to handle the PokeApi to retrieve each Pokemon detail.

// TODO: Implements generics to merge this methods into one
// TODO: Decode list of types & abilities

Concurrency

Requests in the project take different times to return data! Make sure you are finished downloading all pokemons before updating the CollectionView

// TODO: Wait for all requests to finish before updating the collection view

Patterns and Architecture

To display more info about a Pokemon we provided a SearchBar and DetailViewController objects, however, they are not in use yet! You need to implement them and handle the navigation to allow the user to search and select a Pokemon from the ListViewController to display it in detail.

You can encapsulate your components in the same file or create more files in the project.

// TODO: Handle navigation to detail view controller

Views & Layouts

Let's display the Pokemons details like the image, type, and attacks. Whatever you wanna display. We provided a start UI using Layout Constraints in the code, but feel free to use Frames or the Storyboard!

// TODO: Display pokemon info (eg. types, abilities)

Extras

If you have time left address the extra TODO's inside the project to show off your skills!

// TODO: Implement the SearchBar
// TODO: Use UserDefaults to pre-load the latest search at start
// TODO: Add a loading indicator when the app first launches and has no pokemons

Code Review Process

To get started follow the next steps:

  1. Fork this repository to your local machine
  2. Solve the challenges, creating a commit for every exercise.
  3. After you complete the challenges, upload your changes to github.
  4. Please fill out this Google Form for the iOS Bootcamp

ios-bootcamp-challenge's People

Contributors

jorge-benavides avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.