Лучший способ учиться — это много читать. И разработчики не исключение. Если вы хотите стать лучше, как разработчик, вы должны читать как можно больше кода. Всё просто.
Книги, блоги, форумы — все они хороши в какой-то степени, но ничто из этого не может заменить реальный рабочий проект с открытым кодом, в котором приложение со всеми ресурсами лежит прямо перед вами.
Всё, что вам нужно, это сесть поудобнее, налить себе кофе и прочитать немного действительно потрясающего кода. Здесь мы упомянем несколько лучших приложений для Android с открытым кодом из разных сфер.
Вы можете для начала установить эти приложения из Play Store, чтобы увидеть, как они работают, перед тем, как окунуться в исходный код. Указанный рядом с каждым приложением уровень сложности должен помочь вам понять, сможете ли вы с ходу погрузиться в него или следует оставить его на потом.
LeafPic
(Github | Play Store | Сложность: Новичок)
Приложения для фото- и видеогалереи есть практически на каждом смартфоне. Вы бы хотели узнать, как они работают? LeafPic это одно из лучших приложений с открытым кодом такого типа.
В его коде очень легко разобраться разработчику любого уровня. А одна из лучших фич этой программы — динамическая смена тем приложения — механизм, который многие разработчики хотели бы сделать в своих приложениях наилучшим образом.
Simple Calendar
(Github | Play Store | Сложность: Новичок)
Простое и лёгкое приложение-календарь, написанное на Kotlin. Если вы планируете начать разрабатывать на Kotlin, то вероятно, это лучший способ.
Лёгкость этого проекта поможет полностью погрузиться в изучение нового языка для разработки приложений Android. Также с ним вы научитесь создавать практически любые виджеты рабочего стола для Android.
Amaze File Manager
(Github | Play Store | Сложность: Продвинутый уровень)
Ещё одно популярное приложение, установленное почти на каждом устройстве, это файловый менеджер.
Поначалу создание такого типа приложения может казаться не сложным, но на деле разработать файлменеджер для всех устройств и версий Android очень нелегко.
Из этого приложения вы узнаете множество полезных вещей, особенно то, как правильно работать с файлами на SD-карте. Однако, я не рекомендую слепо следовать стандартам разработки, применяемым в этой программе — они далеки от идеала.
Easy Sound Recorder
(Github | Play Store | Сложность: Новичок)
Простое, удобное и красивое приложение для звукозаписи под Android. Если вы хотите узнать больше про запись и работу с аудио, то это приложение — отличное начало вашего приключения.
Этот проект очень маленький (в нём всего один Activity) и очень просто для понимания. Новички также узнают из него про основы Material Design.
MLManager
(Github | Play Store | Сложность: Новичок)
MLManager это простой менеджер приложений для Android. Этот проект идеален, если вы хотите научиться получать детальную информацию об установленных приложениях на вашем устройстве, выгрузке файла APK этих приложений, удалении приложений и многом другом.
Стандарты разработки, используемые в этом проекте, очень хороши — им можно следовать неукоснительно и в дальнейшем. Также вы получите представление о разработке простых приложений в стиле гайдов Material Design.
PhotoAffix
(Github | Play Store | Сложность: Новичок)
Очень простое и красиво спроектированное приложение, позволяющее склеить несколько фотографий. Звучит просто? Так и есть.
В идеале любой Android-разработчик должен знать основы Android. Стандарты разработки также должны быть в приоритете. Из этого проекта вы узнаете, как сделать простые, но полезные нестандартные представления, которые помогут вам повысить ваш уровень, чтобы в дальнейшем вы могли создавать по-настоящему сложные и профессиональные представления.
MovieGuide
(Github | Сложность: Продвинутый уровень)
Задача этого приложения предельно проста — выводить список популярных фильмов с трейлерами и обзорами. Но что делает этот проект действительно интересным, так это способ реализации.
В приложении применены такие крутые штуки как
,
,
и внедрение зависимостей с
.
Несмотря на простоту приложения, вы обязательно должны посмотреть на него, хотя бы из-за его фантастической реализации.
AnExplorer
(Github | Play Store | Сложность: Продвинутый уровень)
Еще один простой, лёгкий и минималистичный файловый менеджер, созданный для телефонов и планшетов.
В нём много интересного: работа с файлами, управление в режиме root, загрузчики, нестандартные представления и т.п. Он хорошо спроектирован и вы в принципе должны быстро разобраться в коде.
Minimal ToDo
(Github | Play Store | Сложность: Новичок)
Простенький список дел. Очень простой проект для начала знакомства с разработкой под Android. С ним вы узнаете большинство основных моментов Android-разработки.
Timber
(Github | Play Store | Сложность: Профи)
Timber это прекрасно спроектированый, полнофункциональный аудиоплеер под Android. Если вам когда-нибудь хотелось создать собственное приложение для проигрывания музыки, то этот проект — для вас.
Он находится в активной разработке и очень большой. Для новичка будет довольно сложно с ходу разобраться с тем, что и как в нём происходит, но для продвинутых разработчиков это будет очень интересно.
Источник. Продолжение следует…
Разработчик: java, kotlin, c#, javascript, dart, 1C, python, php.
Пишите: @ighar. Buy me a coffee, please :).