Faculty of Android development - course 95,000 rub. from GeekBrains, training 12 months, Date: June 10, 2023.
Miscellaneous / / November 29, 2023
Beginner Android developers
Master methodologies and standards, learn to work with advanced developer tools
For those new to programming
We will help you change your career, move into a promising profession and earn more on interesting projects.
For practicing IT specialists
Try a new direction, systematize your knowledge and be able to earn more
You will learn to write applications in Java and Kotlin, work with graphics and animation, and conduct testing. You'll also learn team development and prepare for interviews for Android developer positions.
Basics of Android Development in Java
In the first quarter, you will be immersed in the Java programming language to the level necessary to quickly get started in Android development. Learn about object-oriented programming, exceptions, collections, and networking. Learn the mechanisms of working with the Android system, understand the life cycle of an application, and gain skills in application layout. Find out how you can display information on the device screen. Get acquainted with the main features of Android applications.
Video course “How to study effectively”
We'll tell you how to plan your training in order to maintain interest, get maximum benefit and get everything done. You will learn how much time to devote to studying, how to effectively complete practical tasks, track progress and achieve goals.
• Features of studying at Geek University
• Why is it hard to study?
• Tools for self-education
• Learning from competencies
• Features of adult learning
• Setting SMART goals
• How to formulate an educational request
Java Core for Android
• Introduction to Java
• Basic structures
• Practice: analysis of examples of how to use basic Java elements
• Procedural style Tic Tac Toe
• Introduction to OOP - object-oriented programming
• Advanced OOP
• Practice OOP and working with strings
• OOP Java
• Exceptions
• Collections
• Generalizations
• Multithreading in Java, part 1. Shared memory, thread control, synchronization. Interaction of execution threads, mutual blocking.
• Multithreading in Java, part 2. Classes for working with multithreading. Concurrent collections. Analysis of examples.
• Overview of development tools
Android 1. Getting to know the platform
• Getting to know Android
• Application Layouts
• Activities. Life cycle
• Resources
• Intents, activities
• Fragments
• Navigation through fragments. Main menu. Side navigation menu
• Lists. List elements
• Advanced list features. Context menu. DatePicker
• Firestore and Google authentication
• Dialog boxes
Project
Creating a Note-Taking App
Deep dive into Android using Kotlin
In the second quarter, you will gain advanced Android application development skills. Learn to work with the basic components of an application, create interfaces with elements of varying complexity, and apply the basics of material design. Master access to the Internet and sending requests to a remote server. Learn about push notifications, multi-threading, fetching data through APIs and saving it to a database using Room. Learn to use GPS navigation and Google maps.
Android on Kotlin
• Introduction to Kotlin
• Application architecture
• Data types, collections, null safety, generics and interfaces
• Higher order functions, lambdas and extension functions
• Internet access
• Multithreading and Android components
• Receive data and download images
• Data storage in the application
• Permissions and Content Provider
• Geolocation and maps
• Push notifications
• Build types and principles of a healthy developer
Android. Material design
• Project template and component overview
• Application themes
• Navigation
• Layouts
• Animations
•RecyclerView
• Work with text
• Loading screen and UX design
Professional application development
In the third quarter, we talk about professional approaches in commercial Android development. You will learn dependency injection, multithreading based on functional programming. Explore the most popular libraries in Android development: RxJava, Dagger 2, Moxy, Cicerone and others. At the end of the quarter, you will master professional approaches to Android development, architecture applications, use the Koin dependency injection library, master multithreading using Coroutines. Gain an understanding of the multi-modularity of the project and learn how to use the dark theme in the application.
Popular libraries: RxJava 2, Dagger 2, Moxy
• Application architecture. MVP
• MVP: implementation via Moxy, Cicerone
• Reactive Programming, RxJava 2: Introduction
• RxJava 2: Operators
• Interaction with the server
• ORM and data storage
• Dependency Injection. Introduction to Dagger 2
• Dagger 2: sequel
• Two consultations, which will include analysis of the code in your projects and answers to questions
Professional Android Application Development
• Application architecture
• MVVM architecture
• Koin and coroutines
• Picasso/Glide, Room
• Kotlin DSL and Multimodularity
• App bundle + Dynamic feature and In-app update, Developer Console
• Scopes, Delegates, refactoring
•Android 10
Project
Creation of a translator from English to Russian
Team development and testing of applications, preparation for interviews
The quarter will begin with a dive into application testing on the developer side. You will become familiar with all the main types of tests: Unit, instrumental and UI tests using the appropriate libraries. Apply flexible methodologies in team application development, the Git version control system, and become familiar with the principles of Continuous Integration and Continuous Delivery. You will go through all stages of application development from idea to release. At the end of the quarter, you will prepare for a technical interview for the position of Middle developer. You will gain the knowledge and skills necessary to start a career in an IT company.
Testing
During this course students:
- Get acquainted with all types of testing on the Android platform
Get hands-on with:
- Principles of TDD (Test Driven Development)
- Unit tests
- Instrumental tests
- Integration and UI tests
- Testing Android components and individual libraries
- The essential tools and libraries you need to effectively test your application
By the end of the course, students will also have all the necessary skills to write tests for all elements of the application and cover all components of their project with tests.
- Introduction to Testing
- Unit tests and Mockito
- Robolectric
- Espresso
- UI Automator
- Auxiliary testing tools
- Testing Fragments and Lists
- Multithreading and architectural components
Team development of Android application
- The main goals of team development. Setting the project goal
- SCRUM technology
- Planning
- Code review. Pair programming. Daily meeting. Retrospective
- Code review. Principles of working in Git
- Product testing. Code review
- Continuous integration. Code review
- Project protection. Testing
Preparing for an Android Developer Interview
- Basics: OOP, SOLID, patterns, development principles
- Java Questions
- Questions about Kotlin
- Android development
- Libraries
- Application architecture
- Two student interviews