Kotlin. Level 1. Fundamentals of programming - course 33,990 rub. from Specialist, training 32 academic hours, date of May 20, 2023.
Miscellaneous / / November 29, 2023
Kotlin is a new popular object-oriented programming language. Kotlin is used to create server software, application programs, Android applications, website development, games and much more. With a modern and simplified syntax compared to Java, Kotlin eliminates a significant number of its shortcomings while maintaining 100% compatibility with Java. Applications created in Kotlin can run successfully on any computer, regardless of its architecture.
On the course “Kotlin. Level 1. Basics of Programming” examines all the elements and structures of the Kotlin language itself, and also examines options for its joint use with Java. All theoretical principles are demonstrated in detail using practical examples by certified teachers of the Specialist Center.
The course is intended for all programmers who want to improve their level.
You will learn:
- Use branching and looping
- Create methods in Kotlin
- Use lambda expressions
- Work with arrays and strings
- Develop classes in Kotlin
- Work with Data classes
- Learn the Kotlin type system
- Use inheritance and polymorphism
- Develop abstract classes and interfaces
- Handle errors that occur in the program
- Learn to use collections
- Get acquainted with functional programming
- Use parameterized types in the program
- Gain an understanding of Kotlin code testing
- Gain an understanding of design patterns
Practicing teacher of courses on developing mobile applications for Android. Holder of six prestigious international certifications, including IBM Certified Database Administrator – DB2 DBA for Linux UNIX and Windows. Has a rich practical...
Practicing teacher of courses on developing mobile applications for Android. Holder of six prestigious international certifications, including IBM Certified Database Administrator – DB2 DBA for Linux UNIX and Windows. Has extensive practical experience as a developer, programmer, analyst and consultant. Over the past 16 years, Marat Anasovich has been participating in various projects to implement systems master data management in large oil and gas, energy, industrial and trade international companies.
Graduated from the Moscow Physico-Technical Institute (MIPT). Excellent knowledge of any programming issues in Java, Android, C/C++, Perl, SQL and MATLAB. Has extensive experience in system and network administration of Unix (Sun Solaris, Hewlett-Packard HP-UX, SGI IRIX) and Linux (RedHat Enterprise Linux, Oracle Linux, CentOS, Fedora) operating systems. Possesses professional knowledge in the field of Cisco network administration. In addition, Marat Anasovich has excellent skills in administering relational database management systems, in particular Oracle and IBM DB2.
Rich and varied practical experience allows him to conduct classes in a lively and exciting manner. Marat Anasovich gives excellent examples from his extensive professional practice that colorfully illustrate the material. He knows how to not only easily and clearly convey even the most complex information to every listener, but also truly captivate him with his subject. The teacher is very attentive to his audience, he knows how to keep their attention and answers questions with pleasure. In the courses led by Marat Anasovich, you will be able to fully master the current specialty of a mobile application developer and become a sought-after specialist in the labor market!
Module 1. Introduction to Kotlin (3 ac. h.)
- Language lexemes
- Modules, packages, files and classes
- Environment setup
- Constants, variables and functions
- Strings, string patterns
- Type system
- Null tolerance
- Java compatible
- Lab: Working with String Literals and String Templates
Module 2. Functions, methods and operators (3 ac. h.)
- Creating and calling functions
- Named arguments, default values
- Branch operators
- when
- Automatic type casting
- Loop operators
- Ranges
- Pairs and triplets
- Destructuring and multi-declarations
- Embedding functions
- Lab: loops and branching
- Lab: Replacing if and switch with when
Module 3. Lambda expressions (2 ac. h.)
- Syntax of lambda expressions
- Links to methods
- Functional interfaces
Module 4. Development of classes (4 ac. h.)
- Overview of basic OOP concepts
- Transfers
- Class declaration
- Fields, properties, methods, access modifiers
- Constructors and initializers
- Data classes
- Operator overloading
- Extension functions and extension properties
- Lazy initialization
- Lab: Creating Classes
- Lab: Constructors and Initializers
- Lab: Data classes
Module 5. Internal, nested classes (2 ac. h.)
- Internal classes
- Nested classes
- Singleton pattern
- Companion objects
- Lab: Using Companion Objects
Module 6. Inheritance and polymorphism (4 ac. h.)
- Inheritance as a mechanism for code reuse
- Constructor when inheriting
- Type conversion
- Virtual methods and late binding
- Abstract classes and methods
- Open, final, sealed
- Delegation as an alternative
- Lab: Creating Class Hierarchies
Module 7. Interfaces and annotations (2 ac. h.)
- Interface concept
- Interface declaration
- Methods in interfaces
- Interface implementation
- Using and creating annotations
Module 8. Exception handling (2 ac. h.)
- Exception concept
- Kotlin exceptions
- Using try, catch and finally statements
- Try-with-resource idiom
- Lab: working with exceptions
- Lab: Handling Exceptions in Java Code
Module 9. Collections (4 ac. h.)
- Hierarchy of collection classes
- Concept of parameterized data types
- Working with parameterized methods and interfaces
- Overview of collection capabilities in Kotlin
- Laboratory work: working with collections
Module 10. Functional programming (4 ac. h.)
- Higher order functions
- Working with collections in a functional style
- Sequences
- Laboratory work: functional programming when working with collections
Module 11. Testing (2 ac. h.)
- JUnit
- Mockito
- Laboratory work: testing methods and classes