Goal abandoned
The author does not write in the goal 5 years 5 months 30 days
Стать Android Developer
Программированием начал увлекаться с первого курса в колледже тогда впервые сверстал страницу на HTML после познакомился с Java и Android и что то пошло не так вообщем я решил пойти в веб, уже как 2 года подрабатываю верстальщиком за это время верстка успела поднадоесть и я решил вернутся к Java и Android.
На старте приобрел два курса по Android разработке от школы LoftSchool.
В общем поставил цель к концу лета устроиться на работу на позицию Junior android developer!
Goal Accomplishment Criteria
Получить работу Junior Android Developer
-
Пройти курс Android: базовый уровень
Открытие курсаGit и GithubИнтерфейс пользователяОтображение списковФрагментыИнтернетMaterial DesignАвторизацияБолее сложные интерфейсыКастомные ViewБонусный вебинарПубликация приложенияЗакрытие курса
-
Пройти курс Android: продвинутый уровень
Открытие курсаTasks and Back StackСохранение состояния ActivityАрхитектура приложения. MVPБазы данных. SQLБазы данных. ROOMRxJavaАрхитектура приложения. MVVMПрактический вебинар (Доделываем вкладки конвертера и кошельков)Практический вебинар (Доделываем экран кошельков)Базы данных. RealmServiceJobScheduler и NotificationsБонусный вебинарЗакрытие курса
-
Прочитать книгу Head First Java
ПогружаемсяПутешествие в ОбъектвилльСвои переменные нужно знать в лицоКак себя ведут объекты- Особо мощные методы
- Использование библиотеки Java
- Прекрасная жизнь в Объектвилле
- Серьезный полиморфизм
- Жизнь и смерть объектов
- Числа имеют значение
- Опасное поведение
- Очень графическая история
- Улучшай свои навыки
- Сохранение объектов
- Устанавливаем соединение
- Структуры данных
- Выпусти свой код
- Распределенные вычисления
- Приложение А
- Приложение Б
-
Пройти видео курс Java от простого к сложному
-
Технотрек по Java от Mail.ru
-
Прочитать книгу Head First Android Development
С головой в пучинуПриложения, которые что-то делаютПредъявите свой интент- Из жизни активностей
- Представление начинается
- Расставить по местам
- Обо всем по порядку
- В поисках короткого пути
- Модульная структура
- Разные размеры, разные интерфейсы
- Вложение фрагментов
- Виджеты и жесты
- Переработка отходов
- Подальше положишь...
- Работа с базами данных
- Получение данных
- Выполнение в фоновом режиме
- К вашим услугам
- Связаны вместе
- Другие макеты
- Система сборки Gradle
- Android Runtime
- Android Debug Bridge
- Ускорение работы
- Десять важнейших тем (которые мы не рассмотрели)
-
Технотрек по Android от Mail.ru
-
Посмотреть лекции яндекса
-
Прочитать книгу Kotlin for Android Developers
- Introduction
- Getting ready
- Creating a new project
- Classes and functions
- Writing your first class
- Variables and properties
- Anko and Extension Functions
- Retrieving data from API
- Data Classes
- Parsing data
- Operator overloading
- Making the forecast list clickable
- Lambdas
- Visibility Modifiers
- Kotlin Android Extensions
- Application Singleton and Delegated Properties
- Creating an SQLiteOpenHelper
- Collections and functional operations
- Saving and requesting data from database
- Null safety in Kotlin
- Creating the business logic to data access
- Flow control and ranges
- Creating a Detail Activity
- Interfaces and Delegation
- Generics
- Settings Screen
- A first walk into coroutines
- Testing your App
- Extra concepts
- Conclusion
-
Базы данных
- SQLite
- Room
- Realm
-
Android библиотеки
- Retrofit 2
- Dagger 2
-
Прочитать книгу Head First Design Patterns
- Добро пожаловать в мир паттернов
- Объекты в курсе событий
- Украшение объектов
- Домашняя ОО-выпечка
- Уникальные объекты
- Инкапсуляция вызова
- Умение приспосабливаться
- Инкапсуляция алгоритмов
- Управляемые коллекции
- Состояние дел
- Управление доступом к объектам
- Паттерны паттернов
- Паттерны в реальном мире
- Приложение: Другие паттерны
-
Прочитать книгу Head First Object-Oiented Analysis and Design
- С чего начинаются хорошие программы
- Дайте им то, что они хотят
- Я тебя люблю, ты мой идеал... Теперь изменись
- Программы для реального мира
- Все течет, все меняется, Зарядка для программ
- «Меня зовут Арт... И я архитектор»
- Навести порядок в хаосе
- Не стремитесь к оригинальности
- Программы пишутся для заказчика
- Все вместе
- Десять главных тем (не рассмотренных в книге)
- Говорим на языке ООП
-
Прочитать книгу Reactive Programming with RxJava
- Reactive Programming with RxJava
- Reactive Extensions
- Operators and Transformations
- Applying Reactive Programming
to Existing Applications - Reactive from Top to Bottom
- Flow Control and Backpressure
- Testing and Troubleshooting
- Case Studies
- Future Directions
- More HTTP Server Examples
- A Decision Tree of Observable Operators
-
unit тесты
-
Разобраться с основными функциями Android Studio
-
Android SDK
- A basic understanding of layouts and views
- Activities and their lifecycle
- User input
- Getting data from the web
- Storing data
- Collection views (like ListViews) and Adapters (default and custom)
- Action Bar
- Accommodating different screen sizes and densities
-
Android Gradle
- Project-level build.gradle
- Module-level build.gradle
- Finally, settings.gradle
-
Android Data Binding
-
Написать клиент-серверное приложение
-
Написать Погодный виджет
Разработать простой виджет рабочего стола, для отображения погоды на сегодняшний день. Источником данных может быть любой интернет-сервис: например http://informer.gismeteo.ru/ (смотреть раздел xml-информер).
Требования по функционалу:
1. Размер виджета должен быть 4х1 ячеек;
2. Виджет должен предусматривать наличие кнопки с функционалом «Обновить данные» -
Попытать выбить тестовое задание у какой нибудь компании
-
GEO TASK (Android Junior)
Приложение состоит из 3х экранов
1. Сплеш (картинка с неоднородным фоном на весь экран)
2. Активити ввода начальной и конечной точки
Содержит:
а) 2 таба Откуда и Куда.
Внутри таба:
• Поле ввода для поиска при вводе геоенкодер определяет вариант и координаты (до 7 штук)
• Список найденных вариантов (видимы 3 шт остальное скролл). Клик по элементу выбирает его.
• Карта показывает место выбранного варианта на карте
б) Кнопка поиска пути. При нажатии переход
на Форму результата.
3. Форма результата:
Карта, смасштабированная таким образом что включает:
• Местоположение пользователя по геолокации
• Путь от точки Откуда в точку Куда, полученный с помошью прямого запроса (HTTP GET) к Google сервису DirectionsAPI (https://developers.google.com/maps/docu ... irections/).
Ответ от DirectionsAPI принимаем в виде JSON. Нас интересуют только координаты детали пути не важны. Отрисовываем в виде Polyline черного цвета.
После получения ответа от сервиса выше карты пишем:
Found или Unknown в зависимости от ответа Google.
Общие требования:
Портрет и ландшафт
Разрещения от 480х800 до 1080х1920
Android 2.3 4.2
Желательно оформление в стиле Android 4.x (Actionbar etc) -
Facebook Client (Android Junior)
Реализовать приложение, которое подключается к публичному API произвольной соц. сети (предпочтительно FB/VK) или к другому сервису, который может отдать данные для их последующего отображения.
Если сервис отдает данные с координатами (например, instagram/foursquare), сделать возможность отображения полученных данных на карте.
Приложение должно:
1. Выводить список друзей/follower/фотографов, с фотографиями и минимальным описанием.
2. Выполнять просмотр более детальной информации/списка фотографий.
3. Выполнять просмотр больших фотографий (фотографии должны кешироваться на устройстве). -
Тестовое задание Android Middle (фотоальбом)
1) Простой клиент для социальной сети.
Задача:
Разработать клиентское приложение для просмотра своих фотоальбомов в социальной сети (на выбор facebook или vkontakte).
Требования по функционалу:
1. Логин/форма входа для авторизации в соц. сети.
2. Список фотоальбомов: таблица со списком. Ячейка таблицы – миниатюра обложки альбома и его название. Миниатюры должны подгружаться асинхронно, на время подгрузки отображать индикатор круглый загрузки.
3. Фотографии: таблица со списком фотографий. Ячейка таблицы – миниатюра фотографии, ее название, дата загрузки. Миниатюры также должны загружаться асинхронно. При нажатии на миниатюру открывается окно ее просмотра.
4. Просмотр фотографии на весь экран. Реализовать отображение дополнительной информации по фотографии.
5. Поддержка навигации по фотографиям в полноэкранном режиме с помощью жестов. -
Тестовое задание Android Middle (random picture)
2) Виджет для рабочего стола
Задача:
Разработать простой виджет рабочего стола, для отображения случайной картинки с сервиса http://demotivators.to/ .
Требования по функционалу:
1. Размер виджета должен быть не мене 3х3 ячеек и предусматривать растягивание.
2. Виджет должен предусматривать наличие кнопки с функционалом «Обновить данные».
3. Предусмотреть конфигутор виджета с настройками частоты обновления демотиваторов и лимита загружаемых данных в сутки.
4. По тапу на картинке должна стартовать Activity с возможностью полноэкранного просмотра демотиватора, просмотра комментариев и рейтинга, а также возможностью сохранить картинку.
5. Реализовать логику получение данных с помощью Service. -
Разработать mp3 player
-
ReactJs и ReactNative
- JavaScript ES6/ES7
- OOP в Javascript
- React
- ReactNative
-
Вопросы к интервью по Front-end
JavaScript
- Контекст выполнения;
- «Поднятие» переменных, область видимости блоков, функциональные выражения;
- Связь данных;
- Прототипы объекта, конструкторы, примеси;
- Композиции функций, функции высшего порядка;
- Делегирование, всплытие событий;
- Преобразование типов;
- Обработка асинхронных вызовов с помощью функций обратного вызова, промисов, await, async;
- Декларация функции и функциональные выражения.
DOM
- Искать узлы с помощью document.querySelectorили document.getElementsByTagName;
- Обходить элементы дерева с помощью Node.parentNode, Node.firstChild, Node.lastChild, Node.childNodes, Node.previousSibling и Node.nextSibling;
- Добавлять, удалять, копировать и создавать узлы в дереве DOM. Знать такие операции, как изменение содержимого узла, удаление или добавление имени класса CSS;
- Кэшировать узлы.
Общие знания о веб
- HTTP запросы – GET, POST наряду с Cache-Control, ETag, Status Codes, и Transfer-Encoding;
- REST vs RPC;
- Безопасность – когда применять политики JSONP, CORs, и iFrame.
Системный дизайн
- Рендеринг – на стороне клиента, сервера и универсальный;
- Разработка дизайна, особенно несколькими командами разработчиков, подразумевает, что все должны следовать единым стандартам построения компонентов;
- Управление состояниями – выбор между потоками данных в произвольном направлении и двусвязными потоками. Вы должны задуматься, будет ли ваш дизайн следовать пассивной или реагирующей модели программирования, а также над тем, как компоненты относятся друг к другу (например Foo–> Bar или Foo –>Bar);
- Async поток – ваши компоненты, возможно, будут взаимодействовать в режиме реального времени. Дизайн, который вы проектируете, должен решать, что использовать: XHR или двунаправленные вызовы. Вас также могут спросить о поддержке устаревших браузеров;
- Концепция разделения на Model-View-Controller (MVC), Model-View-ViewModel (MVVM) и Model-View-Presenter (MVP);
- Поддержка различных устройств – будут ли решения для десктопных браузеров, для мобильных и гибридных приложений выполнены в одном стиле или они будут отличаться для подчеркивания различий. Если, к примеру, вы строите сайт вроде Pinterest, вы, вероятно, будете использовать три колонки для полной версии сайта и всего одну для мобильных устройств. Как ваш дизайн будет это реализовывать?
- 1204
- 28 March 2019, 21:20
Don't miss new posts!
Subscribe for the Goal and follow through to its completion