EdX

AP Computer Science A: Java Programming (edX)

Offered by Purdue University, PurdueX,
AP Computer Science A: Java Programming (edX)

Learn about basic computer operation, variables, and selection statements in Java as you prepare for the AP Computer Science A exam. In this computer science course, you will learn the basics of programming in the Java language, and cover topics relevant to the AP Computer Science A course and exam.

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

This course includes a broad view of computer operation, the global impact of computing, and then introduces Java programming concepts including variables, selection and object-oriented design.
This course is for anyone interested in taking a first-level computer-programming course, particularly those who attend a school that does not provide a similar class.
No previous programming knowledge is needed. We are looking forward to helping you explore this exciting new world!

What you'll learn:

  • Ethical computing
  • Basic computer hardware
  • Number representations
  • Java program structure
  • Simple input / output
  • Data types and variables
  • Assignment statements
  • Primitive types and reference types
  • Arithmetic operators
  • Math library
  • String class and methods
  • Integer and Double classes
  • Boolean type
  • Relational operators
  • Selection statements
  • Short-circuit operation
  • DeMorgan's laws

Course Syllabus

Unit Name or Timeframe: Computer Programming Fundamentals (2 weeks)

  • Discussion of the objectives of good programmers (correctness, design, style, efficiency)
  • Problem solving and computer science
  • The ethics of computer use, social networking, and engineering for the greater good.
  • Computer hardware and memory
  • Number representations and conversions
  • Overflow and underflow
  • Introduction to Java IDE and debugger (DrJava, IntelliJ)
  • Building a first Java class and simple program
  • The main method
  • I/O in Java

Unit Name or Timeframe: Primitive data types, variables, arithmetic (2 weeks)

  • Data types and variables
  • Constants
  • ASCII and Unicode representation of characters
  • Assignment
  • Primitive types vs reference types
  • Binary arithmetic operators
  • Static methods and the Math class
  • String class and functions
  • Wrapper classes for integer and double type

Unit Name or Timeframe: Selection (2 weeks)

  • Boolean type
  • Relational operators
  • Selection statements (if, else, else-if, switch)
  • Short-circuit execution
  • Code blocks
  • Dangling else
  • Compound relational operators and truth tables
  • DeMorgan’s Laws
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Laboratorio di Programmazione (edX) EdX
University of Naples Federico II,FedericaX

Laboratorio di Programmazione (edX)

Impara a risolvere problemi complessi attraverso l'uso del computer e avvicinati alla magia degli algoritmi. Il linguaggio di programmazione è uno degli strumenti che abbiamo per interpretare e risolvere i problemi di tutti i giorni. Un linguaggio che è alla base di problemi comuni, come le previsioni del tempo o l'analisi della deformazione di una struttura di un'auto in un incidente stradale.

Self Paced
Self-Paced
Deploying TinyML (edX) EdX
HarvardX,Harvard University

Deploying TinyML (edX)

Learn to program in TensorFlow Lite for microcontrollers so that you can write the code, and deploy your model to your very own tiny microcontroller. Before you know it, you’ll be implementing an entire TinyML application. Have you wanted to build a TinyML device? In Deploying TinyML, you will learn the software, write the code, and deploy the model to your own tiny microcontroller-based device. Before you know it, you’ll be implementing an entire TinyML application.

Self Paced
Self-Paced
CS50's Introduction to Computer Science (edX) EdX
HarvardX,Harvard University

CS50's Introduction to Computer Science (edX)

An introduction to the intellectual enterprises of computer science and the art of programming. This is CS50, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by David J. Malan, CS50 teaches students how to think algorithmically and solve problems efficiently.

Self Paced
Self-Paced
IoT System Design: Software and Hardware Integration (edX) EdX
Waseda University,WasedaX

IoT System Design: Software and Hardware Integration (edX)

Start developing your own Internet of Things (IoT) system with this exploration of the interaction between software and hardware. This course is designed to teach you how systems are developed using IoT technology. Many engineers and developers tend to focus on a single discipline - either software or hardware. However, in today’s connected age it's critical to have a comprehensive understanding of both disciplines and how they are intertwined.

Self Paced
Self-Paced
Programming for Data Science (edX) EdX
University of Adelaide,AdelaideX

Programming for Data Science (edX)

Learn how to apply fundamental programming concepts, computational thinking and data analysis techniques to solve real-world data science problems. There is a rising demand for people with the skills to work with Big Data sets and this course can start you on your journey through our Big Data MicroMasters program towards a recognised credential in this highly competitive area. Using practical activities you will learn how digital technologies work and will develop your coding skills through engaging and collaborative assignments.

Self Paced
Self-Paced
Introduction to Java Programming: Writing Good Code (edX) EdX
Universidad Carlos III de Madrid - UC3M,UC3Mx

Introduction to Java Programming: Writing Good Code (edX)

Learn to program in an easy and interactive way and enter the fascinating world of computer science. This is an introductory course to learn programming with Java designed to teach how to code good programs in Java, understanding “good” as both correct and efficient. Basic principles of software engineering will be introduced to make it easier for our future self and others to reuse code. Ethical issues and the intellectual property of our programs will also be addressed in the last part of this course. Examples and case studies will be provided, so that learners can implement simple but increasingly complex programs in Java.

Self Paced
Self-Paced
Data Structures & Algorithms I: ArrayLists, LinkedLists, Stacks and Queues (edX) EdX
Georgia Institute of Technology,GTx

Data Structures & Algorithms I: ArrayLists, LinkedLists, Stacks and Queues (edX)

Work with the principles of data storage in Arrays, ArrayLists & LinkedList nodes. Understand their operations and performance with visualizations. Implement low-level linear, linked data structures with recursive methods, and explore their edge cases. Extend these structures to the Abstract Data Types, Stacks, Queues and Deques.

Self Paced
Self-Paced
Introducción a la programación en C: Funciones y punteros (edX) EdX
Universidad Autonoma de Madrid

Introducción a la programación en C: Funciones y punteros (edX)

En este curso aprenderás cómo hacer programas modulares a través de funciones y punteros en el lenguaje de programación C, uno de los más utilizados. Este curso en línea te permitirá aprender más conceptos para ampliar tus habilidades de programación en el lenguaje C. Ahora resolveremos los problemas de forma modular, dividiendo el código en pequeñas partes definidas como funciones.

Self Paced
Self-Paced
Java Programming Fundamentals (edX) EdX
Galileo University,GalileoX

Java Programming Fundamentals (edX)

Your career as a program developer starts here. Gain entry-level programing skills in Java language, and prepare yourself to handle any task that is required in any programming job. Java is one of the most in-demand programming languages today. This course is designed to provide students the basic skills and knowledge on Java.

Self Paced
Self-Paced
HTML5 Coding Essentials and Best Practices (edX) EdX
World Wide Web Consortium - W3C,W3Cx

HTML5 Coding Essentials and Best Practices (edX)

Learn how to write Web pages and Web sites by mastering HTML5 coding techniques and best practices. HTML5 is the standard language of the Web, developed by W3C. For application developers and industry, HTML5 represents a set of features that people will be able to rely on for years to come. HTML5 is supported on a wide variety of devices, lowering the cost of creating rich applications to reach users everywhere.

Self Paced
Self-Paced