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

Advanced Algorithms and Complexity (Coursera) Coursera
University of California, San Diego,Higher School of Economics - HSE University

Advanced Algorithms and Complexity (Coursera)

You've learned the basic algorithms now and are ready to step into the area of more complex problems and algorithms to solve them. Advanced algorithms build upon basic ones and use new ideas. We will start with networks flows which are used in more typical applications such as optimal matchings, finding disjoint paths and flight scheduling as well as more surprising ones like image segmentation in computer vision.

Jun 22nd 2026
5-12 Weeks
Crash Course on Python (Coursera) Coursera
Google

Crash Course on Python (Coursera)

This course is designed to teach you the foundations in order to write simple programs in Python using the most common structures. No previous exposure to programming is needed. By the end of this course, you'll understand the benefits of programming in IT roles; be able to write simple programs using Python; figure out how the building blocks of programming fit together; and combine all of this knowledge to solve a complex programming problem.

Jun 23rd 2026
5-12 Weeks
Learn to code with AI (Coursera) Coursera
Scrimba

Learn to code with AI (Coursera)

Imagine waking up tomorrow as a web developer. What would you want to build? With AI tools like ChatGPT, you're already a developer, regardless of your experience, if you know how to work with them. So in this course, you'll build functional, interactive front-end projects while learning how to write effective prompts and debug and refine your code with the help of AI.

Jun 24th 2026
2 Weeks
Python for Data Science, AI & Development (Coursera) Coursera
IBM

Python for Data Science, AI & Development (Coursera)

Kickstart your learning of Python for data science, as well as programming in general, with this beginner-friendly introduction to Python. Python is one of the world’s most popular programming languages, and there has never been greater demand for professionals with the ability to apply Python fundamentals to drive business solutions across industries.

Jun 23rd 2026
5-12 Weeks
The Arduino Platform and C Programming (Coursera) Coursera
University of California, Irvine

The Arduino Platform and C Programming (Coursera)

The Arduino is an open-source computer hardware/software platform for building digital devices and interactive objects that can sense and control the physical world around them. In this class you will learn how the Arduino platform works in terms of the physical board and libraries and the IDE (integrated development environment). You will also learn about shields, which are smaller boards that plug into the main Arduino board to perform other functions such as sensing light, heat, GPS tracking, or providing a user interface display. The course will also cover programming the Arduino using C code and accessing the pins on the board via the software to control external devices.

Jun 22nd 2026
4 Weeks
Machine Learning: Regression (Coursera) Coursera
University of Washington

Machine Learning: Regression (Coursera)

Case Study - Predicting Housing Prices. In our first case study, predicting house prices, you will create models that predict a continuous value (price) from input features (square footage, number of bedrooms and bathrooms,...). This is just one of the many places where regression can be applied. Other applications range from predicting health outcomes in medicine, stock prices in finance, and power usage in high-performance computing, to analyzing which regulators are important for gene expression.

Jun 22nd 2026
5-12 Weeks
Unordered Data Structures (Coursera) Coursera
University of Illinois at Urbana-Champaign

Unordered Data Structures (Coursera)

The Unordered Data Structures course covers the data structures and algorithms needed to implement hash tables, disjoint sets and graphs. These fundamental data structures are useful for unordered data. For example, a hash table provides immediate access to data indexed by an arbitrary key value, that could be a number (such as a memory address for cached memory), a URL (such as for a web cache) or a dictionary.

Jun 24th 2026
4 Weeks
Using Python to Interact with the Operating System (Coursera) Coursera
Google

Using Python to Interact with the Operating System (Coursera)

By the end of this course, you’ll be able to manipulate files and processes on your computer’s operating system. You’ll also have learned about regular expressions -- a very powerful tool for processing text files -- and you’ll get practice using the Linux command line on a virtual machine. And, this might feel like a stretch right now, but you’ll also write a program that processes a bunch of errors in an actual log file and then generates a summary file. That’s a super useful skill for IT Specialists to know.

Jun 23rd 2026
5-12 Weeks
Cloud Networking (Coursera) Coursera
University of Illinois at Urbana-Champaign

Cloud Networking (Coursera)

In the cloud networking course, we will see what the network needs to do to enable cloud computing. We will explore current practice by talking to leading industry experts, as well as looking into interesting new research that might shape the cloud network’s future. This course will allow us to explore in-depth the challenges for cloud networking—how do we build a network infrastructure that provides the agility to deploy virtual networks on a shared infrastructure, that enables both efficient transfer of big data and low latency communication, and that enables applications to be federated across countries and continents? Examining how these objectives are met will set the stage for the rest of the course.

Jun 22nd 2026
5-12 Weeks