Лекции по джава, котлин и андроид в текстовом формате
Плейлист на ютуб по этим же лекциям https://www.youtube.com/playlist?list=PLQRyeBV1rkk0_R1aXEeXxc-IVbl8q7f-l
Содержание лекций Java
-
hello world
-
psvm, sout
-
методы, аргументы и строки
-
String и int
-
переменные
-
реинит, final переменные
-
статик файнл константы и просто статик переменные, float и double
-
long, byte и short, cast типов
-
boolean, if, debug
-
else, if else if else, &&
-
|| , ternary operator
-
решение задач
-
массивы, цикл for
-
foreach, break
-
while, Scanner(System.in)
-
решение задач
-
решение задач
-
class, конструктор
-
валидация данных в конструкторе, исключения, статик методы класса и нестатик
-
вызов конструктора из конструктора, модификаторы доступа private public
-
ООП, инкапсуляция, наследование, полиморфизм, protected , @Override, аннотации
-
Object, getClass(), class Class; toString(), abstract
-
Factory pattern, switch, void doThing(Object… args)
-
switch, case, break, default, enum class, instanceof
-
null, interface, generics, @Nullable, @NotNull, агрегация, interface segregation
-
Callback, Chain of Responsibility pattern, lambda expressions, anonym class
-
List
-
Pattern Observer
-
10 задач
-
решение 4 задач
-
Streams, Threads, Runnable, try catch finally, рекурсия
-
Synchronized method
Содержание лекций по Kotlin
-
методы fun, переменные const, var, val, vararg, дефолтные значения аргументов метода, инфикс функции, тейлрек фунции, экстеншн фукнции
-
синглтон джава, object, конструкторы класса, дефолтные значения аргументов, вызов конструктора из другого, инит блок. геттеры/сеттеры джава + проперти котлин. Вложенные классы и иннер классы, обьекты интерфейса
-
if else тернарный, when, in, is, as, as?, ?. Null-safety, sealed class, TODO()
-
циклы for, foreach,foreachindexed, break@loop, in, until, downTo, step, ((index, value) in array.withIndex(), return from loop in method, Array, arrayOf
-
equals, hashcode, data class, hashcode collisions, set, map
-
Множественное наследование interface default methods, open class, open fun, multiple override
-
by lazy, lateinit var, wth, let, run, also,apply, use, lambda
-
get(), set() = { } , defensive copy java, mutable list, filter, map, coroutines intro
Содержание лекций Android раздела
- Структура проекта и отображение текста. Project structure, activity, manifest, xml, TextView, strings.xml, ru/strings.xml,dimens.xml, colors.xml, styles.xml, themes.xml, CData, visibility,SpannableString,ClickableSpan, Snackbar, landscape, portrait
2 Изображения. ImageView, svg, png, drawable, Picasso
-
Поля ввода и кнопки. TextInputLayout, TextInputEditText, TextWatcher, Patterns.EMAIL_ADDRESS, Button, hideKeyboard
-
Чекбоксы, прогрес, изображения кнопки и диалоги. CheckBox, ProgressBar, Dialog, ImageButton, BottomDialog
-
Поворот экрана, ЖЦ активити, патерн проектирования Bundle, MVVM, SOLID: S
-
Храним примитивные данные. SharedPreferences, java.util.Timer
-
Тестируем код. Unit-tests, SOLID: L & D
-
Клиент-серверное приложение. класс Application, HttpUrlConnection, Retrofit2, Gson
-
Хранение данных Realm, noSql
-
Мапинг данных
-
Корутины!
-
SOLID : ISP Interface Segregation
-
LiveData, CustomView Intro
-
Clean Architecture!
-
#силачистойархитектуры меняем слой данных. логируем вызовы к апи через HttpLoggingInterceptor
-
CustomView детальный обзор
-
#силачистойархитектуры масштабируемость
-
дженерики в андроид, багфикс на 28 файлов
-
RecyclerView первая часть
-
RecyclerView детальный разбор
-
DiffUtilCallback
22.Fragments, ViewPager2, TabLayout
-
ViewModelFactory, FragmentManager, IoC
-
Ui tests