Programming Fundamentals in Kotlin (Coursera)

Offered by Meta,
Programming Fundamentals in Kotlin (Coursera)

Practice and expand on the fundamentals of programming that are core to any language as well as the unique aspects of Kotlin syntax. You will work with data types, functions, conditionals, operators, collections-arrays, variables and loops.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Furthermore, you will declare and initialize different types of variables and explain their scope as well as create arrays and collections in Kotlin. You’ll create control flow patterns using conditionals and loops. There will be opportunities to practice using structs and classes while considering best cases for both. Discover deeper ways to use objects in Kotlin through exploring interfaces and classes.
After completing this course, you will be able to:
• Describe basic types and variables
• Explain numbers in Kotlin
• Explain what conditions are
• Describe how to use loops
• Explain the concept of a function 
• Differentiate between a parameter and an argument
• Explain that a function can return a value and describe how it works
• Explain the difference between a class, an object and a type
• Differentiate between various visibility modifiers
• Describe the use of collections in programming
• Identify which collection type to use in any given situation
• Explain the difference between List, Set and Map
• Synthesize the skills you gained from the course to create code for the Bank Account project.
This is a beginner course for learners who would like to prepare themselves for a career as an Android developer using Kotlin. To succeed in this course, you do not need prior web development experience, only basic internet navigation skills and an eagerness to get started with coding.
This course is part of the Meta Android Developer Professional Certificate.

Syllabus

WEEK 1
Introduction to Programming in Kotlin
In this module, you will start with an overview of programming in Kotlin. Once you are more familiar with the careers and usages of Kotlin, you will move on to learn about programming in Kotlin, discovering and exploring the fundamental concepts that underpin the Kotlin programming language.

WEEK 2
Functions, classes and objects
In this module, you will learn about functions, classes and objects. You will discover more about a function and how programs are constructed from functions. You will also learn how use a class, object and type while you are writing code. Furthermore, you will practice how to use classes, objects and types.

WEEK 3
Advanced classes, nullability and collections
In this module, you will learn more about advanced classes and objects in Kotlin. You will learn about List, Set and Map and how these are used while writing code in Kotlin. You will also learn about collections and when to use them.

WEEK 4
Graded assessment
In this module, you'll learn about the graded assessment. After you complete the units in this module, you'll synthesize the skills you gained from the course to create code for the "Bank Account" project.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

An Introduction to Interactive Programming in Python (Part 2) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 2) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Nov 2nd 2026
4 Weeks
Programming Reactive Systems (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Programming Reactive Systems (Scala 2 version) (Coursera)

Reactive programming is a set of techniques for implementing scalable, resilient and responsive systems as per the Reactive Manifesto. Such systems are based on asynchronous message-passing, and their basic building-blocks are event handlers. This course teaches how to implement reactive systems in Scala and Akka by using high-level abstractions, such as actors, asynchronous computations, and reactive streams.

Nov 2nd 2026
5-12 Weeks
Computer Science: Programming with a Purpose (Coursera) Coursera
Princeton University

Computer Science: Programming with a Purpose (Coursera)

The basis for education in the last millennium was “reading, writing, and arithmetic;” now it is reading, writing, and computing. Learning to program is an essential part of the education of every student, not just in the sciences and engineering, but in the arts, social sciences, and humanities, as well. Beyond direct applications, it is the first step in understanding the nature of computer science’s undeniable impact on the modern world.

Nov 2nd 2026
5-12 Weeks
Parallel programming (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Parallel programming (Scala 2 version) (Coursera)

With every smartphone and computer now boasting multiple processors, the use of functional ideas to facilitate parallel programming is becoming increasingly widespread. In this course, you'll learn the fundamentals of parallel programming, from task parallelism to data parallelism. In particular, you'll see how many familiar ideas from functional programming map perfectly to to the data parallel paradigm. We'll start the nuts and bolts how to effectively parallelize familiar collections operations, and we'll build up to parallel collections, a production-ready data parallel collections library available in the Scala standard library.

Nov 2nd 2026
4 Weeks
Learn TypeScript (Coursera) Coursera
Scrimba

Learn TypeScript (Coursera)

Are you a proficient developer in HTML, CSS, and JavaScript, looking to elevate your technical skillset? Have you observed an increasing demand for TypeScript in the professional job market and are keen to explore its significance? Are you in search of a programming language that offers ease in readability and debugging? If the answer to any of these questions is affirmative, then you have arrived at the optimal course to advance your career.

Oct 26th 2026
4 Weeks
An Introduction to Interactive Programming in Python (Part 1) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 1) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Nov 2nd 2026
5-12 Weeks
Effective Programming in Scala (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Effective Programming in Scala (Coursera)

Scala is an expressive, versatile, and safe programming language. In this course, you will learn how to get the most out of Scala to solve common programming tasks such as modeling business domains, breaking down complex problems into simpler problems, manipulating data, or running parallel tasks. Along the journey, you will also learn the best practices for writing high-quality code that scales to large applications, how to handle errors, how to write tests, and how to leverage a productive development environment.

Oct 26th 2026
5-12 Weeks
C# for .NET Developers (Coursera) Coursera
Board Infinity

C# for .NET Developers (Coursera)

In this course you will be introduced to everything from the basics of programming concepts like variables, data types, and control structures, to more advanced topics like object-oriented programming, etc. By the end of the course, you'll have a solid understanding of C# programming, the .NET framework, and how to use them to build a variety of applications. You'll have the skills and knowledge you need to start your career as a C# developer or take your current skills to the next level.

Nov 2nd 2026
3 Weeks
Ajax Basics (Coursera) Coursera
Board Infinity

Ajax Basics (Coursera)

This Ajax Basics course is designed for beginners who want to learn how to build web applications that dynamically update content without reloading the entire page. In this course, you will learn the fundamentals of Ajax, including its features, advantages, and common usage scenarios.

Nov 2nd 2026
3 Weeks
Introdução ao Desenvolvimento de Aplicativos Android (Coursera) Coursera
Universidade Estadual de Campinas - UNICAMP

Introdução ao Desenvolvimento de Aplicativos Android (Coursera)

Este curso tem como objetivo propiciar um primeiro contato com a Programação para Dispositivos Móveis que operam na plataforma Android. O Android Studio será utilizado como ambiente de desenvolvimento desde o início do curso e você receberá dicas de como obter ajuda quando alguma tarefa estiver consumindo mais tempo do que o necessário. Ao solucionar problemas por conta própria, você irá adquirir a autonomia necessária para concluir projetos de programação.

Nov 2nd 2026
5-12 Weeks