Save this video — free

UNC COMP 301 - F26/Lec 2 - Maven Build; Motivating the Object Oriented Way

Muhammad Sayeed Ghani · 1:13:12 · Watch on YouTube

UNC COMP 301 - F26/Lec 2 - Maven Build; Motivating the Object Oriented Way Watch on YouTube →

Overview

Muhammad Sayeed Ghani demonstrates how Maven turns Java source into a distributable JAR, including how the POM selects the default main class and how users can launch a different class. The lecture then begins a stepwise refactoring of a triangle-area program from static, procedural methods toward object-oriented design, introducing triangle validation, floating-point comparison, abstraction, object-owned state, constructors, and Java name resolution.

Key takeaways

Chapters

0:00 Lecture Plan: Maven Packaging and Object-Oriented Java
3:03 Maven Lifecycle Tasks and the Package Goal
7:24 Building and Launching a Java JAR
14:15 JAR Dependencies and Why Object-Oriented Design Matters
22:05 Triangle Application: Six Coordinates and Named Inputs
26:08 Procedural Triangle Input in Version 01
29:45 Static Methods for Distance and Triangle Classification
36:03 Triangle Inequality and Floating-Point Equality
39:29 Tracking Triangle-Area Averages and Minimums
45:00 Version 04: Procedural Code Uses Static Methods and Locals
48:00 Modeling Triangle as an Abstract Data Type
52:34 Triangle Representations, Interfaces, and Object-Owned Behavior
1:00:00 Triangle Constructors and Assigning Parameters to Fields
1:05:00 Java Name Resolution, `this`, and Object Creation

Keep these chapters and the full searchable transcript in your own library.

Summary, takeaways, and chapters were generated by AI from the video's transcript and may contain errors. The video belongs to its creator, Muhammad Sayeed Ghani.

Want the full transcript?

Save this video in YouTube Collector to get its complete searchable transcript, your own AI summaries, and a library that keeps every video you collect in one place.