Комментарии 42
Если говорить о Junior-разработчике, со знанием стека технологий, который я описал в статье, но, без опыта разработки в команде и без наличия завершённых коммерческих проектов — Московские студии по разному оценивают этот набор, но, в целом от ~ 50 000 на испытательный срок.
А если говорить в общем — то, статистика от яндекса не врёт.
Я конечно понимаю что вопрос с зарплатой — это вопрос который решается индивидуально
Вы правы — данный вопрос решается в индивидуальном порядке, и зависит не только от технических результатов интервью, но и от характера, подхода к разработке и способности постоянно изучать что-то новое.
Как по мне, так уроки на сайте StartAndroid будут по лучше чем блог Александра Климова. По крайней мере так было когда я только начинал изучать Android.
Пишу приложения исключительно для себя и это был первый сайт с которого я начал изучение.
Спасибо, добавил данный сайт.
Сам по нему не занимался(именно на сайте), но, сейчас вижу его конкретно так обновили.
В сфере системного администрирования я успешно проработал более двух лет.
Так Вы и такие же мышкофтыкатели, соглашающиеся для старта поработать за еду и которых вдруг почему-то вместо хелпдеска\эникея начали называть админами и демпинганули рынок.
У меня дико прям бомбит от этого — прям новомодный стандартный путь:
Этап 1 — мышкофтыкатель за еду, админить не умеет в принципе, только демпингует — 1-3 года
Этап 2 — нееее, не джуниор кодеманки, а прям вот сразу разработчик и шоб минимум 80-100к на старте, но при этом демпингуя на мировом рынке
И потом начинается(утрированно, но не особо далеко от истины): И зп бы надо порезать, все равно он же ничего не делает кроме каких-то там ферм да контейнеров которых никто не видит, а вот, да туже бумагу в принтер не закладывает и картриджи не заряжает, а вот на прошлом месте там такооой мальчик был, и провода тянул и в принтерах печки менял и Светочке в экселе за нее формулы вставлял и даже микроволновку чинил и все за 25к, умничка прям.
Все связано на самом деле.
Из библиотек могу еще посоветовать MaterialDrawer (главное меню приложения) и Fresco (аналог Picasso).
В качестве клиента git, нужно использовать git. Остальное — профанация.
Тут уже кому как удобно. В целом, в SourceTree нельзя сделать многие вещи, которые можно сделать в консоли, но, для повседневных реалий его вполне хватает. С интерфейсом согласен, он мог бы быть лучше.
По-поводу MaterialDrawer — отличная библиотека, которую стоит иметь в арсенале.
Но, в основном хватает возможностей стандартного NavigationView. (по крайней мере в моих проектах)
Кстати, есть неплохой пост на StackOverflow на тему Image-лоадеров.
Спасибо большое за набор различных полезных ссылок по андроид, возможно когда-нибудь они пригодятся.
Статья заставила ностальгически улыбнуться — сам полтора года назад начинал свои потуги в программировании на JavaRush'e и смотрел лекции Головача(Действительно, он очень хорош). Можно еще отметить канал DevColibri. Андроид разраб, который так же делает ролики по котлину, мне он в свое время помог)
Да, Головач стал уже классикой)
Про Devcolibri: cогласен, хороший канал)
Особенно, курс по созданию полноценного клиент-серверного приложения.
Кстати, ребята недавно начали ещё один подобный курс.
Но следует добавить раздел «архитектуры MVP, MVC, VIPER», так как по ним спрашивают на собеседованиях сейчас практически всегда (термин VIPER используется при разработке под iOS, но в Андроиде недостающие компоненты в MVP (роутер, интерактор) в хороших проектах все равно реализуются, хотя и не называются именно так — поэтому понимание и нужно)
Можно дать такой совет
— Скачайте код проектов от известных компаний. Посмотрите примеры проектов для библиотеки Moxy, примеры проектов для API от крутых вендоров (Яндекс, Гугль). Посмотрите, как называются внутренние поля объекта, аргументы функций, сами объекты и классы. Обратите внимание на размер методов, на размер классов. Особое внимание — на то, на какие классы разбиваются разные задачи.
Подумайте, почему сделано так. Если не можете понять, почему — попробуйте просто повторить, попробуйте просто начать кодировать в таком стиле.
Идеальнее всего, конечно, применять такой совет на примерах от той компании, в которую хотите устроиться. Но можете брать примеры от лучших и известных разработчиков на GitHub.
Realm
База данных. По некоторым параметрам она быстрее чем SQLite. Правда, в продакшн-проектах используется до сих пор не так часто, т.к. stable-версия вышла относительно недавно. Но, на мой взгляд, будущее локального хранения данных на Android именно за Realm. Достаточно посмотреть её на абстрактном уровне — разобрать базовые транзакции.
А также советую обратит внимание на /. По производительности она должна обойти даже Realm. ИМХО у реалма много лишнего функционала, Например конвертирование с сериализация и десириализация, а также накладывает ограничения на использование потоков. Хотя может кому-нибудь это и нужно.
А также советую обратит внимание на /.
На что не дописали или я чего-то не понял)
А также советую обратить внимание на http://greenrobot.org/objectbox/ По производительности она должна обойти даже Realm. ИМХО у реалма много лишнего функционала, Например конвертирование с сериализация и десириализация, а также накладывает ограничения на использование потоков. Хотя может кому-нибудь это и нужно.
Канал для общения в Telegram: @startandroidchat
Это чат
А канал здесь — https://t.me/startandroid
Спасибо, поправил.
Так же спасибо за интересные и доступные уроки!
А лично я считаю, что не нужно новичкам сразу показывать библиотеки, а то забудутся и не будут знать как, например, формируется сетевой запрос или загружается картинка. Для начала пусть познают жизу (HttpURLConnection + AsyncTask), а уже потом всякие модные штучки. А то на собеседованиях трудновато будет...
Возможно Вы правы, но, на собеседованиях (по крайней мере на тех, которые проходил я) упор всегда делался на то, как глубоко человек знаком с теорией Http и знает Retrofit. (Если говорить о Http-запросах).
Но в любом случае, это лишним не будет.
С AsyncTask согласен, его обязательно нужно знать.
AsyncTask — это не то, что следует использовать для запросов в сеть. Потому что мало кто умеет их правильно готовить для этого. И уж лучше сразу использовать нормальные библиотеки, а на собеседовании бежать от вопрошающих такое.
Нигде не упомянут фреймворк kivy. А жаль.
- Официально, Google предоставил два варианта
Android SDK. Официальный язык — Java.
Большинство существующих проектов написаны именно на Java.
Android NDK. Официальные языки — C/C++.
Сам Google рекомендует использовать NDK в тех случаях, когда требуется максимальная производительность. (В одном из наших проектов мы использовали NDK для организации голосовой связи)
- Язык Kotlin
Вчера 2 добавилось в 1:)
https://developer.android.com/kotlin/index.html
Пройдя вводный курс по Android, желание программировать сильно увеличилось.
Какое самостоятельное желание — и курсы прошло, и увеличилось.
По поводу кросс-платформенные инструменты, а конкретно про Xamarin. Он дает два подхода для разработки:
1. Xamarin Forms — пишем код который работает на двух платформах одинаково, но имеет ограничения
2. Xamarin Native — пишем отдельный код для каждой платформы. Результат ни чем не отличается от нативного кода Java/Swift… Для тех кто знает C# и хочет написать нативные приложения.
Мне кажется, чтобы стать хорошим фрилансером, который качественно и быстро пишет код, стоит поработать несколько лет в студии. Подход к самой разработке изменится.
Как я перешёл из системного администрирования в Android-разработку