├── .gitignore ├── CODE_OF_CONDUCT.md ├── LICENSE ├── README.md ├── README_ES.md ├── README_NL.md ├── README_PT_BR.md ├── ROADMAP_STUDY_CONTENT.md ├── docs ├── contributing.md ├── contributing_es.md ├── contributing_nl.md ├── contributing_pt_br.md ├── exporting_fig_file.png ├── exporting_image.png ├── importing_project.png └── ungroup_content.png ├── images └── android_roadmap.png └── project └── Android Developer Roadmap 2020.fig /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | In the interest of fostering an open and welcoming environment, we as 6 | contributors and maintainers pledge to making participation in our project and 7 | our community a harassment-free experience for everyone, regardless of age, body 8 | size, disability, ethnicity, sex characteristics, gender identity and expression, 9 | level of experience, education, socio-economic status, nationality, personal 10 | appearance, race, religion, or sexual identity and orientation. 11 | 12 | ## Our Standards 13 | 14 | Examples of behavior that contributes to creating a positive environment 15 | include: 16 | 17 | * Using welcoming and inclusive language 18 | * Being respectful of differing viewpoints and experiences 19 | * Gracefully accepting constructive criticism 20 | * Focusing on what is best for the community 21 | * Showing empathy towards other community members 22 | 23 | Examples of unacceptable behavior by participants include: 24 | 25 | * The use of sexualized language or imagery and unwelcome sexual attention or 26 | advances 27 | * Trolling, insulting/derogatory comments, and personal or political attacks 28 | * Public or private harassment 29 | * Publishing others' private information, such as a physical or electronic 30 | address, without explicit permission 31 | * Other conduct which could reasonably be considered inappropriate in a 32 | professional setting 33 | 34 | ## Our Responsibilities 35 | 36 | Project maintainers are responsible for clarifying the standards of acceptable 37 | behavior and are expected to take appropriate and fair corrective action in 38 | response to any instances of unacceptable behavior. 39 | 40 | Project maintainers have the right and responsibility to remove, edit, or 41 | reject comments, commits, code, wiki edits, issues, and other contributions 42 | that are not aligned to this Code of Conduct, or to ban temporarily or 43 | permanently any contributor for other behaviors that they deem inappropriate, 44 | threatening, offensive, or harmful. 45 | 46 | ## Scope 47 | 48 | This Code of Conduct applies both within project spaces and in public spaces 49 | when an individual is representing the project or its community. Examples of 50 | representing a project or community include using an official project e-mail 51 | address, posting via an official social media account, or acting as an appointed 52 | representative at an online or offline event. Representation of a project may be 53 | further defined and clarified by project maintainers. 54 | 55 | ## Enforcement 56 | 57 | Instances of abusive, harassing, or otherwise unacceptable behavior may be 58 | reported by contacting the project team at ana.coimbra.gomes@gmail.com. All 59 | complaints will be reviewed and investigated and will result in a response that 60 | is deemed necessary and appropriate to the circumstances. The project team is 61 | obligated to maintain confidentiality with regard to the reporter of an incident. 62 | Further details of specific enforcement policies may be posted separately. 63 | 64 | Project maintainers who do not follow or enforce the Code of Conduct in good 65 | faith may face temporary or permanent repercussions as determined by other 66 | members of the project's leadership. 67 | 68 | ## Attribution 69 | 70 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, 71 | available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html 72 | 73 | [homepage]: https://www.contributor-covenant.org 74 | 75 | For answers to common questions about this code of conduct, see 76 | https://www.contributor-covenant.org/faq 77 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Attribution-ShareAlike 4.0 International 2 | 3 | ======================================================================= 4 | 5 | Creative Commons Corporation ("Creative Commons") is not a law firm and 6 | does not provide legal services or legal advice. Distribution of 7 | Creative Commons public licenses does not create a lawyer-client or 8 | other relationship. Creative Commons makes its licenses and related 9 | information available on an "as-is" basis. Creative Commons gives no 10 | warranties regarding its licenses, any material licensed under their 11 | terms and conditions, or any related information. Creative Commons 12 | disclaims all liability for damages resulting from their use to the 13 | fullest extent possible. 14 | 15 | Using Creative Commons Public Licenses 16 | 17 | Creative Commons public licenses provide a standard set of terms and 18 | conditions that creators and other rights holders may use to share 19 | original works of authorship and other material subject to copyright 20 | and certain other rights specified in the public license below. The 21 | following considerations are for informational purposes only, are not 22 | exhaustive, and do not form part of our licenses. 23 | 24 | Considerations for licensors: Our public licenses are 25 | intended for use by those authorized to give the public 26 | permission to use material in ways otherwise restricted by 27 | copyright and certain other rights. Our licenses are 28 | irrevocable. Licensors should read and understand the terms 29 | and conditions of the license they choose before applying it. 30 | Licensors should also secure all rights necessary before 31 | applying our licenses so that the public can reuse the 32 | material as expected. Licensors should clearly mark any 33 | material not subject to the license. This includes other CC- 34 | licensed material, or material used under an exception or 35 | limitation to copyright. More considerations for licensors: 36 | wiki.creativecommons.org/Considerations_for_licensors 37 | 38 | Considerations for the public: By using one of our public 39 | licenses, a licensor grants the public permission to use the 40 | licensed material under specified terms and conditions. If 41 | the licensor's permission is not necessary for any reason--for 42 | example, because of any applicable exception or limitation to 43 | copyright--then that use is not regulated by the license. Our 44 | licenses grant only permissions under copyright and certain 45 | other rights that a licensor has authority to grant. Use of 46 | the licensed material may still be restricted for other 47 | reasons, including because others have copyright or other 48 | rights in the material. A licensor may make special requests, 49 | such as asking that all changes be marked or described. 50 | Although not required by our licenses, you are encouraged to 51 | respect those requests where reasonable. More_considerations 52 | for the public: 53 | wiki.creativecommons.org/Considerations_for_licensees 54 | 55 | ======================================================================= 56 | 57 | Creative Commons Attribution-ShareAlike 4.0 International Public 58 | License 59 | 60 | By exercising the Licensed Rights (defined below), You accept and agree 61 | to be bound by the terms and conditions of this Creative Commons 62 | Attribution-ShareAlike 4.0 International Public License ("Public 63 | License"). To the extent this Public License may be interpreted as a 64 | contract, You are granted the Licensed Rights in consideration of Your 65 | acceptance of these terms and conditions, and the Licensor grants You 66 | such rights in consideration of benefits the Licensor receives from 67 | making the Licensed Material available under these terms and 68 | conditions. 69 | 70 | 71 | Section 1 -- Definitions. 72 | 73 | a. Adapted Material means material subject to Copyright and Similar 74 | Rights that is derived from or based upon the Licensed Material 75 | and in which the Licensed Material is translated, altered, 76 | arranged, transformed, or otherwise modified in a manner requiring 77 | permission under the Copyright and Similar Rights held by the 78 | Licensor. For purposes of this Public License, where the Licensed 79 | Material is a musical work, performance, or sound recording, 80 | Adapted Material is always produced where the Licensed Material is 81 | synched in timed relation with a moving image. 82 | 83 | b. Adapter's License means the license You apply to Your Copyright 84 | and Similar Rights in Your contributions to Adapted Material in 85 | accordance with the terms and conditions of this Public License. 86 | 87 | c. BY-SA Compatible License means a license listed at 88 | creativecommons.org/compatiblelicenses, approved by Creative 89 | Commons as essentially the equivalent of this Public License. 90 | 91 | d. Copyright and Similar Rights means copyright and/or similar rights 92 | closely related to copyright including, without limitation, 93 | performance, broadcast, sound recording, and Sui Generis Database 94 | Rights, without regard to how the rights are labeled or 95 | categorized. For purposes of this Public License, the rights 96 | specified in Section 2(b)(1)-(2) are not Copyright and Similar 97 | Rights. 98 | 99 | e. Effective Technological Measures means those measures that, in the 100 | absence of proper authority, may not be circumvented under laws 101 | fulfilling obligations under Article 11 of the WIPO Copyright 102 | Treaty adopted on December 20, 1996, and/or similar international 103 | agreements. 104 | 105 | f. Exceptions and Limitations means fair use, fair dealing, and/or 106 | any other exception or limitation to Copyright and Similar Rights 107 | that applies to Your use of the Licensed Material. 108 | 109 | g. License Elements means the license attributes listed in the name 110 | of a Creative Commons Public License. The License Elements of this 111 | Public License are Attribution and ShareAlike. 112 | 113 | h. Licensed Material means the artistic or literary work, database, 114 | or other material to which the Licensor applied this Public 115 | License. 116 | 117 | i. Licensed Rights means the rights granted to You subject to the 118 | terms and conditions of this Public License, which are limited to 119 | all Copyright and Similar Rights that apply to Your use of the 120 | Licensed Material and that the Licensor has authority to license. 121 | 122 | j. Licensor means the individual(s) or entity(ies) granting rights 123 | under this Public License. 124 | 125 | k. Share means to provide material to the public by any means or 126 | process that requires permission under the Licensed Rights, such 127 | as reproduction, public display, public performance, distribution, 128 | dissemination, communication, or importation, and to make material 129 | available to the public including in ways that members of the 130 | public may access the material from a place and at a time 131 | individually chosen by them. 132 | 133 | l. Sui Generis Database Rights means rights other than copyright 134 | resulting from Directive 96/9/EC of the European Parliament and of 135 | the Council of 11 March 1996 on the legal protection of databases, 136 | as amended and/or succeeded, as well as other essentially 137 | equivalent rights anywhere in the world. 138 | 139 | m. You means the individual or entity exercising the Licensed Rights 140 | under this Public License. Your has a corresponding meaning. 141 | 142 | 143 | Section 2 -- Scope. 144 | 145 | a. License grant. 146 | 147 | 1. Subject to the terms and conditions of this Public License, 148 | the Licensor hereby grants You a worldwide, royalty-free, 149 | non-sublicensable, non-exclusive, irrevocable license to 150 | exercise the Licensed Rights in the Licensed Material to: 151 | 152 | a. reproduce and Share the Licensed Material, in whole or 153 | in part; and 154 | 155 | b. produce, reproduce, and Share Adapted Material. 156 | 157 | 2. Exceptions and Limitations. For the avoidance of doubt, where 158 | Exceptions and Limitations apply to Your use, this Public 159 | License does not apply, and You do not need to comply with 160 | its terms and conditions. 161 | 162 | 3. Term. The term of this Public License is specified in Section 163 | 6(a). 164 | 165 | 4. Media and formats; technical modifications allowed. The 166 | Licensor authorizes You to exercise the Licensed Rights in 167 | all media and formats whether now known or hereafter created, 168 | and to make technical modifications necessary to do so. The 169 | Licensor waives and/or agrees not to assert any right or 170 | authority to forbid You from making technical modifications 171 | necessary to exercise the Licensed Rights, including 172 | technical modifications necessary to circumvent Effective 173 | Technological Measures. For purposes of this Public License, 174 | simply making modifications authorized by this Section 2(a) 175 | (4) never produces Adapted Material. 176 | 177 | 5. Downstream recipients. 178 | 179 | a. Offer from the Licensor -- Licensed Material. Every 180 | recipient of the Licensed Material automatically 181 | receives an offer from the Licensor to exercise the 182 | Licensed Rights under the terms and conditions of this 183 | Public License. 184 | 185 | b. Additional offer from the Licensor -- Adapted Material. 186 | Every recipient of Adapted Material from You 187 | automatically receives an offer from the Licensor to 188 | exercise the Licensed Rights in the Adapted Material 189 | under the conditions of the Adapter's License You apply. 190 | 191 | c. No downstream restrictions. You may not offer or impose 192 | any additional or different terms or conditions on, or 193 | apply any Effective Technological Measures to, the 194 | Licensed Material if doing so restricts exercise of the 195 | Licensed Rights by any recipient of the Licensed 196 | Material. 197 | 198 | 6. No endorsement. Nothing in this Public License constitutes or 199 | may be construed as permission to assert or imply that You 200 | are, or that Your use of the Licensed Material is, connected 201 | with, or sponsored, endorsed, or granted official status by, 202 | the Licensor or others designated to receive attribution as 203 | provided in Section 3(a)(1)(A)(i). 204 | 205 | b. Other rights. 206 | 207 | 1. Moral rights, such as the right of integrity, are not 208 | licensed under this Public License, nor are publicity, 209 | privacy, and/or other similar personality rights; however, to 210 | the extent possible, the Licensor waives and/or agrees not to 211 | assert any such rights held by the Licensor to the limited 212 | extent necessary to allow You to exercise the Licensed 213 | Rights, but not otherwise. 214 | 215 | 2. Patent and trademark rights are not licensed under this 216 | Public License. 217 | 218 | 3. To the extent possible, the Licensor waives any right to 219 | collect royalties from You for the exercise of the Licensed 220 | Rights, whether directly or through a collecting society 221 | under any voluntary or waivable statutory or compulsory 222 | licensing scheme. In all other cases the Licensor expressly 223 | reserves any right to collect such royalties. 224 | 225 | 226 | Section 3 -- License Conditions. 227 | 228 | Your exercise of the Licensed Rights is expressly made subject to the 229 | following conditions. 230 | 231 | a. Attribution. 232 | 233 | 1. If You Share the Licensed Material (including in modified 234 | form), You must: 235 | 236 | a. retain the following if it is supplied by the Licensor 237 | with the Licensed Material: 238 | 239 | i. identification of the creator(s) of the Licensed 240 | Material and any others designated to receive 241 | attribution, in any reasonable manner requested by 242 | the Licensor (including by pseudonym if 243 | designated); 244 | 245 | ii. a copyright notice; 246 | 247 | iii. a notice that refers to this Public License; 248 | 249 | iv. a notice that refers to the disclaimer of 250 | warranties; 251 | 252 | v. a URI or hyperlink to the Licensed Material to the 253 | extent reasonably practicable; 254 | 255 | b. indicate if You modified the Licensed Material and 256 | retain an indication of any previous modifications; and 257 | 258 | c. indicate the Licensed Material is licensed under this 259 | Public License, and include the text of, or the URI or 260 | hyperlink to, this Public License. 261 | 262 | 2. You may satisfy the conditions in Section 3(a)(1) in any 263 | reasonable manner based on the medium, means, and context in 264 | which You Share the Licensed Material. For example, it may be 265 | reasonable to satisfy the conditions by providing a URI or 266 | hyperlink to a resource that includes the required 267 | information. 268 | 269 | 3. If requested by the Licensor, You must remove any of the 270 | information required by Section 3(a)(1)(A) to the extent 271 | reasonably practicable. 272 | 273 | b. ShareAlike. 274 | 275 | In addition to the conditions in Section 3(a), if You Share 276 | Adapted Material You produce, the following conditions also apply. 277 | 278 | 1. The Adapter's License You apply must be a Creative Commons 279 | license with the same License Elements, this version or 280 | later, or a BY-SA Compatible License. 281 | 282 | 2. You must include the text of, or the URI or hyperlink to, the 283 | Adapter's License You apply. You may satisfy this condition 284 | in any reasonable manner based on the medium, means, and 285 | context in which You Share Adapted Material. 286 | 287 | 3. You may not offer or impose any additional or different terms 288 | or conditions on, or apply any Effective Technological 289 | Measures to, Adapted Material that restrict exercise of the 290 | rights granted under the Adapter's License You apply. 291 | 292 | 293 | Section 4 -- Sui Generis Database Rights. 294 | 295 | Where the Licensed Rights include Sui Generis Database Rights that 296 | apply to Your use of the Licensed Material: 297 | 298 | a. for the avoidance of doubt, Section 2(a)(1) grants You the right 299 | to extract, reuse, reproduce, and Share all or a substantial 300 | portion of the contents of the database; 301 | 302 | b. if You include all or a substantial portion of the database 303 | contents in a database in which You have Sui Generis Database 304 | Rights, then the database in which You have Sui Generis Database 305 | Rights (but not its individual contents) is Adapted Material, 306 | 307 | including for purposes of Section 3(b); and 308 | c. You must comply with the conditions in Section 3(a) if You Share 309 | all or a substantial portion of the contents of the database. 310 | 311 | For the avoidance of doubt, this Section 4 supplements and does not 312 | replace Your obligations under this Public License where the Licensed 313 | Rights include other Copyright and Similar Rights. 314 | 315 | 316 | Section 5 -- Disclaimer of Warranties and Limitation of Liability. 317 | 318 | a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE 319 | EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS 320 | AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF 321 | ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, 322 | IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, 323 | WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR 324 | PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, 325 | ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT 326 | KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT 327 | ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. 328 | 329 | b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE 330 | TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, 331 | NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, 332 | INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, 333 | COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR 334 | USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN 335 | ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR 336 | DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR 337 | IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. 338 | 339 | c. The disclaimer of warranties and limitation of liability provided 340 | above shall be interpreted in a manner that, to the extent 341 | possible, most closely approximates an absolute disclaimer and 342 | waiver of all liability. 343 | 344 | 345 | Section 6 -- Term and Termination. 346 | 347 | a. This Public License applies for the term of the Copyright and 348 | Similar Rights licensed here. However, if You fail to comply with 349 | this Public License, then Your rights under this Public License 350 | terminate automatically. 351 | 352 | b. Where Your right to use the Licensed Material has terminated under 353 | Section 6(a), it reinstates: 354 | 355 | 1. automatically as of the date the violation is cured, provided 356 | it is cured within 30 days of Your discovery of the 357 | violation; or 358 | 359 | 2. upon express reinstatement by the Licensor. 360 | 361 | For the avoidance of doubt, this Section 6(b) does not affect any 362 | right the Licensor may have to seek remedies for Your violations 363 | of this Public License. 364 | 365 | c. For the avoidance of doubt, the Licensor may also offer the 366 | Licensed Material under separate terms or conditions or stop 367 | distributing the Licensed Material at any time; however, doing so 368 | will not terminate this Public License. 369 | 370 | d. Sections 1, 5, 6, 7, and 8 survive termination of this Public 371 | License. 372 | 373 | 374 | Section 7 -- Other Terms and Conditions. 375 | 376 | a. The Licensor shall not be bound by any additional or different 377 | terms or conditions communicated by You unless expressly agreed. 378 | 379 | b. Any arrangements, understandings, or agreements regarding the 380 | Licensed Material not stated herein are separate from and 381 | independent of the terms and conditions of this Public License. 382 | 383 | 384 | Section 8 -- Interpretation. 385 | 386 | a. For the avoidance of doubt, this Public License does not, and 387 | shall not be interpreted to, reduce, limit, restrict, or impose 388 | conditions on any use of the Licensed Material that could lawfully 389 | be made without permission under this Public License. 390 | 391 | b. To the extent possible, if any provision of this Public License is 392 | deemed unenforceable, it shall be automatically reformed to the 393 | minimum extent necessary to make it enforceable. If the provision 394 | cannot be reformed, it shall be severed from this Public License 395 | without affecting the enforceability of the remaining terms and 396 | conditions. 397 | 398 | c. No term or condition of this Public License will be waived and no 399 | failure to comply consented to unless expressly agreed to by the 400 | Licensor. 401 | 402 | d. Nothing in this Public License constitutes or may be interpreted 403 | as a limitation upon, or waiver of, any privileges and immunities 404 | that apply to the Licensor or You, including from the legal 405 | processes of any jurisdiction or authority. 406 | 407 | 408 | ======================================================================= 409 | 410 | Creative Commons is not a party to its public 411 | licenses. Notwithstanding, Creative Commons may elect to apply one of 412 | its public licenses to material it publishes and in those instances 413 | will be considered the “Licensor.” The text of the Creative Commons 414 | public licenses is dedicated to the public domain under the CC0 Public 415 | Domain Dedication. Except for the limited purpose of indicating that 416 | material is shared under a Creative Commons public license or as 417 | otherwise permitted by the Creative Commons policies published at 418 | creativecommons.org/policies, Creative Commons does not authorize the 419 | use of the trademark "Creative Commons" or any other trademark or logo 420 | of Creative Commons without its prior written consent including, 421 | without limitation, in connection with any unauthorized modifications 422 | to any of its public licenses or any other arrangements, 423 | understandings, or agreements concerning use of licensed material. For 424 | the avoidance of doubt, this paragraph does not form part of the 425 | public licenses. 426 | 427 | Creative Commons may be contacted at creativecommons.org. 428 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Android Developer Roadmap 2020 2 | 3 | ![GitHub contributors](https://img.shields.io/github/contributors/anacoimbrag/android-developer-roadmap.svg?style=flat-square) 4 | 5 | **Para a versão em português, [clique aqui](./README_PT_BR.md)** 6 | 7 | **Para la versión en español, [clic auquí](./README_ES.md)** 8 | 9 | **Voor de nederlandse versie, [klik hier](./README_NL.md)** 10 | 11 | Based on the [Developer Roadmap](https://github.com/kamranahmedse/developer-roadmap) that helps web developers with a path of what to learn on this extensive area, we developed the Android Developer Roadmap with the same goal. 12 | 13 | We hope that with this roadmap new developers will find it easier to start building beautiful Android applications. 14 | 15 | ## How to read 16 | 17 | This content is a suggested learning path to help guide your Android studies. To use this content, have in mind that the roadmap has macro boxes, that are in the middle (following the line path), and from them we have micro boxes, that are more refined content about the topic of the parent box. 18 | 19 | So, in this way, we suggest you read from the macro to the micro boxes, from the top to bottom direction. This is how we think a roadmap should flow, in terms of needs and difficulties. 20 | 21 | In addition, it is good to know that you don't need to know everything in the image bellow to be a good Android developer. You can follow your needs (in your studies, projects, etc) and it will be ok! 22 | 23 | Remember that this is a collaborative content, so, if something is missing or incomplete, please think about how to improve it for the community. 24 | 25 | ## Android Roadmap 26 | 27 | ![Android Roadmap](./images/android_roadmap.png) 28 | 29 | ## Roadmap Study Content 30 | 31 | You can now access [this file](https://github.com/mobile-roadmap/android-developer-roadmap/blob/master/ROADMAP_STUDY_CONTENT.md) to see all suggestions for community content, related to the topics on our roadmap! 32 | 33 | ## Android app 34 | 35 | To help you keep track of your progress [@Fren1100](https://github.com/Fren1100) created an Android app with all the subjects. You can download the app [here](https://play.google.com/store/apps/details?id=com.fren.androiddeveloperroadmap). 36 | 37 | ## Acknowledgments 38 | 39 | We want to thank the Android dev community all over the world that helped us with some great insights, especially [Android Dev BR](https://github.com/androiddevbr). Without you this project wouldn't be as complete as it is. 40 | 41 | ## Contribute 42 | 43 | If you think anything is missing or should not be there, or should be different, please open a pull request with your ideas. 44 | 45 | [Here](./docs/contributing.md) you can find how to contribute to the roadmap. 46 | 47 | ## Authors 48 | 49 | [1.1]: http://i.imgur.com/wWzX9uB.png "follow me on twitter" 50 | [2.1]: http://i.imgur.com/9I6NRUm.png "follow me on github" 51 | 52 | [1]: https://twitter.com/anacoimbrag 53 | [2]: https://github.com/anacoimbrag 54 | [3]: https://twitter.com/DrCabrales 55 | [4]: https://github.com/drcabral/ 56 | 57 | - Ana Coimbra [![alt text][1.1]][1][![alt text][2.1]][2] 58 | - Diogo Cabral [![alt text][1.1]][3][![alt text][2.1]][4] 59 | 60 | ## License 61 | 62 | [![License: CC BY 4.0](https://img.shields.io/badge/License-CC%20BY%204.0-lightgrey.svg)](https://creativecommons.org/licenses/by/4.0/) 63 | -------------------------------------------------------------------------------- /README_ES.md: -------------------------------------------------------------------------------- 1 | # Android Developer Roadmap 2020 2 | 3 | ![GitHub contributors](https://img.shields.io/github/contributors/anacoimbrag/android-developer-roadmap.svg?style=flat-square) 4 | 5 | **Para a versão em português, [clique aqui](./README_PT_BR.md)** 6 | 7 | **For the english version, [click here](./README.md)** 8 | 9 | **Voor de nederlandse versie, [klik hier](./README_NL.md)** 10 | 11 | 12 | Basado en el [Developer Roadmap](https://github.com/kamranahmedse/developer-roadmap) que ayuda a los web developers con la ruta a seguir para aprender en su extensa área, hemos implementado el Android Developer Roadmap con la misma finalidad. 13 | 14 | Esperamos que con esta hoja de ruta, los nuevos desarrolladores encuentren de una forma simple cómo empezar a implementar aplicaciones Android. 15 | 16 | ## Cómo leerla 17 | 18 | Estos contenidos, son una ruta sugerida para ayudarte en tus estudios de Android. Para usarlos, ten en cuenta que el diagrama se basa en macro boxes (nodo padre), que están en la mitad del diagrama (siguiendo la línea continua), y desde allí tenemos micro boxes (nodos hijos), con contenidos más puntuales acerca del tópico del nodo padre. 19 | 20 | De esta manera, te sugerimos para su mejor lectura y comprensión, comenzar leyendo de arriba a abajo. Así es como creemos que la hoja de ruta debe fluir, basados en lo que se necesita y su grado de dificultad. 21 | 22 | Es importante resaltar que no debes saber absolutamente todo lo que aparece en el diagrama para ser un muy buen desarrollador de Android. Ve paso a paso según tus necesidades (tus estudios, proyectos personales, etc) y todo irá bien. 23 | 24 | Recuerda que esto es un contenido colaborativo, por tanto, si de pronto falta algo, piensa en cómo mejorarlo y hacerlo disponible para la comunidad. 25 | 26 | ## Android Roadmap (Hoja de Ruta en Desarrollo Android) 27 | 28 | ![Android Roadmap](./images/android_roadmap.png) 29 | 30 | ## Contenido de estudio de la hoja de ruta (Roadmap) 31 | 32 | ¡Ahora puedes acceder [aquí](https://github.com/mobile-roadmap/android-developer-roadmap/blob/master/ROADMAP_STUDY_CONTENT.md) para ver todas las sugerencias de contenido para la comunidad, relacionadas con los temas de la hoja de ruta (roadmap)! 33 | 34 | 35 | ## Android app 36 | 37 | Para ayudarlo a realizar un seguimiento de su progreso, [@Fren1100](https://github.com/Fren1100) creó una aplicación de Android con todos los temas. Puede descargar la aplicación [aquí](https://play.google.com/store/apps/details?id=com.fren.androiddeveloperroadmap). 38 | 39 | ## Agradecimientos 40 | 41 | Queremos agradecer a la comunidad Android de todo el mundo que nos ha ayudado con grandes ideas, especialmente a [Android Dev BR](https://github.com/androiddevbr). 42 | Sin ustedes este proyecto no estaría tan completo a como está actualmente. 43 | 44 | ## Contribuye 45 | 46 | Si consideras que algún contenido sobra o que falta algún otro o que deba ser diferente, abre por favor un pull request con tus ideas. 47 | 48 | [Aquí](./docs/contributing_es.md) puedes encontrar cómo contribuir con el roadmap. 49 | 50 | ## Autores 51 | 52 | [1.1]: http://i.imgur.com/wWzX9uB.png "follow me on twitter" 53 | [2.1]: http://i.imgur.com/9I6NRUm.png "follow me on github" 54 | 55 | [1]: https://twitter.com/anacoimbrag 56 | [2]: https://github.com/anacoimbrag 57 | [3]: https://twitter.com/DrCabrales 58 | [4]: https://github.com/drcabral/ 59 | 60 | - Ana Coimbra [![alt text][1.1]][1][![alt text][2.1]][2] 61 | - Diogo Cabral [![alt text][1.1]][3][![alt text][2.1]][4] 62 | 63 | ## Licencia 64 | 65 | [![License: CC BY 4.0](https://img.shields.io/badge/License-CC%20BY%204.0-lightgrey.svg)](https://creativecommons.org/licenses/by/4.0/) 66 | -------------------------------------------------------------------------------- /README_NL.md: -------------------------------------------------------------------------------- 1 | # Android Developer Roadmap 2020 2 | 3 | ![GitHub contributors](https://img.shields.io/github/contributors/anacoimbrag/android-developer-roadmap.svg?style=flat-square) 4 | 5 | **For the english version, [click here](./README.md)** 6 | 7 | **Para a versão em português, [clique aqui](./README_PT_BR.md)** 8 | 9 | **Para la versión en español, [clic auquí](./README_ES.md)** 10 | 11 | Gebaseerd op de [Developer Roadmap](https://github.com/kamranahmedse/developer-roadmap) die helpt om web developers een directie te geven om te zien wat te leren, hebben wij de Android Developer Roadmap gemaakt met hetzelfde doel. 12 | 13 | We hopen dat deze roadmap het voor nieuwe developers makkelijker maakt om toffe Android aplicaties te maken. 14 | 15 | ## Hoe te lezen 16 | 17 | Deze content is een aanbevolen leertraject om je door je Android leerzaamheden te begeleiden. Om deze roadmap te gebruiken moet je begrijpen dat de roadmap macroboxen(in het midden) en microboxen(buitenkanten) heeft. De microboxen zijn meer gedetailleerde onderwerpen voor de macroboxen. 18 | 19 | We raden dus aan dat je bij de macroboxen begint en werkt naar de microboxen, van boven naar beneden. 20 | 21 | Het is ook goed om te weten dat je niet alles nodig hebt om een goede Android developer te zijn. Je kan de onderwerpen bestuderen die je nodig hebt(in je studie, projecten, etc.). Dit is ook een prima werkwijze! 22 | 23 | Deze inhouden is een collaboratieve inspanning, als er iets ontbreekt of incompleet is zouden wij het fijn vinden als je het kunt aanvullen. Alvast bedankt! 24 | 25 | ## Android Roadmap 26 | 27 | ![Android Roadmap](./images/android_roadmap.png) 28 | 29 | 30 | 31 | ## Android app 32 | 33 | Om te helpen met het bijhouden van je vorderingen heeft [@Fren1100](https://github.com/Fren1100) een Android app gemaakt. Deze is [hier](https://play.google.com/store/apps/details?id=com.fren.androiddeveloperroadmap) te downloaden. 34 | 35 | ## Dankwoord 36 | 37 | We willen de Android dev community over de hele wereld bedanken, met name [Android Dev BR](https://github.com/androiddevbr). Zonder hun zou dit project niet zo compleet zijn als dat hij nu is. 38 | 39 | ## Bijdragen 40 | 41 | Als je denkt dat iets ontbreekt, veranderd moet worden, of incompleet is, kan je een pull request openen met jouw ideeën. 42 | 43 | [Hier](./docs/contributing_nl.md) kun je vinden hoe bij te dragen aan de Android developer roadmap. 44 | 45 | ## Authors 46 | 47 | [1.1]: http://i.imgur.com/wWzX9uB.png "volg me op twitter" 48 | [2.1]: http://i.imgur.com/9I6NRUm.png "volg me op github" 49 | 50 | [1]: https://twitter.com/anacoimbrag 51 | [2]: https://github.com/anacoimbrag 52 | [3]: https://twitter.com/DrCabrales 53 | [4]: https://github.com/drcabral/ 54 | 55 | - Ana Coimbra [![alt text][1.1]][1][![alt text][2.1]][2] 56 | - Diogo Cabral [![alt text][1.1]][3][![alt text][2.1]][4] 57 | 58 | ## Licensie 59 | 60 | [![License: CC BY 4.0](https://img.shields.io/badge/License-CC%20BY%204.0-lightgrey.svg)](https://creativecommons.org/licenses/by/4.0/) 61 | -------------------------------------------------------------------------------- /README_PT_BR.md: -------------------------------------------------------------------------------- 1 | # Android Developer Roadmap 2020 2 | 3 | ![GitHub contributors](https://img.shields.io/github/contributors/anacoimbrag/android-developer-roadmap.svg?style=flat-square) 4 | 5 | **For the english version, [click here](./README.md)** 6 | 7 | **Para la versión en español, [clic auquí](./README_ES.md)** 8 | 9 | **Voor de nederlandse versie, [klik hier](./README_NL.md)** 10 | 11 | Baseado no [Developer Roadmap](https://github.com/kamranahmedse/developer-roadmap), que ajuda pessoas desenvolvedoras web com um direcionamento sobre o que aprender nessa área extensa, nós desenvolvemos o Android Developer Roadmap com o mesmo objetivo. 12 | 13 | Nós esperamos que com este roadmap as novas pessoas desenvolvedoras tenham uma maior facilidade em começar a construir aplicações android incríveis. 14 | 15 | ## Como utilizar 16 | 17 | Esse conteúdo é apenas um caminho de aprendizado sugerido para guiar você com seus estudos no Android. Para usar esse conteúdo, tenha em mente que o roadmap possui caixas macro, que estão no centro (seguindo a linha do caminho), e a partir deles temos caixas micro, que são conteúdos mais refinados sobre o tópico da caixa pai. 18 | 19 | Então, dessa forma, nós sugerimos que você leia das caixas macros até as micros, de cima para baixo. Essa é a maneira como pensamos sobre ter o fluxo de roadmap, considerando necessidades e dificuldades. 20 | 21 | Adicionalmente, é bom considerar que você não precisa saber tudo que está na imagem abaixo para ser uma boa pessoa desenvolvedora em se tratando de Android. Você pode ir sob demanda, vendo o que você precisa (nos seus estudos, projetos, etc) e vai ser ok dessa maneira! 22 | 23 | Lembre que este é um conteúdo colaborativo, então, se algo estiver faltando ou incompleto, você deve pensar sobre como melhorar ele para a comunidade. 24 | 25 | ## Android Roadmap 26 | 27 | ![Android Roadmap](./images/android_roadmap.png) 28 | 29 | ## Conteúdos para estudo do roadmap 30 | 31 | Agora você pode acessar [este arquivo](https://github.com/mobile-roadmap/android-developer-roadmap/blob/master/ROADMAP_STUDY_CONTENT.md) para ver todas as sugestões de conteúdo da comunidade, relacionadas aos tópicos do nosso roadmap! 32 | 33 | ## Android app 34 | 35 | Para ajudar você a acompanhar seu progresso, [@Fren1100](https://github.com/Fren1100) criou um app Android com todos os assuntos. Você pode baixar o aplicativo [aqui](https://play.google.com/store/apps/details?id=com.fren.androiddeveloperroadmap). 36 | 37 | ## Agradecimentos 38 | 39 | Queremos agradecer a comunidade de desenvolvimento Android de todo o mundo que nos ajudou com diversas ideias, especialmente [Android Dev BR](https://github.com/androiddevbr). Sem vocês esse projeto não estaria tão robusto e completo quanto está. 40 | 41 | ## Contribua 42 | 43 | Se você acredita que algo está faltando ou não deveria estar aqui, ou que algo deveria ser diferente, por favor abra um pull request com suas ideias. 44 | 45 | Você pode encontrar [aqui](./docs/contributing_pt_br.md) como contribuir para o roadmap. 46 | 47 | ## Authors 48 | 49 | [1.1]: http://i.imgur.com/wWzX9uB.png "me siga no twitter" 50 | [2.1]: http://i.imgur.com/9I6NRUm.png "me siga no github" 51 | 52 | [1]: https://twitter.com/anacoimbrag 53 | [2]: https://github.com/anacoimbrag 54 | [3]: https://twitter.com/DrCabrales 55 | [4]: https://github.com/drcabral/ 56 | 57 | - Ana Coimbra [![alt text][1.1]][1][![alt text][2.1]][2] 58 | - Diogo Cabral [![alt text][1.1]][3][![alt text][2.1]][4] 59 | 60 | ## Licence 61 | 62 | [![License: CC BY 4.0](https://img.shields.io/badge/License-CC%20BY%204.0-lightgrey.svg)](https://creativecommons.org/licenses/by/4.0/) 63 | -------------------------------------------------------------------------------- /ROADMAP_STUDY_CONTENT.md: -------------------------------------------------------------------------------- 1 | # Roadmap Study Content 2 | 3 | ## Overview 4 | 5 | Here you can add article links, course suggestions, etc, that is related to Android Roadmap topics! The objective here is share more Android content to our community, and not just share important topics! 6 | 7 | ## Contributing 8 | 9 | Please, use the description of your suggested content as a link like this example: 10 | * [Android Fundamentals Codelab](https://codelabs.developers.google.com/codelabs/android-training-welcome/index.html?index=..%2F..index#0) 11 | 12 | 13 | ## Contents 14 | 15 | ### Large Collections 16 | 17 | * [Android and Kotlin conference videos](https://github.com/igorwojda/android-kotlin-conference-videos) 18 | * [Systems Design](https://github.com/checkcheckzz/system-design-interview) 19 | 20 | ### Programming Languages 21 | 22 | #### Kotlin 23 | * [Kotlin conference videos](https://github.com/igorwojda/android-kotlin-conference-videos) 24 | * Kotlin Puzzlers 25 | * [by Anton Keks](https://github.com/angryziber/kotlin-puzzlers) 26 | * [by Dmitry Kandalov](https://github.com/dkandalov/kotlin-puzzlers) 27 | * [Kotlin Bootcamp for Programmers](https://developer.android.com/courses/kotlin-bootcamp/overview) 28 | 29 | ### Android Studio 30 | 31 | * [Install and Run Android studio on your PC](https://github.com/asaikarthikeya/Androidstudio--install) 32 | 33 | ### App Manifest 34 | 35 | #### Videos 36 | 37 | * [Android Menifest XML](https://www.youtube.com/watch?v=HA126TkqvDM) 38 | * [Android Manifest File Tutorial 2020](https://www.youtube.com/watch?v=jg46TQBziKg) 39 | * [Manifest file in Android](https://www.youtube.com/watch?v=rwJwX6wMTxQ) 40 | 41 | #### Articles 42 | 43 | * [App Manifest Overview](https://developer.android.com/guide/topics/manifest/manifest-intro#:~:text=The%20manifest%20file%20describes%20essential,usually%20matches%20your%20code's%20namespace.) 44 | * [AndroidManifest.xml file in android](https://www.javatpoint.com/AndroidManifest-xml-file-in-android) 45 | 46 | 47 | ### App Components 48 | 49 | #### Videos 50 | * [Application Components](https://www.youtube.com/watch?v=E27MJ_ibgMU) 51 | * [Overview of Android: Key App Components](https://www.youtube.com/watch?v=-8hNNvHLQwA) 52 | * [Android - Application Components](https://www.youtube.com/watch?v=8hOzHsz71vE) 53 | #### Articles 54 | * [Android - Application Components](https://www.tutorialspoint.com/android/android_application_components.htm) 55 | * [Application Fundamentals](https://developer.android.com/guide/components/fundamentals) 56 | * [Components of an Android Application](https://www.geeksforgeeks.org/components-android-application/) 57 | 58 | ### User Interface 59 | * [The Android OS User Interface (Google I/O'19)](https://www.youtube.com/watch?v=nWbW58RMteI) 60 | * [Android UI Design Explained](https://www.youtube.com/watch?v=PJ3RdfJ4Np8) 61 | * [User Interface OverView](https://www.youtube.com/watch?v=lefcBIDsQgs) 62 | 63 | ### More User Interface 64 | #### Java Material Design 65 | * [Material Components for Android](https://material.io/develop/android/docs/getting-started) 66 | * [Android Material Design Tutorials](https://www.youtube.com/playlist?list=PLlxmoA0rQ-Lzd9-NUrP5Wi18OMi4R-zs_) 67 | * [Android Material Design Tutorial](https://www.youtube.com/playlist?list=PLonJJ3BVjZW6CtAMbJz1XD8ELUs1KXaTD) 68 | 69 | #### Kotlin Material Design 70 | * [Apply Material Design to Android apps in Kotlin](https://developer.android.com/courses/pathways/mdc-kotlin) 71 | * [Android Studio Material Design](https://www.youtube.com/playlist?list=PLCf5IsO6cvqFz_a4cHCPSx61aJ-dklSDU) 72 | 73 | ### Accessibility 74 | #### Videos 75 | * [Easy Android accessibility - Android Conference Talks](https://www.youtube.com/watch?v=yxNROzu9nQQ) 76 | * [Making Android Accessibility Easy (Android Dev Summit '18)](https://www.youtube.com/watch?v=R2NftUX7rDM) 77 | * [Demystifying Android Accessibility Development (Google I/O'19)](https://www.youtube.com/watch?v=bTodlNvQGfY) 78 | #### Articles 79 | * [Android accessibility overview](https://support.google.com/accessibility/android/answer/6006564?hl=en) 80 | * [Build more accessible apps](https://developer.android.com/guide/topics/ui/accessibility) 81 | 82 | ### Storage 83 | #### Videos 84 | * [Android Data Storage Options](https://www.youtube.com/watch?v=Oa1mlObffiA) 85 | * [Storage access with Android](https://www.youtube.com/watch?v=RjyYCUW-9tY) 86 | * [Preparing for scoped storage (Android Dev Summit '19)](https://www.youtube.com/watch?v=UnJ3amzJM94) 87 | 88 | #### Articles 89 | * [Data and file storage overview](https://developer.android.com/training/data-storage) 90 | * [Storage Options](https://stuff.mit.edu/afs/sipb/project/android/docs/guide/topics/data/data-storage.html) 91 | 92 | ### Architecture 93 | #### Videos 94 | * [Android Architecture](https://www.youtube.com/watch?v=y3HravY897E) 95 | * [Androidology -Architecture Overview](https://www.youtube.com/watch?v=QBGfUs9mQYY) 96 | #### Articles 97 | * [Platform Architecture](https://developer.android.com/guide/platform) 98 | * [Android - Architecture](https://www.tutorialspoint.com/android/android_architecture.htm) 99 | 100 | ### Build Configuration 101 | * [Create and edit run/debug configurations](https://developer.android.com/studio/run/rundebugconfig) 102 | * [Configure your build](https://developer.android.com/studio/build) 103 | * [Configure build variants](https://developer.android.com/studio/build/build-variants) 104 | 105 | ### Network Handling 106 | * [Android - Network Connection](https://www.tutorialspoint.com/android/android_network_connection.htm#:~:text=Android%20lets%20your%20application%20connect,or%20a%20mobile%20network%20connection.) 107 | * [Perform network operations overview](https://developer.android.com/training/basics/network-ops) 108 | * [Connect to the network](https://developer.android.com/training/basics/network-ops/connecting) 109 | * [Manage network usage](https://developer.android.com/training/basics/network-ops/managing) 110 | * [Using OkHttp](https://guides.codepath.com/android/Using-OkHttp) 111 | * [Consuming API with Retrofit](https://guides.codepath.com/android/consuming-apis-with-retrofit) 112 | 113 | ### Android Jetpack 114 | #### Videos 115 | * [Introducing Android Jetpack](https://www.youtube.com/playlist?list=PLWz5rJ2EKKc9mxIBd0DRw9gwXuQshgmn2) 116 | * [Android Jetpack: Improve Your App's Architecture](https://www.youtube.com/watch?v=7p22cSzniBM) 117 | #### Articles 118 | * [Jetpack](https://developer.android.com/jetpack) 119 | * [Getting started with Android Jetpack](https://developer.android.com/jetpack/getting-started) 120 | * [Android Jetpack Architecture Components](https://medium.com/kayvan-kaseb/android-jetpack-architecture-components-119c9c973d7e) 121 | 122 | ### Google Libraries 123 | #### Videos 124 | * [Android Support Library Overview](https://www.youtube.com/watch?v=3PIc-DuEU2s) 125 | * [Android Basics : What are Support Libraries?](https://www.youtube.com/watch?v=6TALtMWOq7w) 126 | #### Articles 127 | * [Support Library](https://developer.android.com/topic/libraries/support-library) 128 | * [Support Library Setup](https://developer.android.com/topic/libraries/support-library/setup) 129 | 130 | ### Security 131 | #### Videos 132 | * [Secure your data -Deep dive into encryption and security ](https://www.youtube.com/watch?v=W3mwSnF1n50) 133 | * [Security on Android](https://www.youtube.com/watch?v=0uG_RKiDmQY) 134 | * [Android Security Architecture](https://www.youtube.com/watch?v=HAYk7fVaMGM) 135 | #### Articles 136 | * [Security Architecture of Android](https://www.androidauthority.com/the-security-architecture-of-android-11063/#:~:text=Android%20is%20a%20privilege%2Dseparated%20operating%20system.&text=Speaking%20in%20terms%20of%20layman,contacts%20%26%20e%2Dmails).) 137 | * [Secure an Android Device](https://source.android.com/security) 138 | 139 | ### Sensors 140 | #### Videos 141 | * [Various Sensors on Smartphones](https://www.youtube.com/watch?v=c43hmt_-7d8) 142 | * [Sensor Names of Android phone](https://www.youtube.com/watch?v=B45VqQQRlZM) 143 | #### Articles 144 | * [Sensors](https://developer.android.com/guide/topics/sensors/sensors_overview) 145 | * [Android - Sensors](https://www.tutorialspoint.com/android/android_sensors.htm) 146 | 147 | ### Content Providers 148 | #### Videos 149 | * [ContentProviders](https://www.youtube.com/playlist?list=PLmry8Xfj6opxDRqS2Q5LT6CKbPjlsUUGW) 150 | * [Android ContentProviders](https://www.youtube.com/watch?v=cdhw6AAY5v8) 151 | 152 | #### Articles 153 | * [Content providers](https://developer.android.com/guide/topics/providers/content-providers) 154 | * [Android - Content Providers](https://www.tutorialspoint.com/android/android_content_providers.htm) 155 | 156 | 157 | ### Animation 158 | #### Videos 159 | * [Animation Android](https://www.youtube.com/playlist?list=PLrnPJCHvNZuARS1W7qMt-zxBNqWYZpOg6) 160 | * [Get Animated (Android Dev Summit '18)](https://www.youtube.com/watch?v=N_x7SV3I3P0) 161 | 162 | #### Articles 163 | * [Introduction to animations](https://developer.android.com/training/animation/overview) 164 | * [Android - Animations](https://www.tutorialspoint.com/android/android_animations.htm) 165 | ### App Publishing 166 | #### Videos 167 | * [Publish Android apps on Google play -Step by Step guide](https://www.youtube.com/watch?v=AWawL5HFn64) 168 | * [Publish app on Play Store](https://www.youtube.com/watch?v=ieWtCaWkzYQ) 169 | 170 | #### Articles 171 | * [Publish your app](https://developer.android.com/studio/publish) 172 | * [Developer Console](https://play.google.com/apps/publish/signup/) 173 | ### Also Nice to Know 174 | 175 | * [Android Official Training Courses](https://developer.android.com/courses) 176 | * [Android Basics Nanodegree](https://www.udacity.com/course/android-basics-nanodegree-by-google--nd803) -------------------------------------------------------------------------------- /docs/contributing.md: -------------------------------------------------------------------------------- 1 | # Contributing to Android Developer Roadmap 2020 2 | 3 | **Para a versão em português, [clique aqui](./contributing_pt_br.md)** 4 | 5 | **Para la versión en español, [clic aquí](./contributing_es.md)** 6 | 7 | **Voor de nederlandse versie, [klik hier](./contributing_nl.md)** 8 | 9 | ## Generating discussions 10 | 11 | If you have any suggestion about something that should be in the roadmap and if you want to validate it, we strongly recommend that you create an `issue` on our repository. In this way, we can achieve rich discussions that certanly will help a lot of people about the adoption of the content in its developments. 12 | 13 | ## Creating improvements 14 | 15 | If you have any improvements that you want to do directly in the roadmap, we recommend that you create a `pull request` with basicaly two files: the **roadmap image** and the **.fig file**, both updated. Try to be descriptive in your PR, so we can analyze and discuss about what you are proposing. 16 | 17 | ### Using Figma 18 | 19 | Our project is built with [Figma](https://www.figma.com/). It is a free tool used to build prototypes, which turns out to be a better choice for the roadmap, because the idea here is that everyone can use the tool and improve the content. 20 | 21 | 1. Importing the roadmap 22 | 23 | After you clone the repository, you will find inside the `project` folder the file `Android Developer Roadmap 2020.fig`. With this file, you can import the project in your Figma profile to edit it. 24 | 25 | ![How to import a .fig file in Figma](./importing_project.png) 26 | 27 | 2. Accessing and editing the content 28 | 29 | After uploading the file, you can access the content by double-clicking the `Android Developer Roadmap 2020`. With right click, you must ungroup the content to have access to each component to edit it. 30 | 31 | ![Ungroup the content](./ungroup_content.png) 32 | 33 | Now you can click on each component, inner component end everything else to change what you want. Notice that we have a major box component (the box with the content `Programming Language`) and changing it the changes will be applied to each other component. 34 | 35 | 3. Exporting the changes 36 | 37 | After you update the content, you must `export the .fig file`. You can do it by clicking in the `menu on the left > file > Save as .fig...`. 38 | 39 | ![Exporting the .fig file](./exporting_fig_file.png) 40 | 41 | As part of the pull request, you need to send also the image updated. To do this, you must `group the content` with the same steps that you did to ungroup it. After this, you can notice that an option `export` will be showed down in the right menu. Click in the `+`, fill the Sufix, keep the `PNG` format and click in `Export Group x`. The image will be downloaded. 42 | 43 | ![Exporting the image](./exporting_image.png) 44 | 45 | The pattern that we use for the .fig file is `Android Developer Roadmap 2020.fig` and for the image is `android_roadmap.png`. You must use the same. 46 | 47 | ## Give us feedbacks! 48 | 49 | Is this file helpful? Did you have any difficulties to do your updates or suggestions? Please let us know! With your help we can not only improve the roadmap but also this step by step guide. 50 | -------------------------------------------------------------------------------- /docs/contributing_es.md: -------------------------------------------------------------------------------- 1 | # Contribuye al Roadmap para Android Developer 2020 2 | 3 | **Para a versão em portuguese, [clique aqui](./contributing_pt_br.md)** 4 | 5 | **For the english version, [click here](./contributing.md)** 6 | 7 | **Voor de nederlandse versie, [klik hier](./contributing_nl.md)** 8 | 9 | ## Generando discusiones 10 | 11 | Si tienes alguna sugerencia acerca de algo que deba estar en el roadmap y quieres validarlo, te recomendamos que crees un `issue` en nuestro repositorio. De esta manera, podemos lograr discusiones interesantes que seguramente ayudarán a muchas personas acerca de la adopción de este contenidos dentro de sus desarrollos. 12 | 13 | ## Creando Mejoras 14 | 15 | Si tienes alguna idea de mejora directamente sobre lo representado en el roadmap, te recomendamos crear un `pull request` con básicamente dos archivos: la **imagen del roadmap** y el **archivo .fig**, ambos actualizados. Trate de ser bien descriptivo en el PR, así nosotros podemos analizar y discutir mejor lo que estás proponiendo. 16 | 17 | ### Usando Figma 18 | 19 | Nuestro proyecto está implementado usando [Figma](https://www.figma.com/). Figma es una herramienta libre usualmente utilizada para crear prototipos, así, resulta ser la mejor opción para el roadmap, dado que nuestra idea es que cada quien pueda usar la herramienta para mejorar el contenido. 20 | 21 | 1. Importar el roadmap 22 | 23 | Después de clonar el repositorio, encontrarás dentro de la carpeta `project` el archivo `Android Developer Roadmap 2020.fig`. Con éste, puedes importar el proyecto dentro de tu perfil de Figma para editarlo. 24 | 25 | ![Cómo importar un archivo .fig en Figma](./importing_project.png) 26 | 27 | 2. Acceso y edición del contenido 28 | 29 | Después de subir el archivo, puedes acceder el contenido haciendo doble-clic en `Android Developer Roadmap 2020`. Con clic derecho en él, debes desagrupar el contenido para así acceder a cada componente y editarlo. 30 | 31 | ![Desagrupar el contenido](./ungroup_content.png) 32 | 33 | Ahora, puedes hacer clic en cada componente padre, cada nodo hijo y demás para cambiar lo que requieras. Ten en cuenta que si cambias algo del componente principal (el nodo con el contenido `Programming Language`) todos los cambios se aplicarán a los demas componentes. 34 | 35 | 3. Exportar los cambios 36 | 37 | Después de que actualices los contenidos, debes `exportar el archivo .fig`. PUedes hacerlo haciendo clic en `menú de la izquierda > file > Save as .fig...`. 38 | 39 | ![Exportar el archivo .fig](./exporting_fig_file.png) 40 | 41 | Como parte del pull request, necesitas enviar también la imagen actualizada. Para ello, debes `agrupar el contenido` similar a como cuando lo desagrupaste. Después, la opción `export` se desplegará en el menú de la parte inferior derecha. Haz clic en `+`, pon la info en Sufix, manteniendo el formato `PNG` y haz clic en `Export Group x`. La imagen será descargada. 42 | 43 | ![Exportando la imagen](./exporting_image.png) 44 | 45 | El patrón que usamos para nombrar el archivo .fig es `Android Developer Roadmap 2020.fig`, y el usado para la imagen es `android_roadmap.png`. Debes usar los mismos. 46 | 47 | ## Déjanos tu feedback! 48 | 49 | Ha sido de ayuda esta guía? Tuviste alguna dificultad haciendo alguna actualización? Tienes alguna sugerencia adicional? Déjanos saberlo por favor! Con tu ayuda no solamente mejoraremos el roadmap sino también este paso a paso. 50 | -------------------------------------------------------------------------------- /docs/contributing_nl.md: -------------------------------------------------------------------------------- 1 | # Bijdragen aan de Android Developer Roadmap 2020 2 | 3 | **For the english version, [click here](./contributing.md)** 4 | 5 | **Para a versão em português, [clique aqui](./contributing_pt_br.md)** 6 | 7 | **Para la versión en español, [clic aquí](./contributing_es.md)** 8 | 9 | ## Discussie aanmaken 10 | 11 | Als je een suggestie hebt die in de roadmap zou horen en je wilt het valideren, adviseren wij een `issue` aan te maken in onze repository. Zo kunnen wij rijke discussies houden die veel mensen zal helpen en kunnen wij de content de beste kwaliteit houden. 12 | 13 | ## Verbeteringen aanbrengen 14 | 15 | Als je verbeteringen wilt aanbrengen aan de roadmap, adviseren wij een `pull request` aan te maken met twee betanden: het **roadmap plaatje** en het **.fig bestand**, allebei upgedatet. Probeer je pull request goed uit te leggen zodat we het goed kunnen analiseren en discussiëren voor we het goedkeuren. 16 | 17 | ### Figma gebruiken 18 | 19 | Ons project is in [Figma](https://www.figma.com/) gemaakt. Dit is een gratis tool om prototypes to bouwen, dit blijkt voor ons een goede tool omdat iedereen het kan gebruiken en iedereen dus kan bijdragen aan dit project. 20 | 21 | 1. De roadmap importeren 22 | 23 | Na het clonen van de repository vind je in de `project` map een bestand genaamd `Android Developer Roadmap 2020.fig`. Met dit bestand kun je het project importeren in Figma. 24 | 25 | 26 | 27 | ![How to import a .fig file in Figma](./importing_project.png) 28 | 29 | 2. Data bewerken 30 | 31 | Na het uploaden kun je het bestand zien door te dubbelklikken op `Android Developer Roadmap 2020`. Met de rechtermuis moet je op `ungroup` klikken om elk component te bewerken. 32 | 33 | ![Ungroup the content](./ungroup_content.png) 34 | 35 | 36 | 37 | Nu kan je op elk individueel component klikken om te veranderen wat je wilt. We hebben een major box component(de box met inhoud `Programming Language`), als je die wijzigt zal het doorgevoerd worden naar alle andere componenten. 38 | 39 | 3. Wijzigingen exporteren 40 | 41 | Na het updaten van de content moet je het `.fig bestand exporteren`. Dit kan je doen door te klikken op `menu aan linkerzijde > File > Save as .fig...`. 42 | 43 | 44 | 45 | ![Exporting the .fig file](./exporting_fig_file.png) 46 | 47 | Een deel van de pull request moet de geupdate afbeelding bevatten. Om dit te doen moet je `group the content` met dezelfde stappen als bij het ungroupen. Na dit verschijnt aan de rechterzijde een `export` optie. Klik op de `+`, vul de Sufix in, behoud het `PNG` formaat en klik op `Export Group x`. De afbeelding zal gedownload worden. 48 | 49 | ![Exporting the image](./exporting_image.png) 50 | 51 | Het .fig betand moet `Android Developer Roadmap 2020.fig` heten en het plaatje `android_roadmap.png`. Dit moet zo blijven. 52 | 53 | ## Geef ons feedback! 54 | 55 | Heeft dit bestand geholpen? Was het lastig om je update door te voeren? Laat het ons weten! Met uw help kunnen we niet alleen de roadmap verbeteren maar ook deze guide. -------------------------------------------------------------------------------- /docs/contributing_pt_br.md: -------------------------------------------------------------------------------- 1 | # Contributing to Android Developer Roadmap 2020 2 | 3 | **For the english version, [click here](./contributing.md)** 4 | 5 | **Para la versión en español, [clic aquí](./contributing_es.md)** 6 | 7 | **Voor de nederlandse versie, [klik hier](./contributing_nl.md)** 8 | 9 | ## Gerando discussões 10 | 11 | Se você tem alguma sugestão sobre algo que deveria estar no roadmap e caso você queira validar isso, nos recomendamos fortemente que você crie uma `issue` no nosso repositório. Dessa forma, nós conseguimos criar discussões ricas que certamente ajudarão várias pessoas sobre a adoção do conteudo no seu desenvolvimento. 12 | 13 | ## Criando melhorias 14 | 15 | Se você tem alguma melhoria que você quer fazer diretamente no roadmap, nós recomendamos que você crie um `pull request` com basicamente dois arquivos: a **imagem do roadmap** e o **arquivo .fig**, ambos atualizados. Tente ser descritivo no seu PR, assim poderemos analisar e discutir sobre o que você está propondo. 16 | 17 | ### Usando o Figma 18 | 19 | Nosso projeto é construído com o [Figma](https://www.figma.com/). Figma é uma ferramenta gratuita usada para construir protótipos, o que torna a melhor escolha para nosso roadmap, uma vez que a ideia aqui é que todas as pessoas possam utilizar a ferramenta e melhorar o conteúdo. 20 | 21 | 1. **Importando o roadmap** 22 | 23 | Depois de clonar o repositório, você deve encontrar dentro de `project` o arquivo `Android Developer Roadmap 2020.fig`. Com esse arquivo, você pode importar o projeto no seu perfil do Figma para editá-lo. 24 | 25 | ![Como importar um arquivo .fig no Figma](./importing_project.png) 26 | 27 | 2. **Acessando e editando o conteúdo** 28 | 29 | Depois de fazer upload do arquivo, você pode acessar o conteúdo com um duplo clique em `Android Developer Roadmap 2020`. Com o clique do botão direito, você deverá fazer ungroup do conteúdo para ter acesso à cada componente para assim editá-lo. 30 | 31 | ![Fazendo Ungroup do conteudo](./ungroup_content.png) 32 | 33 | Agora você pode clicar em cada componente, componente interno e tudo mais para fazer as mudanças que você desejar. Note que nós temos um componente master (a caixa com o conteúdo `Programming Language`) e mudando ele as mudanças serão aplicadas em cada um dos outros componentes. 34 | 35 | 3. **Exportando as mudanças** 36 | 37 | Depois de atualizar o conteúdo, você deverá `exportar o arquivo .fig`. Você pode fazer isso clicando no `menu à esquerda > file > Save as .fig...`. 38 | 39 | ![Exportando o arquivo .fig](./exporting_fig_file.png) 40 | 41 | Como parte do pull request, você precisa enviar também a imagem atualizada. Para fazer isso, você deverá `agrupar o conteúdo` com os mesmos passos que você fez para fazer o ungroup. Depois disso, você pode notar que a opção `export` vai ser exibida no menu da direta, na parte inferior. Clique no `+`, preencha o Sufix, mantenha o formato `PNG` e clique em `Export Group x`. A imagem será baixada. 42 | 43 | ![Exportando a imagem](./exporting_image.png) 44 | 45 | O padrão que estamos usando para o arquivo .fig é `Android Developer Roadmap 2020.fig` e para a imagem é `android_roadmap.png`. Você deve utilizar o mesmo padrão. 46 | 47 | ## Nos dê feedbacks! 48 | 49 | Esse arquivo foi útil? Você teve alguma dificuldade para fazer suas atualizações ou sugestões? Por favor, nos informe! Com sua ajuda nós podemos não apenas melhorar o roadmap mas também esse passo a passo sobre como fazer melhorias conosco. -------------------------------------------------------------------------------- /docs/exporting_fig_file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mobile-roadmap/android-developer-roadmap/c743fe70863832bbbcf4303116bfc92640603987/docs/exporting_fig_file.png -------------------------------------------------------------------------------- /docs/exporting_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mobile-roadmap/android-developer-roadmap/c743fe70863832bbbcf4303116bfc92640603987/docs/exporting_image.png -------------------------------------------------------------------------------- /docs/importing_project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mobile-roadmap/android-developer-roadmap/c743fe70863832bbbcf4303116bfc92640603987/docs/importing_project.png -------------------------------------------------------------------------------- /docs/ungroup_content.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mobile-roadmap/android-developer-roadmap/c743fe70863832bbbcf4303116bfc92640603987/docs/ungroup_content.png -------------------------------------------------------------------------------- /images/android_roadmap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mobile-roadmap/android-developer-roadmap/c743fe70863832bbbcf4303116bfc92640603987/images/android_roadmap.png -------------------------------------------------------------------------------- /project/Android Developer Roadmap 2020.fig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mobile-roadmap/android-developer-roadmap/c743fe70863832bbbcf4303116bfc92640603987/project/Android Developer Roadmap 2020.fig --------------------------------------------------------------------------------