Coder Social home page Coder Social logo

bohdanorlov / ios-developer-roadmap Goto Github PK

View Code? Open in Web Editor NEW
6.3K 355.0 1.4K 34.78 MB

Roadmap to becoming an iOS developer in 2018.

Swift 99.46% Shell 0.54%
swift ios objective-c architecture system-design problem-solving interview roadmap materials

ios-developer-roadmap's Introduction

Header image

🚀 iOS Developer Roadmap

Roadmap to becoming an iOS developer in 2020.

☝️ What is it?

This is a tree-like compilation of topics highly relevant to iOS development. Both image and text version are generated from human readable content file.

✌️ Who is it for?

The roadmap will be helpul for:

  • anyone who wants to become an iOS developer
  • iOS developers who desire to become experts
  • iOS developers who are preparing for interviews and need to brush up knowledge
  • iOS developers who need to compile own set of interview questions

👌 Why these topics?

See this article explaining selection of topics.

👨‍🎓 How to use this roadmap

  1. Find a topic you want to study.
  2. Go to corresponding resources section.
  3. Study until you can confidently explain the topic to your cat.
  4. (Optional) tick the checkbox next to the topic. How to tick a checkbox.
  5. Go to step 1.

Essential topics are topics which significantly contribute to understanding of iOS development. Consequently, it is a good idea to study them first as they are often encountered on interviews.

Start from Getting started section if you haven't done any iOS development yet.

🗺 Image version

Roadmap of essential topics. Roadmap for all topics is here. Header image

📝 Text version

Text version with materials to study.

🤝 How to contribute

  • add new topics to Content.yml
  • add missing study materials to Content.yml
  • throw ideas at me on Twitter: @Bohdan_Orlov

The complete contribution guide.

☑️ TODO

  • content file with topics and materials
  • ability to generate README.md from the content file
  • ability to generate Roadmap tree image from the content file
  • make generation script less miserable:
    • make it readable 🤦
    • output Yaml format violation errors
    • handle errors of parsing Yaml into Topics and Resources
    • handle file read/write errors
    • handle image generation errors
  • automatic regeneration of roadmap after every commit
  • automatic validation of content format on PR
  • make sure Travis doesn't deploy if generation script fails

⚙️ Generation status

Travis

📃 License

License: CC BY 4.0

📊 Skills Matrix

You might also like the iOS Developer Skills Matrix. Skills matrix

📚 iOS and Swift Tutorials and Courses

Learn iOS development & Swift online from the best iOS Swift tutorials and courses recommended by the programming community. https://hackr.io/tutorials/learn-ios-swift

ios-developer-roadmap's People

Contributors

anthonyby avatar avadhesh12345678 avatar aymanfekri avatar bohdanorlov avatar darhonbek avatar dgenyk avatar genykdmytro avatar iamrsalman avatar ilin-in avatar mrcieong avatar parsifalc avatar ravi-aggarwal-code avatar raviaggarwal61 avatar talisk avatar traviscibot avatar wladmirjunior avatar zj9205 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ios-developer-roadmap's Issues

Roadmap project won't compile for Swift 4.1

Trying to compile the Roadmap project fails in Xcode 9.3.1 / Swift 4.1 (macOS 10.13.4), due to outdated Yaml 3.3.1 module defined in Podfile.lock. Error:

Module compiled with Swift 4.0.3 cannot be imported in Swift 4.1…

Attempting to resolve by updating Yaml via performing a pod update resulted in another cocoapods error (running cocoapods-1.5.3, cocoapods-rome-1.0.0):

NoMethodError - undefined method build_settings' for nil:NilClass /Library/Ruby/Gems/2.3.0/gems/cocoapods-rome-1.0.0/lib/cocoapods-rome/post_install.rb:44:in block in enable_debug_information'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-rome-1.0.0/lib/cocoapods-rome/post_install.rb:42:in each' /Library/Ruby/Gems/2.3.0/gems/cocoapods-rome-1.0.0/lib/cocoapods-rome/post_install.rb:42:in enable_debug_information'

Module compiled with Swift 5.0 cannot be imported by the Swift 5.2.4 compiler

I've downloaded and try to run the project that the destination is My Mac and got some error:

Module compiled with Swift 5.0 cannot be imported by the Swift 5.2.4 compiler: /Users/agung/Downloads/Learning/iOS/Roadmap - iOS Developer/RoadmapProject/cocoapods-rome/Rome/Yaml.framework/Modules/Yaml.swiftmodule/x86_64.swiftmodule

May I translate it and post to Korea's community?

Hi Bohdan! I just saw your iOS developer roadmap repo very interestingly.
Thx for informative roadmap! I'm junior ios dev in Korea and I’d like to post it on Korea's iOS community.
Would you let me translate repo and post?
I’ll inform your name, original links, and I’ll strictly follow your license.
Please just let me know whether I could translate and post it. 😀

Module cannot be imported

When generateAll.sh is executed, it gets the following error:

./main.swift:11:8: error: module compiled with Swift 4.0.3 cannot be imported in Swift 4.1

Divide knowledge areas differently

In my opinion, current divide is not good. Practical knowledge on the right side is also a CS knowledge and the left side topic are also very welcome to learn in practice :)

What I suggest is to divide this a little bit different:

  • Left - General CS knowledge
  • Right - Specific iOS development knowledge

What do you think?

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.