Application Engineering and Development Part 1
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Ask Coursera
Skills you'll gain
Tools you'll learn
Details to know
See how employees at top companies are mastering in-demand skills
There are 7 modules in this course
This course is an introduction to the Java programming language and the concepts of object-oriented design. It not only covers the fundamentals of programming in Java, but it also brings in the concepts of object-oriented design. Topics include, but are not limited to, fundamentals of programming in Java, classes and methods, objects and references, overloading, inheritance, polymorphism, abstract classes and interfaces, basic data structures, and GUI applications. Students are expected to apply learned knowledge to address an identified problem found in the real world.
This introductory module establishes the foundational knowledge necessary for effective software development by combining core programming concepts with practical design methodologies. You will explore fundamental design principles and object-oriented programming paradigms that form the backbone of modern software architecture, gaining insight into how these concepts create maintainable and scalable code. Through previewing real-world application case studies, you will see how theoretical principles translate into practical solutions across various domains and industries. The module concludes with a comprehensive review of Java programming fundamentals, ensuring all students have the essential syntax, data structures, and programming constructs needed to succeed in subsequent coursework and apply object-oriented design principles effectively in your development projects.
What's included
1 video18 readings1 assignment1 app item1 discussion prompt
1 video•Total 2 minutes
- Milestone 1 Video•2 minutes
18 readings•Total 176 minutes
- Course Introduction•10 minutes
- Syllabus - Application Engineering and Development Part 1•5 minutes
- Meet Your Faculty•3 minutes
- Academic Integrity Attestation•1 minute
- Variables•15 minutes
- Data Types•10 minutes
- Data Types — Alphanumeric•10 minutes
- Data Types — Boolean•10 minutes
- Introduction to Methods•10 minutes
- Types of Methods•15 minutes
- Predefined Methods in Java•15 minutes
- More Examples•15 minutes
- The Process of Methods•15 minutes
- Format String•10 minutes
- Control Flow and Conditions•10 minutes
- if-else•10 minutes
- Multiple ‘else if’ Statements•10 minutes
- Summary•2 minutes
1 assignment•Total 10 minutes
- Module 1 Assess Your Learning•10 minutes
1 app item•Total 45 minutes
- Understanding Application Design Principles•45 minutes
1 discussion prompt•Total 10 minutes
- Meet Your Fellow Learners!•10 minutes
This module introduces students to Java programming fundamentals and object-oriented design through hands-on application development. Students will learn to create Java classes and objects, understanding how to define and work with instance variables, methods, and the differences between static and non-static elements. The module emphasizes practical GUI development, teaching students to build user interfaces with JFrames and JPanels while managing data flow between components. By the end of this module, students will have a solid grasp of the object-oriented paradigm and be able to integrate core Java concepts—including data types, control structures, and methods—to create functional Swing applications that demonstrate their understanding of both programming fundamentals and user interface design.
What's included
15 readings1 assignment1 app item
15 readings•Total 170 minutes
- OO Programming Concepts•15 minutes
- Constructors•15 minutes
- Default Constructors•15 minutes
- Declaring Object Reference Variables•15 minutes
- Accessing Object’s Members•15 minutes
- Thinking in Objects•15 minutes
- Instance Variables and Methods•10 minutes
- Static Variables, Constants, and Methods•10 minutes
- Introduction to Program Input and Output•10 minutes
- Program Input•10 minutes
- Interned Strings•10 minutes
- Replacing and Splitting Strings•10 minutes
- Matching, Replacing and Splitting by Patterns•10 minutes
- Convert Character and Numbers to Strings•5 minutes
- Summary•5 minutes
1 assignment•Total 10 minutes
- Module 2 Assess Your Learning•10 minutes
1 app item•Total 65 minutes
- Creating a Java Swing Application•65 minutes
This module represents a crucial transition point in your Java programming journey, where you'll move beyond basic programming concepts to explore more sophisticated data management and visualization techniques. Building upon foundational object-oriented principles, module 3 introduces you to essential tools for organizing, storing, and manipulating collections of data while also teaching you how to model and visualize complex system relationships.
What's included
18 readings1 assignment2 app items
18 readings•Total 240 minutes
- UML (Unified Modeling Language) Class Diagram•10 minutes
- Default Value for a Data Field•10 minutes
- Primitive Data Type vs. Class Types•15 minutes
- Garbage Collections•15 minutes
- Instance Variables and Methods•10 minutes
- Static Variables, Constants, and Methods•10 minutes
- Introduction to Arrays•10 minutes
- Creating Arrays•15 minutes
- Arrays in Memory•15 minutes
- Array Elements and Length•15 minutes
- Out-of-Bound Errors•15 minutes
- Initializing Arrays•15 minutes
- Arrays as Method Arguments•5 minutes
- The ArrayList Class•20 minutes
- Array Lists from/to Arrays•20 minutes
- Max and Min in an Array List•10 minutes
- Introduction to Shuffling an Array List•20 minutes
- Summary•10 minutes
1 assignment•Total 10 minutes
- Module 3 Assess Your Learning•10 minutes
2 app items•Total 90 minutes
- Managing Multiple Objects Part I•30 minutes
- Managing Multiple Objects Part II•60 minutes
Building upon your foundational understanding of classes and objects, this module will take you deeper into the heart of object-oriented programming by exploring how objects interact with methods and how to think systematically about object design. You'll learn about the intricacies of passing objects to methods, understand the crucial differences between primitive and reference type handling, and further explore the principles of encapsulation and abstraction.
What's included
9 readings1 assignment1 app item
9 readings•Total 115 minutes
- Passing Object to Methods•15 minutes
- Generic Example of Passing Objects by Methods•10 minutes
- Array of Objects•15 minutes
- Thinking in Objects•15 minutes
- Case Study: The BMI Class•20 minutes
- Processing Primitive Data Types Values as Objects•15 minutes
- The Static valueOf Methods•10 minutes
- The Methods for Parsing Strings into Numbers•10 minutes
- Summary•5 minutes
1 assignment•Total 10 minutes
- Module 4 Assess Your Learning•10 minutes
1 app item•Total 35 minutes
- Understanding User Interaction Models•35 minutes
In this module we will focus on inheritance, polymorphism, and access modifiers. You'll discover how to create robust class hierarchies using superclasses and subclasses, master the intricacies of constructor chaining, and learn to leverage polymorphism for flexible and maintainable code. Additionally, you'll explore essential Java collections through the ArrayList class and understand how different access modifiers control the visibility and accessibility of your code components. By the end of this module, you'll have a solid foundation in these core OOP concepts that are essential for building sophisticated Java applications.
What's included
24 readings1 assignment4 app items
24 readings•Total 385 minutes
- Introduction to Superclasses and Subclasses•20 minutes
- Is Superclass’s Constructor Inherited?•10 minutes
- Using the Keyword super•10 minutes
- Introduction to Inheritance•10 minutes
- Constructor Chaining•10 minutes
- Introduction to Constructor Invocation in Java Inheritance•60 minutes
- The Impact of a Superclass without no-arg Constructor•20 minutes
- Defining a Subclass•5 minutes
- Overriding Methods in the Superclass•10 minutes
- Overriding vs. Overloading•20 minutes
- The Object Class and Its Methods•20 minutes
- The toString() method in Object Class•20 minutes
- Polymorphism•10 minutes
- Casting Objects•10 minutes
- The instanceof Operator•20 minutes
- The equals Method•10 minutes
- The protected Modifier•15 minutes
- Visibility Modifiers•15 minutes
- The final Modifier•15 minutes
- The ArrayList Class•20 minutes
- Array Lists from/to Arrays•20 minutes
- Max and Min in an Array List•10 minutes
- Introduction to Shuffling an Array List•20 minutes
- Summary•5 minutes
1 assignment•Total 10 minutes
- Module 5 Assess Your Learning•10 minutes
4 app items•Total 145 minutes
- Broker Model•75 minutes
- Understanding Travel Agency Operations•30 minutes
- Understanding Election Processes•20 minutes
- Understanding Election Code•20 minutes
Welcome to Module 6, where you'll dive into abstract classes. In this module, you'll discover how abstract classes serve as blueprints for creating well-structured class hierarchies while enforcing specific implementation requirements in subclasses. Through a deep exploration of abstract methods, instantiation rules, and real-world examples like the Calendar and GregorianCalendar classes, you'll gain a solid understanding of when and how to effectively use abstract classes in your Java applications. This foundational knowledge will enhance your ability to design robust, maintainable code that follows proper object-oriented principles.
What's included
1 video4 readings1 assignment2 app items
1 video•Total 1 minute
- Milestone 2 Video•1 minute
4 readings•Total 35 minutes
- Abstract Method in Abstract Class•10 minutes
- Abstract Class as a Type•10 minutes
- Case Study: Abstract Calendar Class and GregorianCalendar Subclass•10 minutes
- Summary•5 minutes
1 assignment•Total 10 minutes
- Module 6 Assess Your Learning•10 minutes
2 app items•Total 40 minutes
- ProfileWorkarea Example•16 minutes
- Understanding User Profiles and Login Procedures•24 minutes
In this module, you'll step into the role of a software architect designing a comprehensive digital university system that manages students, courses, faculty, and administrative processes. You'll begin by understanding how complex software systems are architected, then apply object-oriented principles to model real-world entities and their relationships using appropriate data structures. As you build this system, you'll learn to delegate responsibilities effectively across components and develop systematic approaches for tracing and debugging complex system execution.
What's included
2 readings1 assignment2 app items
2 readings•Total 12 minutes
- Summary•10 minutes
- Congratulations!•2 minutes
1 assignment•Total 10 minutes
- Module 7 Assess Your Learning•10 minutes
2 app items•Total 80 minutes
- Understanding the University Model•40 minutes
- Understanding the University System Structure•40 minutes
Instructors
Offered by
Explore more from Software Development
- Status: PreviewN
Northeastern University
Course
- Status: Free Trial
- Status: Free TrialU
University of Pennsylvania
Course
- Status: PreviewN
Northeastern University
Course
Why people choose Coursera for their career
Frequently asked questions
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you purchase a Certificate you get access to all course materials, including graded assignments. Upon completing the course, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.
More questions
Financial aid available,
