Giter Club home page Giter Club logo

daily-forecast's Introduction

Android Developer Position Technical

Task

Our task focuses on architecture and coding skills, so please spend time reviewing task architecture and code readability.

Daily forecast Application

Daily forecast application is a simple application consisting of only one screen with a top bar containing a text field accepting the city name then when the user click search app should hit api and get daily forecast data for given city name, and cache it. Each day in days list should contain any ui item (it’s up to you) to indicate weather description like (​Rain, Snow, Extreme etc.). If a user faces any failure in data retrieving app should first check if needed data exists in local cache if yes app should display cached data and show some warning to indicate it’s not accurate data, if no data cached he should see UI represent this error and option to retry.

Here is the API to use in this task:

api.openweathermap.org/data/2.5/forecast/daily?q={cityname}&cnt={cnt}&appid={API key}

Documentation link: ​ **https://openweathermap.org/forecast16 **

Evaluation

Your code will be assessed based on the following:

● Screen performs as described and contains the specified details.

● Code must be clean and readable

● SOLID principles and OOP applied .(but don’t over engineer any task).

Bonuses ​​

● Unit testing

● UI Testing

daily-forecast's People

Contributors

moatazmohamed50 avatar moatazhamada avatar

Watchers

 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.