Get started with custom lists to organize and share courses.

Sign up

Java Programming: An Introduction to Software Specialization

Build Software Applications

Earn a Certificate

  • Specialization via Coursera and Duke University
  • $395 for 6-7 months
  • 3 courses + capstone project
0 Reviews
Rating based on 0 student reviews.

Learn More

Java Programming: An Introduction to Software
☆☆☆☆☆ (0 Reviews)
Learn the basics of programming and software development with java in four courses.
Credential Type
6-7 months

This Specialization covers the fundamentals of software development, focusing on a beginner-level introduction to rigorous problem-solving approaches while still embracing and extending traditional methods of computer science and software engineering. You’ll explore foundational concepts such as algorithm development, data representation, and debugging, using common tools such as HTML/CSS, Javascript, and Java. In the final Capstone Project, you’ll apply the skills you learned by creating a working recommender system that can help users find and choose items, such as films, books, or restaurants. Google has contributed real-world projects and the involvement of its engineers as guest lecturers to these courses.

Incentives & Benefits

When you complete this Specialization, you’ll be able to develop your own Java programs using a principled problem-focused approach. You’ll be prepared to solve rigorous computational problems in new contexts, and to pursue further study in computer science and software development. Google will offer a small, select group of top learners the chance to participate in a practice interview with Google recruiters (invitation to a practice interview does not guarantee an actual interview or employment with Google).

What You'll Learn

  • Design, write, and test problem-focused Java programs
  • Apply a principled approach to computational problem solving in new contexts
  • Prepare for intermediate courses in computer science and software development.

Recommended Background

    ★★★★☆ (10) 4 weeks 19th Aug, 2019
    Learn foundational programming concepts (e.g., functions, for loops, conditional statements) and how to solve problems like a programmer. In addition, learn basic web development as you build web pages using HTML, CSS, JavaScript. By the end of the course, will create a web page where others can upload their images and apply image filters that you create.<br /> <br /> After completing this course, you will be able to:<br /> 1. Think critically about how to solve a problem using programming;<br /> 2. Write JavaScript programs using functions, for loops, and conditional statements;<br /> 3. Use HTML to construct a web page with paragraphs, divs, images, links, and lists;<br /> 4. Add styles to a web page with CSS IDs and classes; and<br /> 5. Make a web page interactive with JavaScript commands like alert, onClick, onChange, adding input features like an image canvas, button, and slider.
    ★★★☆☆ (14) 4 weeks 19th Aug, 2019
    Learn to code in Java and improve your programming and problem-solving skills. You will learn to design algorithms as well as develop and debug programs. Using custom open-source classes, you will write programs that access and transform images, websites, and other types of data. At the end of the course you will build a program that determines the popularity of different baby names in the US over time by analyzing comma separated value (CSV) files. <br /> <br /> After completing this course you will be able to:<br /> 1. Edit, compile, and run a Java program;<br /> 2. Use conditionals and loops in a Java program;<br /> 3. Use Java API documentation in writing programs. <br /> 4. Debug a Java program using the scientific method;<br /> 5. Write a Java method to solve a specific problem;<br /> 6. Develop a set of test cases as part of developing a program;<br /> 7. Create a class with multiple methods that work together to solve a problem; and<br /> 8. Use divide-and-conquer design techniques for a program that uses multiple methods.
    ★★★★★ (6) 4 weeks 19th Aug, 2019
    Build on the software engineering skills you learned in “Java Programming: Solving Problems with Software” by learning new data structures. Use these data structures to build more complex programs that use Java’s object-oriented features. At the end of the course you will write an encryption program and a program to break your encryption algorithm.<br /> <br /> After completing this course, you will be able to:<br /> 1. Read and write data from/to files;<br /> 2. Solve problems involving data files;<br /> 3. Perform quantitative analyses of data (e.g., finding maximums, minimums, averages); <br /> 4. Store and manipulate data in an array or ArrayList;<br /> 5. Combine multiple classes to solve larger problems;<br /> 6. Use iterables and collections (including maps) in Java.
    ★★★★★ (4) 4 weeks 12th Aug, 2019
    Solve real world problems with Java using multiple classes. Learn how to create programming solutions that scale using Java interfaces. Recognize that software engineering is more than writing code - it also involves logical thinking and design. By the end of this course you will have written a program that analyzes and sorts earthquake data, and developed a predictive text generator.<br /> <br /> After completing this course, you will be able to:<br /> 1. Use sorting appropriately in solving problems;<br /> 2. Develop classes that implement the Comparable interface;<br /> 3. Use timing data to analyze empirical performance;<br /> 4. Break problems into multiple classes, each with their own methods;<br /> 5. Determine if a class from the Java API can be used in solving a particular problem;<br /> 6. Implement programming solutions using multiple approaches and recognize tradeoffs;<br /> 7. Use object-oriented concepts including interfaces and abstract classes when developing programs;<br /> 8. Appropriately hide implementation decisions so they are not visible in public methods; and<br /> 9. Recognize the limitations of algorithms and Java programs in solving problems.<br /> 10. Recognize standard Java classes and idioms including exception-handling, static methods,, and packages.
    0 ratings
    0 reviews

    Java Programming: An Introduction to Software

    Receive email notifications about this credential.
    Follow Java Programming: An Introduction to Software

    Class Central

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

    Sign up for free

    Never stop learning Never Stop Learning!

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