Сучасна диджитал-освіта для дітей — безоплатне заняття в GoITeens ×
Mazda CX 30
×

Посоветуйте Android-приложения с красивым кодом

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

Хочу улучшить свой код. Для этого, думаю, полезно поковыряться в чужом коде. Чтобы не перебирать тонны второсортного спагетти, решил спросить — кто знает проекты именно с качественным кодом и логичной архитектурой? И желательно разных уровней сложности.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

github.com/...hrisbanes/philm вот, набрел ссылку на хабре.

Не знаю проектов с качественным кодом и архитектурой. Но у этих двух плееров хотя бы ui адекватный github.com/...JamsMusicPlayer github.com/...omahawk-android
Еще можно посмотреть
firefox wiki.mozilla.org/.../Fennec/Android
fbreader github.com/...meter/FBReaderJ
vlc git.videolan.org/...d.git;a=summary

Внизу упоминали square, вот этот talk полезно посмотреть www.parleys.com/.../chapter0/about и как результат вот этот код посмотреть github.com/...keWharton/u2020

У VLC жуткий код. И бажный до ужаса. И без доки. Не стоит его рекомендовать. Особенно начинающему.

Тим, а могли бы Вы пожалуйста рассказать, что жуткого у них в коде, как было бы более правильно делать и почему? Хотябы на нескольких самых очевидных на Ваш взгляд местах, если конечно это возможно.

Там минимум три уровня абстракций, что сложилось исторически после отхода от базы ffmpeg/libav. VLC пытается использовать декодеры/демуксеры/системы вывода как плагины при том, что сами эти библиотеки в свою очередь тоже используют такую же архитектуру.
Плюс — сам плеер очень рваный по коду и размазанный по многим местам, какие-то куски исполняются в параллельных потоках, какие-то части нижележащих декодеров и систем вывода в свою очередь также параллелят выполнение и в итоге выходит просто реальный ад для отладки и попыток найти что где почему работает или не работает.
В 2.0 изменения уже вносить крайне тяжело по вышеописанным причинам — размеры и сложность кода его уже хоронит.
Ну и Реми ко всему прочему еще и умудрился поругаться со всем сообществом ffmpeg/libav и даже Михаэль уже не хочет иметь с ним дело.
.
Короче это довольно узкая область со своей полузакрытой тусовкой и кучей тараканов в ней. Без необходимости лучше туда не лезть.
.
Кстати у самого гугла должны же быть на гуглкоде примеры и библиотеки под Андроид? Думаю за хорошим кодом лучше туда.

Вот пишут что VLC наконец выпустил полную стабильную версию для андройд, может интересно будет lifehacker.com/...sion-1668394621

Странно что никто не посоветовал
square.github.io/#android

Красота кода вещь субъективная и каждый решает для себя.
ТС попросил совет, я его дал исходя из моих предпочтений, ваши можно увидеть снизу.

Очень хотелось бы увидеть от Вас код ревью их кодбейза (square) если это возможно. Заодно появилась бы интересная тема для дискуссии...

Ещё бы порекомендовал глянуть на app generators, типа www.androidbootstrap.com, позволит начать не с нуля

и не только 2014 плохой выбор, оно всегда было набором костылей по обходу недостатков платформы и попыткой втулить новые фичи разработчикам.

набором костылей по обходу недостатков платформы
Ну, думаю, обходить эти недостатки приходится всем. Вряд ли кто-то знает то, о чем не догадываются в гугле.

Дело в том что едж кейсов много и предлагаемая архитектура не очень, и вместо правки архитектуры предлагают костыли. Вы сильно идеализируете developer relations / advocates , у них нет задачи(а часто и навыков) написать хорошее приложение.

PS вопросы на конференциях вроде этого www.youtube.com/...p-ZntU&t=87m53s не появляются просто так

К примеру, здесь я брал исходники приложения «Мои Треки» code.google.com/p/mytracks

Присоединяюсь к вопросу автора. Хочется посмотреть простой и красивый код для лучшего понимания.

Підписатись на коментарі