We may earn an affiliate commission when you visit our partners.
Kevin Jones

This course teaches the Kotlin programming language, and progresses through to more advanced topics including Kotlin’s object-oriented nature and effectively using functions

Read more

This course teaches the Kotlin programming language, and progresses through to more advanced topics including Kotlin’s object-oriented nature and effectively using functions

Kotlin is the language of choice for anyone developing Android applications and is one of the most important general purpose languages on the Java Virtual Machine. In this course, Kotlin Fundamentals, you’ll learn to program in Kotlin. First, you’ll explore the fundamentals of the language such as loops, ranges, and expressions. Next, you’ll discover how to write object-oriented code using classes, interfaces, data classes, and sealed classes. Finally, you’ll learn how to use functions throughout your code, for example when working on collections and sequences and using lambdas as callbacks. When you’re finished with this course, you’ll have the skills and knowledge of Kotlin programming needed to develop Kotlin applications both on the server and on the client.

Enroll now

What's inside

Syllabus

Course Overview
Introduction to the Course
Introduction to the Kotlin Language
Immutability, Ranges, and Expressions
Read more
Classes and Interfaces
Data Classes
Other Class Types
Objects and Companions
Functions in Kotlin
Higher Order Functions
Collections and Sequences
Nullability
Java Interoperability

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Teaches Kotlin, which is the language of choice for developing Android applications
Familiarizes leaners with the fundamentals of Kotlin, such as loops, ranges, and expressions
Provides understanding of writing object-oriented code using Kotlin's class and interface features
Covers topics related to functions in Kotlin, including higher order functions, and their applications in working with collections and sequences
Introduces the concept of nullability and how to handle it in Kotlin code
Explores Java interoperability, making it easier to integrate Kotlin code with existing Java codebases

Save this course

Save Kotlin Fundamentals to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Kotlin Fundamentals with these activities:
Read Head First Kotlin
This book provides a comprehensive overview of the Kotlin programming language, covering topics such as object-oriented programming, functional programming, and Android development.
View Excel Cookbook on Amazon
Show steps
  • Read the book from cover to cover.
  • Complete the exercises in the book.
Organize and review course materials
Organize and review your notes, assignments, quizzes, and exams to better retain the information covered in the course.
Show steps
  • Gather all of your course materials.
  • Create a system for organizing your materials.
  • Review your materials regularly.
Follow tutorials on Kotlin object-oriented programming
Find and follow tutorials on how to use Kotlin's object-oriented features, such as classes, interfaces, and data classes.
Browse courses on Classes and Interfaces
Show steps
  • Find a tutorial on Kotlin object-oriented programming.
  • Follow the tutorial to create a simple object-oriented program.
Three other activities
Expand to see all activities and additional details
Show all six activities
Join a study group or tutor other students
Working with others can help improve your understanding of the material and reinforce your learning.
Show steps
  • Find a study group or tutoring opportunity.
  • Participate regularly in the group or tutoring sessions.
Attend a Kotlin workshop
Workshops provide an opportunity to learn from experts and work on practical projects.
Show steps
  • Find a Kotlin workshop that fits your schedule and interests.
  • Register for the workshop and attend all sessions.
Contribute to an open source Kotlin project
Contributing to an open source project is a great way to learn how to use Kotlin in a real-world setting.
Show steps
  • Find an open source Kotlin project that you are interested in.
  • Read the project documentation and contribute to the project.

Career center

Learners who complete Kotlin Fundamentals will develop knowledge and skills that may be useful to these careers:
Android Developer
An Android Developer is a programmer who specializes in applications for the Android operating system. Since Kotlin is the language of choice for Android development, learning it is a smart move toward pursuing this field. This course, Kotlin Fundamentals, will provide you with a comprehensive background in Kotlin. You'll learn about its object-oriented nature and apply it through different class types, such as data classes and sealed classes. This knowledge will empower you to develop robust and efficient Android applications.
Software Engineer
A Software Engineer designs, develops, and maintains software systems. Kotlin, as a general-purpose language running on the Java Virtual Machine, plays a crucial role in software development. This course will provide you with a solid foundation in Kotlin, enabling you to write clear and concise code. You'll gain expertise in working with functions, collections, and sequences, which are essential concepts for any Software Engineer.
Back-End Developer
A Back-End Developer focuses on the server-side of web applications, handling data management, business logic, and application integration. Kotlin is increasingly used for server-side development due to its robust features and ability to handle concurrency efficiently. By taking this course, you'll gain the necessary skills to work with Kotlin on the server, including understanding its object-oriented nature and effectively using functions to manipulate data and perform complex operations.
Data Scientist
A Data Scientist uses statistical methods and machine learning algorithms to extract insights from data. Kotlin is gaining popularity in data science due to its ability to handle large datasets efficiently and its interoperability with Java libraries. This course will provide you with a strong foundation in Kotlin, enabling you to work effectively with data manipulation, statistical analysis, and machine learning techniques.
Full-Stack Developer
A Full-Stack Developer works on both the front-end and back-end of web applications. Since Kotlin can be used for both front-end and back-end development, this course will provide you with a comprehensive understanding of the language. You'll learn about Kotlin's object-oriented nature, how to work with functions, and how to handle data manipulation and application integration on both the client and server sides.
Mobile Application Developer
A Mobile Application Developer creates software applications for mobile devices. Kotlin is commonly used for Android development, making this course highly relevant for those aspiring to become Mobile Application Developers. You'll not only gain a solid foundation in Kotlin but also learn how to leverage its features for mobile application development.
Web Developer
A Web Developer designs and develops websites and web applications. Kotlin is increasingly used for web development due to its ability to handle complex interactions and real-time data processing. This course will provide you with a solid foundation in Kotlin, enabling you to build dynamic and interactive web applications.
Java Developer
A Java Developer creates software applications using the Java programming language. Kotlin is interoperable with Java, making this course beneficial for Java Developers who want to expand their skillset. You'll learn about Kotlin's object-oriented nature, how to work with functions, and how to integrate Kotlin with Java code, enabling you to work on larger and more complex software projects.
Software Architect
A Software Architect designs and oversees the development of software systems. Kotlin is increasingly used for large-scale software development due to its robust features and ability to handle complex architectures. This course will provide you with a solid foundation in Kotlin, enabling you to understand its object-oriented nature, work effectively with functions, and design scalable and maintainable software systems.
Data Analyst
A Data Analyst collects, analyzes, and interprets data to extract meaningful insights. Kotlin is gaining popularity in data analysis due to its ability to handle large datasets efficiently and its interoperability with Java libraries. This course will provide you with a strong foundation in Kotlin, enabling you to work effectively with data manipulation, statistical analysis, and machine learning techniques.
Machine Learning Engineer
A Machine Learning Engineer develops and deploys machine learning models. Kotlin is gaining popularity in machine learning due to its ability to handle large datasets efficiently and its interoperability with Java libraries. This course will provide you with a strong foundation in Kotlin, enabling you to work effectively with data manipulation, statistical analysis, and machine learning techniques.
Cloud Engineer
A Cloud Engineer designs and manages cloud computing systems. Kotlin is increasingly used for cloud development due to its robust features and ability to handle distributed systems. This course will provide you with a solid foundation in Kotlin, enabling you to understand its object-oriented nature, work effectively with functions, and design scalable and maintainable cloud systems.
DevOps Engineer
A DevOps Engineer collaborates between development and operations teams to ensure smooth software delivery. Kotlin is gaining popularity in DevOps due to its ability to handle complex pipelines and its interoperability with Java tools. This course will provide you with a strong foundation in Kotlin, enabling you to work effectively with automation, continuous integration and delivery, and infrastructure management.
Technical Writer
A Technical Writer creates documentation and other materials to explain technical concepts. Since Kotlin is a rapidly growing language, there is a demand for Technical Writers who can effectively communicate its features and usage. This course will provide you with a comprehensive understanding of Kotlin, enabling you to write clear and concise technical documentation, tutorials, and other resources.
Product Manager
A Product Manager defines and oversees the development of software products. Having a foundation in Kotlin may be useful for Product Managers who work closely with development teams and need to understand the technical aspects of software development. This course will provide you with an overview of Kotlin's key concepts, enabling you to communicate effectively with developers, make informed decisions, and bridge the gap between business and technology.

Reading list

We've selected eight books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Kotlin Fundamentals.
This is one of the most highly-regarded books on Kotlin and ideal as a companion to intermediate-level learners.
A collection of best practices and design patterns for writing idiomatic and efficient Kotlin code.
Is particularly useful for people who know Java and want to learn about Kotlin, thanks to the detailed explanations and code examples. It also serves as a useful reference book due to the number of topics it covers.
Serves as a valuable guide for Java developers who want to transition to Kotlin, providing detailed explanations and code examples.
A beginner-friendly guide to Kotlin, covering the basics of the language and its use in Android development.
Dives deep into the functional and reactive aspects of Kotlin, which is useful for people who want to understand how to use Kotlin in more advanced ways.
A visually engaging and interactive introduction to Kotlin, suitable for both beginners and experienced programmers.

Share

Help others find this course page by sharing it with your friends and followers:
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser