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

University of Pennsylvania

Computer Science Essentials for Software Development

University of Pennsylvania via edX Professional Certificate

Overview

Gain the systematic knowledge required to be a software developer.

In this professional certificate program, you will learn essential computer science concepts for software development ranging from the fundamentals of object-oriented programming to using efficient algorithms to design high-quality software.

This program begins with the basic concepts of Java, one of the industry’s most commonly used programming languages, and progresses into best practices in modern software development to developing efficient algorithms using sophisticated data structures for complex computational tasks. Finally, you will develop interactive and data-driven web apps using JavaScript.

This program will give you a thorough understanding of core principles of professional software development.

Syllabus

Courses under this program:
Course 1: Software Development Fundamentals

Learn the fundamentals of object-oriented programming in Java, as well as best practices of modern software development.



Course 2: Data Structures and Software Design

Learn how to select, apply, and analyze the most appropriate data representations in your code and design high quality software that is easy to understand and modify.



Course 3: Algorithm Design and Analysis

Learn about the core principles of computer science: algorithmic thinking and computational problem solving.



Course 4: Programming for the Web with JavaScript

Learn how to develop dynamic, interactive, and data-driven web apps using JavaScript.



Courses

Taught by

Chris Murphy, Sampath Kannan, Swapneel Sheth and Arvind Bhusnurmath

Reviews

Start your review of Computer Science Essentials for Software Development

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.