Application Programming Fundamentals (Coursera)

Offered by LearnQuest,
Application Programming Fundamentals (Coursera)

In Object-Oriented Concepts, we will introduce the core concepts behind modern, object-oriented, programming. We will discuss objects, classes, messaging, inheritance, polymorphism, and more. As with Fundamentals of Programming, we will illustrate the concepts using the Python language, but they will be portable to other object-oriented programming languages. This course includes hands-on labs where you will learn to write and execute programs.

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

Course 1 of 4 in the Introduction to Application Development Specialization

Syllabus

WEEK 1
Getting Started with Fundamentals of Programming
In this module we'll review what you will be learning, and we'll start off with the basic concepts of programming. We will discuss what programs are, and what common elements you would come across in almost any mainstream programming language. Foremost, we'll try to get across the essential spirit and challenge of computer programming.
Programming Elements
Is this module, we will cover all of the fundamental programming elements that we intend to cover for this course.
These elements include a few data types, specifically numbers, strings, Booleans and arrays. Given those data types, we'll talk about operators that work on them. We'll put those things together into expressions, and learn to use variables. Moving on, we'll learn to package reusable code in subroutines, and to incorporate both conditional and repetitive execution. Throughout, you'll have hands-on exercises to try these things, yourself. And by the end of the course, you'll be surprised by what we can do with just this handful of concepts.

WEEK 2
Algorithms
Algorithms are language independent descriptions of the sequences of steps necessary to carry out a task. In this module, we'll look at what that means, talk about the importance of algorithms and logical thinking, and go into some detail on a simple, classic, algorithm.
Design Patterns
Design Patterns are language independent architectural blueprints to help address particular problem domains. They describe the types of components that make up the micro-architecture and the interactions both inside the design pattern and with the design pattern. In this module, we'll look at that in more detail, discuss the importance of design patterns, where you would find them, and we'll discuss a few design patterns. In lab, you'll explore a very simple design pattern.

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

Related Courses

Introduction to Open Source Application Development (Coursera) Coursera
Illinois Tech

Introduction to Open Source Application Development (Coursera)

This course introduces basic concepts of systems programming using a modern open source language. You will learn to apply basic programming concepts toward solving problems, writing pseudocode, working with and effectively using basic data types, abstract data types, control structures, code modularization and arrays. You will learn to detect errors, work with variables and loops, and discover how functions, methods, and operators work with different data types. You will also be introduced to the object paradigm including classes, inheritance, and polymorphism.

Sep 14th 2026
5-12 Weeks
Basic Modeling for Discrete Optimization (Coursera) Coursera
University of Melbourne,The Chinese University of Hong Kong

Basic Modeling for Discrete Optimization (Coursera)

Optimization is a common form of decision making, and is ubiquitous in our society. Its applications range from solving Sudoku puzzles to arranging seating in a wedding banquet. The same technology can schedule planes and their crews, coordinate the production of steel, and organize the transportation of iron ore from the mines to the ports. Good decisions in manpower and material resources management also allow corporations to improve profit by millions of dollars.

Sep 14th 2026
4 Weeks
Learn JavaScript (Coursera) Coursera
Scrimba

Learn JavaScript (Coursera)

This is perhaps the most interactive JavaScript course ever recorded. It contains 140+ coding challenges, meaning that you will finally build that ever-so-important JavaScript muscle memory. You will solve the challenges directly in the browser thanks to Scrimba's interactive video technology, so there's not setup needed. Say goodbye to "tutorial hell" and get ready to start feeling your JavaScript superpowers grow exponentially.

Sep 14th 2026
4 Weeks
Comparing Genes, Proteins, and Genomes (Bioinformatics III) (Coursera) Coursera
University of California, San Diego

Comparing Genes, Proteins, and Genomes (Bioinformatics III) (Coursera)

Once we have sequenced genomes in the previous course, we would like to compare them to determine how species have evolved and what makes them different. In the first half of the course, we will compare two short biological sequences, such as genes (i.e., short sequences of DNA) or proteins. We will encounter a powerful algorithmic tool called dynamic programming that will help us determine the number of mutations that have separated the two genes/proteins.

Sep 14th 2026
5-12 Weeks
Julia Scientific Programming (Coursera) Coursera
University of Cape Town

Julia Scientific Programming (Coursera)

This four-module course introduces users to Julia as a first language. Julia is a high-level, high-performance dynamic programming language developed specifically for scientific computing. This language will be particularly useful for applications in physics, chemistry, astronomy, engineering, data science, bioinformatics and many more.

Sep 14th 2026
4 Weeks
Kotlin for Java Developers (Coursera) Coursera
JetBrains

Kotlin for Java Developers (Coursera)

The Kotlin programming language is a modern language that gives you more power for your everyday tasks. Kotlin is concise, safe, pragmatic, and focused on interoperability with Java code. It can be used almost everywhere Java is used today: for server-side development, Android apps, and much more. This course aims to share with you the power and the beauty of Kotlin.

Sep 14th 2026
5-12 Weeks
Big Data Analysis with Scala and Spark (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Big Data Analysis with Scala and Spark (Coursera)

Manipulating big data distributed over a cluster using functional concepts is rampant in industry, and is arguably one of the first widespread industrial uses of functional ideas. This is evidenced by the popularity of MapReduce and Hadoop, and most recently Apache Spark, a fast, in-memory distributed collections framework written in Scala. In this course, we'll see how the data parallel paradigm can be extended to the distributed case, using Spark throughout.

Sep 14th 2026
4 Weeks
Machine Learning Rapid Prototyping with IBM Watson Studio (Coursera) Coursera
IBM

Machine Learning Rapid Prototyping with IBM Watson Studio (Coursera)

An emerging trend in AI is the availability of technologies in which automation is used to select a best-fit model, perform feature engineering and improve model performance via hyperparameter optimization. This automation will provide rapid-prototyping of models and allow the Data Scientist to focus their efforts on applying domain knowledge to fine-tune models. This course will take the learner through the creation of an end-to-end automated pipeline built by Watson Studio’s AutoAI experiment tool, explaining the underlying technology at work as developed by IBM Research.

Sep 14th 2026
4 Weeks
Understanding and Applying Text Embeddings (Coursera) Coursera
DeepLearning.AI

Understanding and Applying Text Embeddings (Coursera)

The Vertex AI Text-Embeddings API enhances the process of generating text embeddings. These text embeddings, which are numerical representations of text, play a pivotal role in many tasks involving the identification of similar items, like Google searches, online shopping recommendations, and personalized music suggestions.

Sep 14th 2026
1 Week
Selenium WebDriver with Python (Coursera) Coursera
Whizlabs

Selenium WebDriver with Python (Coursera)

“Selenium WebDriver with Python” is a foundational course that aims to provide a comprehensive understanding of Selenium and its components. It also helps in understanding how Selenium WebDriver Operates. This course begins by demonstrating an environment setup for Selenium WebDriver with Python. A brief description of locating Web elements and web Interactions is provided in this course. This course covers an overview of testing frameworks with Selenium WebDriver. Some advanced topics such as Handling Popup, Alerts, Multiple Browser Tabs, Mouse and Keyboard interactions are also highlighted in this course.

Sep 14th 2026
3 Weeks
Estructuras de datos de Python (Coursera) Coursera
University of Michigan

Estructuras de datos de Python (Coursera)

Este curso presentará las estructuras de datos básicas del lenguaje de programación Python. Veremos los conceptos básicos de la programación de procedimientos y exploraremos cómo podemos usar las estructuras de datos integrados de Python, como listas, diccionarios y tuplas, para realizar análisis de datos cada vez más complejos. Este curso abarcará los capítulos 6 a 10 del libro de texto “Python para todos”. Este curso cubre Python 3.

Sep 14th 2026
5-12 Weeks