Скачать [МИХАИЛ РУСАКОВ] Создание приложения для Android с нуля + Программирование на Java с Нуля до Гуру

Zlostniy_tip

Премиум
18 Фев 2018
32,246
625
Название: Создание приложения для Android с нуля + Программирование на Java с Нуля до Гуру
Автор: МИХАИЛ РУСАКОВ

Меня зовут Михаил Русаков, имею высшее техническое образование, и с 2010-го года веду обучающую деятельность по созданию сайтов и по программированию.

Подробнее об авторе:
На данный момент у меня 13179 клиентов, 150475 e-mail подписчиков и около 18000 подписчиков суммарно в двух группах ВК, на моей странице в ВК и на YouTube. И что для меня самое важное, что 13179 клиентов оплатили 22935 заказов, то есть примерно 90% клиентов совершает у меня в среднем 2 покупки, что доказывает то, что мои клиенты остаются довольны моими обучающими материалами.
Безусловно, за это время у меня накопилось множество отзывов.
Что касается Android, то у меня всю жизнь были смартфоны и планшеты только на этой ОС, так как я субъективно считаю её лучшей системой для мобильных устройств.
Своё первое серьёзное приложение на Android написал где-то 4 года назад. Передо мной встала задача создать приложение, которое мне позволит удобно контролировать расходы. Дело в том, что ещё с 2009-го года я веду всю свою личную бухгалтерию: сколько потратил на продукты, сколько на бензин, сколько на метро, сколько на одежду и так далее. Каждый свой расход я записываю в свою систему, которую я написал сам, и оформил в виде сервиса в Интернете. Но проблема состоит в том, что за день я могу совершить множество покупок, и, как следствие, придя домой и добавляя что-то в свою систему, я могу просто забыть что-то добавить, а потом деньги на счетах или в кошельке не совпадают с данными в моей системе. Поэтому встал вопрос о том, чтобы создать мобильное приложение для Android, в которое я бы мог добавлять расходы сразу после совершения покупки, а потом при наличии доступа к Интернету, происходила бы синхронизация с данными на сервере. В итоге, и в приложении, и в онлайн-версии, данные бы совпадали. Собственно, это приложение я и сделал.
Дальше я его усовершенствовал. Дело в том, что в магазинах я почти всегда расплачиваюсь банковской картой, и мне на телефон приходит SMS с суммой покупки и дополнительной информацией о том, где был совершён платёж. Моё приложение это SMS перехватывает, парсит и автоматически добавляет информацию в расходы или доходы. То есть теперь я добавляю свои расходы лишь изредка, когда совершаю покупку в каком-то новом магазине, а в остальных же случаях всё происходит автоматически.
Безусловно, это далеко не единственное приложение. Было много тренировочных приложений, где я тестировал различные возможности, было приложение, позволяющее контролировать время работы за компьютером, чтобы я делал перерывы для глаз, были и другие приложения, которые я использую в своей личной жизни и в работе.
В общем, опыт в этой сфере у меня накопился очень приличный.
Почему Android?
На данный момент Android является абсолютным лидером по числу устройств. Их доля составляет сейчас 86.2%, причём в последние годы их доля только растёт. То есть на iOS, Windows Phone и на другие ОС приходится суммарно меньше 14%. Это уже однозначно определяет, что разрабатывать приложения нужно, в первую очередь, под Android. Такой успех устройств на базе Android связан, в первую очередь, с отличным функционалом, хорошим железом, огромным ассортиментом и бюджетной ценой за счёт экономии на маркетинге. Люди, покупая, например, смартфон или планшет на Android, понимают, что они платят за конкретную вещь, а не за то, что Бред Питт в каком-нибудь фильме звонил с помощью iPhone. Поэтому неудивительно, что Android является номером 1 на рынке мобильных ОС.
Как научиться создавать приложения на Android?
Во-первых, Вам необходимо освоить язык Java, поскольку приложения для Android пишутся именно на этом языке. Дальше у Вас есть разные пути: записаться на оффлайн-курсы, что дорого и, на мой взгляд, бесполезно, плюс очень неудобно. Так же можно обратиться к репетитору, что ещё дороже, так же не очень неудобно, но, правда, намного эффективнее. Ещё можно читать множество книг, искать информацию в Интернете. И, на мой взгляд, этот способ уже на порядок лучше предыдущих, но он занимает, к сожалению, очень много времени.
В принципе, я как раз и обучался таким способом. Главная проблема, с которой я сталкивался – это устаревший код. Подавляющее большинство обучающих статей для Android написаны ещё в 2011-2012 году. И если некоторые из них ещё актуальны, то часть просто устарела так, что, в принципе, не работают. Дальше снова нужно искать более свежую информацию, причём крайне желательно знать английский язык, чтобы найти правильный вариант решения той или иной задачи. Точно такая же проблема и у книг, так как с момента написания книги и до её публикации проходит зачастую не один год, а это, пусть и не критично (как ошибочно думает большинство), но всё-таки серьёзно влияет на актуальность.
Поэтому самым лучшим способом я считаю видеообучение, опираясь на следующие факты:
1. Лучшая усваиваемость материала.
Вы видите, как автор пишет и комментирует код, запускает приложение, и Вы вместе видите результат. То есть у Вас задействованы сразу и слух, и зрение, что существенно упрощает усвоение материала по сравнению, например, с книгами.
2. Смотреть можно в любой момент.
Вы не ограничены конкретной датой и временем какого-нибудь семинара в Москве, Вы не завязаны на то, чтобы жить там, где он проводится, да ещё и ходить туда. Вы можете смотреть видеокурс, где угодно и когда угодно. Вам так же не нужен для этого постоянный Интернет, как, например, для обучения по статьям в Интернете.
3. Высокая скорость обучения.
За счёт того, что Вы получаете всё и сразу в одном месте, плюс Вы ещё и быстро всё усваиваете.
4. Бюджетный вариант.
Цена видеокурса – это пара часов занятий со средним репетитором, или несколько занятий в оффлайне, за которые Вы узнаете слишком мало. Вообще, программирование – это не то, чему стоит обучаться в аудиториях.
5. Гораздо интереснее.
Это, возможно, субъективно, но лично я и, уверен, что большинство людей предпочитает не читать, а именно смотреть. Для меня, например, видеоуроки по интересующей меня теме гораздо интереснее любого фильма. И думаю, что для многих из Вас это так же.

Что содержится в курсе?
Курс состоит из 16-ти разделов.
Раздел №1
Введение
В этом разделе Вы узнаете:
Как правильно проходить курс.
Как установить Android Studio и, главное, как правильно его настроить.
Как установить эмулятор Android, чтобы Вам не пришлось постоянно загружать приложение на своё устройство.
После данного раздела у Вас будет полностью готовая и настроенная среда для разработки приложений на Android.
Раздел №2
Основы программирования на Android
В этом разделе Вы узнаете:
Как пишется простейшее приложение «Hello World».
Какова структура проекта. Это очень важный урок, в котором Вы узнаете назначение всех файлов и папок в проекте.
Как запустить приложение на реальном смартфоне или планшете. Вы увидите, какие действия нужно совершить на самом телефоне, как правильно его подключить к компьютеру и как загрузить приложение на само устройство.
Для чего нужен файл AndroidManifest.xml и как его использовать.
Пройдя данный раздел, Вы сможете уже создавать свои первые приложения.
Раздел №3
Основы интерфейса приложений
Из данного раздела:
Вы узнаете, что такое файлы Layout и как их использовать.
Вы узнаете, как задавать размеры элементов и как их позиционировать на экране устройства.
Вы научитесь создавать простые пользовательские интерфейсы.
Вы узнаете, как обрабатывать события (например, клик по кнопке).
Вы научитесь создавать «многостраничные» приложения.
Вы научитесь работать с ресурсами.
Посмотрев этот раздел, Вы сможете создавать относительно сложные приложения, активно взаимодействующие с пользователем.
Раздел №4
Менеджеры компоновки
В этом разделе:
Вы научитесь работать с самыми разными менеджерами компоновки: LinearLayout, TableLayout, FrameLayout, RelativeLayout, ConstraintLayout, ScrollView, GridLayout.
Вы узнаете, как программно создавать и использовать менеджеры компоновки.
Вы научитесь совмещать различные менеджеры компоновки вместе.
После данного раздела Вы сможете создавать интерфейсы любой сложности.
Раздел №5
Компоненты
В этом разделе:
Вы научитесь использовать самые разные компоненты: текстовые метки, текстовые поля, кнопки, чекбоксы, радио-кнопки, выпадающие списки, компоненты для выбора даты и времени, ползунки, всплывающие сообщения.
Вы узнаете, как создаются и как используются списки в приложении.
После данного раздела Вы сможете использовать самые разные компоненты в своих приложениях. Начиная с этого момента, Вы уже в состоянии создавать сложные проекты, так как Вы будете знать: как создаётся интерфейс, как происходит взаимодействие с пользователем и как выводится информация на экран.
Раздел №6
Меню
В этом разделе Вы узнаете:
Как создавать меню, подменю, чекбосы и радио-кнопки в меню.
Как обрабатываются нажатия по различным видам пунктов меню.
После данного раздела Вы сможете в своих приложениях создавать и использовать самые разные виды меню.
Раздел №7
Диалоговые окна
Из этого раздела Вы узнаете:
Какие базовые диалоговые окна уже встроены в Android и как их использовать.
Как создаются свои диалоговые окна.
Как обрабатывать действия пользователя с диалоговым окном.
Изучив этот раздел, Вы сможете использовать в своих приложениях самые различные диалоговые окна.
Раздел №8
Дизайн приложения
В этом разделе Вы узнаете:
Что такое стили и как их использовать.
Что такое темы и почему они так важны и удобны.
Данный раздел поможет Вам создавать различные дизайнерские версии приложения и менять дизайн всего приложения буквально одним кликом.
Раздел №9
Работа с Activity и Service
Из этого раздела Вы узнаете:
Какие есть методы обратных вызовов у Activity.
Что такое объект Intent и как его использовать.
Что такое Intent-фильтры и как их можно применять.
Как передавать данные из одного Activity в другой.
Что такое сервис.
Как создать сервис.
Как выводить уведомления.
Данный раздел действительно важный, и после него Вы сможете создавать по-настоящему сложные функциональные приложения: с фоновыми процессами, с множеством Activity, которые обмениваются данными между собой.
Раздел №10
Фрагменты
После данного раздела Вы узнаете:
Что такое фрагменты и для чего они нужны.
Как происходит обмен данными между фрагментами.
Какие есть методы обратных вызовов у фрагментов.
Как сделать перелистывание страниц с помощью ViewPager.
Пройдя этот раздел Вы сможете делать Ваши приложения более эффективными с помощью фрагментов.
Раздел №11
Работа с мультимедиа
В данном разделе Вы узнаете:
Как работать с изображениями.
Как работать с аудио.
Как работать с видео.
Что такое SoundPool и как его использовать.
Пройдя данный раздел Вы сможете использовать в своих приложениях мультимедиа.
Раздел №12
Хранение данных
В этом разделе Вы научитесь:
Записывать информацию в файл.
Считывать информацию из файла.
Сохранять и загружать настройки приложения.
После данного раздела Вы сможете работать с файлами в Android, а также научитесь сохранять различные пользовательские настройки и служебную информацию даже при выходе пользователем из приложения.
Раздел №13
Телефонные вызовы и SMS
Очень интересный раздел, в котором Вы узнаете:
Как совершать звонок прямо из Вашего приложения.
Как отправить SMS из Вашего приложения.
Как перехватить входящее SMS.
Как получить доступ к SMS устройства и прочитать их.
Как работать с контактами в телефонной книге устройства.
Как правильно запрашивать разрешение на доступ к этим функциям у пользователя, так как по умолчанию они, разумеется, запрещены.
Просмотрев данный разделе, Вы сможете создавать приложения, взаимодействующие с телефонными функциями устройства.
Раздел №14
Рисование в Android
В этом разделе Вы узнаете:
Как вообще происходит рисование в Android.
Как рисовать и позиционировать фигуры.
Как рисовать сложные фигуры.
Что такое Matrix-преобразования и как их использовать.
Что такое Bitmap.
Что такое Drawable, как его создавать и использовать.
Как нарисовать свой собственный компонент (например, свою кнопку).
Как сделать анимацию компонентов (например, плавное появление, исxчезновение, перемещение, разворачивание и так далее).
Как сделать анимацию изображений.
После этого раздела Вы сможете создавать красивые и стильные приложения.
Раздел №15
Работа с Интернетом
Из этого раздела:
Вы узнаете, как получить данные по URL.
Вы узнаете, что такое JSON и как с ним работать.
Вы увидите пример парсинга данных о текущей погоде по гео-координатам, полученным по API стороннего сервиса, и выводе их на экран.
Очень важный раздел, который позволит Вам создавать приложения, взаимодействующие с API любых Интернет-сервисов.
Раздел №16
Многопоточное программирование в Android
В этом разделе:
Вы узнаете, как создаются многопоточные приложения в Android.
Вы узнаете, как использовать класс AsyncTask и для чего он нужен.
Вы увидите, как создаётся таймер обратного отсчёта.
Вы узнаете, как заставить телефон вибрировать и как настроить шаблон вибрирования.
После данного раздела Вы сможете создавать многопоточные приложения в Android. Это очень важный раздел, поскольку обработка действий пользователя, какой-нибудь фоновый служебный поток, какой-нибудь таймер обратного отсчёта, секундомер, часы – всё это должно работать в различных потоках. И вот созданию самых разных потоков с различными целями и задачами Вы научитесь в этом разделе.
Упражнения
Как видите, курс получится очень подробным. Но без закрепления знаний из урока, данный курс – это не более, чем просто интересный фильм. Поэтому почти к каждому уроку идут упражнения для закрепления материала из урока на практике. И их надо обязательно выполнять, чтобы получить на выходе отличный результат: возможность создавать приложения любой сложности на Android.
Помимо упражнений Вы получите исходники из всех уроков курса.
Исходники
Упражнения
Бонусы
Курс и так получился очень объёмным, но помимо самого курса вместе с ним Вы так же получите ещё и несколько бесплатных Бонусов. Весь исходный код из Бонусов, безусловно, прилагается к курсу.
Бонус №1
Создание виджета
Уверен, что многие из Вас знают, что такое виджет. Но для тех, кто не знает, кратко поясню, что виджет – это небольшая программа, которая находится на рабочем столе устройства. Там может быть, например, баланс Вашего банковского счёта, сведения о погоде, список дел на сегодня и тому подобное. И в данном Бонусе, состоящем из 5-ти уроков, Вы научитесь:
Создавать виджет.
Принимать настройки от пользователя.
Обрабатывать нажатия на виджете.
Обновлять информацию в виджете.
Создавать полноценные виджеты с нуля на примере виджета погоды.
Бонус №2
OpenGL и 3D-рисование
Очень сложный материал, но крайне полезный для тех, кто планирует создавать графические приложения, например, игры. Этот Бонус состоит из 11 уроков, в которых:
Вы познакомитесь с OpenGL.
Вы узнаете, что такое шейдеры.
Вы узнаете, как рисуются фигуры на OpenGL.
Вы узнаете, как работать с цветом в OpenGL.
Вы узнаете, как создаются 3D изображения.
Вы узнаете, как убрать искажения при разных ориентациях экрана.
Вы узнаете, как работать с камерой.
Вы узнаете, как сделать анимацию камеры.
Вы узнаете, как применяются трансформации.
Вы узнаете, как текстурировать объект.
Вы увидите пример создания текстурированного 3D-объекта с вращающейся камерой.
Бонус №3
Создание приложения Vision
Данное приложение написал я когда-то для себя, но считаю, что оно будет полезным для всех, кто много работает за компьютером и при этом хочет сохранить своё зрение. Суть его в том, чтобы через равные промежутки времени делать перерывы. Например, 50 минут за компьютером и 10 минут перерыв. После каждого интервала телефон должен сигнализировать о том, что пора за компьютер или пора делать перерыв. Разумеется, в функциях этого приложения данное время должно настраиваться. Так же в этом приложении должно быть реализовано множество мелких нюансов: сброс таймера, диалоговые окна, работа таймера при закрытии приложения и многое другое. Так вот это приложение, которое я сам лично использую и советую его использовать и Вам, в этом Бонусе мы с Вами создадим. Сам Бонус состоит из 10 уроков, в которых Вы увидите:
Как создаётся главный экран.
Как создаётся экран с настройками.
Как добавляется поддержка альбомной ориентации.
Как происходит обработка и сохранение настроек.
Как делаются часы.
Как создаётся таймер обратного отсчёта.
Как выводится и обрабатывается диалоговое окно.
Как добавляется виброзвонок и аудио-сигнал.
Как делается кнопка смены режима работы таймера.
Как делается кнопка сброса таймера.
Что нужно знать для успешного прохождения курса?
Для успешного прохождения курса в обязательном порядке нужно знать язык Java. Так как именно на нём создаются приложения для Android. Если Вы его знаете, то хорошо, если не знаете, то ничего страшного, так как освоить на отличном уровне этот язык Вам поможет мой Видеокурс «Программирование на Java с Нуля до Гуру». Его можно будет заказать вместе с Видеокурсом «Создание приложений для Android с нуля» с отличной скидкой. Данный курс содержит 80 уроков общей продолжительностью более 14.5 часов, из которых Вы узнаете всё, что необходимо знать по языку Java для создания самых разных программ. Это вообще очень универсальный язык, и создание приложений для Android – лишь один из множества вариантов его использования, поэтому его изучение для любого программиста я считаю обязательным.

Продажник:

Для просмотра содержимого вам необходимо Войти или Зарегистрироваться.

 

Похожие темы

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.