Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/flexycode/ccobjpgl-java
This repository is intended for CCOBJPGL COM24P1 in JAVA - Professor Jay Abaleta
https://github.com/flexycode/ccobjpgl-java
abstraction encapsulation inheritance java oop oop-principles oops-in-java polymorphism
Last synced: 6 days ago
JSON representation
This repository is intended for CCOBJPGL COM24P1 in JAVA - Professor Jay Abaleta
- Host: GitHub
- URL: https://github.com/flexycode/ccobjpgl-java
- Owner: flexycode
- Created: 2024-01-29T15:23:23.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-02T17:15:47.000Z (3 months ago)
- Last Synced: 2024-11-02T18:23:26.282Z (3 months ago)
- Topics: abstraction, encapsulation, inheritance, java, oop, oop-principles, oops-in-java, polymorphism
- Language: Java
- Homepage: https://github.com/flexycode/CCOBJPGL
- Size: 7.84 MB
- Stars: 6
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 💫 CCOBJPGL - Object Oriented Programming in Java
### Name: [Jay Arre Talosig](https://github.com/flexycode)
### Subject & Section: CCOBJPGL - COM24P1
### Professor: Jay D. Abaleta
### No. of Units: 3.0 Units
### Prerequisite: [CCPRGG2L Intermediate Programming](https://github.com/flexycode/CCPRGG2L_INTERMEDIATE_PROGRAMMING)
### Final Project Link: [CCOBJPGL_FINAL_PROJECT](https://github.com/flexycode/CCOBJPGL_FINAL_PROJECT)## 🧠 Overview
This repository contains code and resources related to the "OBJECT-ORIENTED PROGRAMMING" course in Java. The code is identified by the tag "CCOBJPGL".
## 📋 Table of Contents
- [Introduction](#-introduction)
- [Usage](#-usage)
- [KeyFeatures](#-key-features)
- [Folder Structure](#-folder-structure)
- [Contributing](#-contributing)
- [License](#-license)
- [GitHub Repository](#-github-repository)## 🛸 Introduction
Welcome to the "CCDATRCL - Data Structure and Algorithm" repository! This collection of code and resources is dedicated to the educational exploration of Data Structures and Algorithms.
The "DATA STRUCTURE AND ALGORITHM" course is designed to equip students with a foundational understanding of key data structures and algorithms, essential in modern software development.
Data structures provide a way to organize and store data efficiently, while algorithms offer systematic approaches to solve computational problems. By studying data structures and algorithms, students gain the ability to design efficient solutions, analyze their performance, and optimize their code.
This repository serves as a practical companion to the course, providing students with hands-on examples, exercises, and project templates to solidify their grasp of data structures and algorithms and cultivate effective problem-solving skills.
## 👷 Usage
The purpose of the "OBJECT-ORIENTED PROGRAMMING" course is to empower students with the skills necessary to design and build robust, scalable, and maintainable software systems.
In an increasingly complex software landscape, OOP serves as a foundational paradigm that enables developers to create modular, adaptable, and extensible code. By the end of this course, students are expected to comprehend the principles of OOP, apply them to solve real-world problems, and appreciate the significance of object-oriented design in the development lifecycle.
The hands-on experience gained from working with this repository's code samples and projects aims to reinforce theoretical knowledge and prepare students for practical challenges in the realm of software development.
## 🚀 Key Features
- **Educational Resources:** Find code snippets, examples, and projects that illustrate key OOP concepts covered in the course.
- **Hands-On Exercises:** Engage in practical exercises to reinforce theoretical knowledge and enhance your programming skills.
- **Project Templates:** Use provided project templates to kickstart your assignments and projects for the course.## 📈 [Lesson](#lesson)
### CCOBJPGL Table lecture
#### Course Outline and Timeframe
#### Subject for changes -delete this comment after you change the table| Week No. | Date Coverage | Topic | Reference |
|----------|---------------|------------------------------------------------------|-----------------------------------------------------------------------------------------------------|
| 1 | August 10 | Class Orientation | Course Syllabus |
| | | - Ø University Mission & Vision | |
| | | - Ø College Mission & Vision | |
| | | - Ø Course Syllabi | |
| | | - Ø Lab Guidelines and Safety Review | |
| 2 | August 17 | Review of OOP Basics | Overview of Inheritance, Interfaces and Abstract classes in Java https://medium.com/@isaacjumba/overview-of-inheritance-interfaces-and-abstract-classes-in-java-3fe22404baf8 |
| 3 | August 24 | Encapsulation, Inheritance, Polymorphism | Overview of Inheritance, Interfaces and Abstract classes in Java https://medium.com/@isaacjumba/overview-of-inheritance-interfaces-and-abstract-classes-in-java-3fe22404baf8 |
| | August 31 | Forms of Inheritance | Overview of Inheritance, Interfaces and Abstract classes in Java https://medium.com/@isaacjumba/overview-of-inheritance-interfaces-and-abstract-classes-in-java-3fe22404baf8 |
| 4 | August 7 | Programming by Contract | Introduction to contract programming https://www.hillelwayne.com/post/contracts/ Programming by contract http://www.cs.unc.edu/~stotts/COMP204/contract.html |
| 5 | September 14 | Subtyping versus Subclassing | https://courses.cs.washington.edu/courses/cse331/16wi/L12/L12-Subtyping.pdf |
| 6 | September 21 | Double dispatch | https://ardalis.com/double-dispatch-in-c-and-ddd Multiple dispatching in Python https://python-3-patterns-idioms-test.readthedocs.io/en/latest/MultipleDispatching.html |
| 7 | September 28 | Multiple Inheritance | Multiple Inheritance: https://www.python-course.eu/python3_multiple_inheritance_example.php Multiple inheritance in Java: https://howtodoinjava.com/oops/multiple-inheritance-in-java/ |
| 8 | October 5 | Formal Models of OOP System | UML tutorial: http://ima.udg.edu/~sellares/EINF-ES2/uml2_diagrams.pdf |
| 9 | October 12 | Unified modeling language and formal specification languages | UML Class diagram tutorial: https://medium.com/@smagid_allThings/uml-class-diagrams-tutorial-step-by-step-520fd83b300b |
| 10 | October 19 | Design Patterns ( Creational ) | Design pattern tutorial: Down Below |
| 11 | October 26 | Design Patterns ( Structural, Behavioral ) | https://www.c-sharpcorner.com/UploadFile/dev4634/design-patterns-tutorial-for-the-beginners/ |
| 12 | October 26 | Design Patterns ( Model-View-Controller ) | Design Patterns https://www.startertutorials.com/patterns/ |
| 13 | November 2 | Course Synthesis & Final Examination | |## 📜 Folder Structure
```bash
This is for reference only ( subject-for-changes)
/
|-- src/ # Source code files
|-- docs/ # Documentation files
|-- data/ # Data files, if any
|-- tests/ # Test cases
|-- LICENSE # License information
|-- README.md # This README file
```
#### 📓 SUGGESTED READINGS AND REFERENCES* Java Programming Eight Edition, Farrell, Joyce, 2016
* Object-Oriented Data Structures Using Java Fourth Edition, Dale, Nell,2018
* Java : The Complete Reference Tenth Edition, Schildt, Herbert, 2018
* Introduction To Programming in Java: An Interdisciplinary Approach Second Edition, Sedgewick, Robert, 2017
* Core Java: Volume II Advanced Features Tenth Edition, Hortsmann, Cay S., 2017
* Java Precisely Third Edition, Peter Sestoft, 2016#### 💻 COURSE REQUIREMENTS
➡️ Assignments, Laboratory Exercises, Long Exam, Final Exam
#### 💻 GRADING SYSTEM
➡️ Other Learning Activities (20%)
➡️ (Assignment, Laboratory Exercise, Seatwork, Recitations, others)
➡️ Long Exams (40%)
➡️ Final Exam/Project (40%)
# 🏆 Contributing
```bash
# Coming Soon
$ command_to_run_code
```# 🔑 License
➡️ This lecture is licensed under the National University of Manila License.
#### 🔒 National University of Manila License
The National University of Manila License grants permission to students of the National University of Manila to use, modify, and distribute this project for educational purposes within the scope of their coursework and assignments.
#### 📜 Usage
* You may use this project as a reference or learning material for your studies at the National University of Manila.
* You may modify the project to suit your educational needs and requirements.
* You may share the project with your fellow students or instructors for educational purposes.#### 🕵️ Restrictions
* You may not use this project for commercial purposes.
* You may not redistribute or publish this project outside the National University of Manila without explicit permission.
## 🧰 GitHub Repository```bash
$ Kindly check the repository folder for codes
```# 🔭 Acknowledgements
### ✨ Professor Jay A. Abaleta
Professor Jay Abaleta is a Senior Software Engineer and esteemed faculty member at National University. With a strong background in teaching the core principles and advanced concepts of Java, he is highly regarded in the field. In addition to his role at National University, Prof. Abaleta also serves as a Professor at Adamson University and as a lecturer of IT/CS at Arba Minch University, sharing his expertise with students worldwide. Having studied at St. Paul University Philippines, Prof. Abaleta brings a wealth of knowledge and experience to his teaching. Known for his friendly and approachable nature, Prof. Abaleta fosters a positive learning environment where students thrive. His dedication and passion for teaching have made him a beloved professor among his students.### ✨ Give credit to where it's due
I want to acknowledge that I have incorporated some of my professor's files and code into my work.# 💬 FAQ
```bash
# Set of example question and answer
$ Coming Soon...
```#### Feel free to use this modified template for your README file. You can fork it directly into your repository's file.
# 📫 Changelogs
```bash
## [8.0.5] - 2024-08-10
### Added
- ✨ Upload the course Sylabus
- ✨ Create CCOBJPGL-JAVA Repository
- ✨ Add Lecture Module No. 1 : Introduction to OOP### Changed
- ✨ Rename Folder### Fixed
- ✨ Fix Documentation## [8.1.1] - 2024-08-17
### Added
- ✨ Add Activity Week 1 : Object and Classes
- ✨ Add Lecture Module No. 2 : JAVA Object and Classes## [8.2.1] - 2024-08-24
### Added
- ✨ Add Activity Week 2 :## [8.3.2] - 2024-08-31
### Added
- ✨ Add Activity Week 3
- ✨ Add Lecture Module No. 3 : JAVA Inheritence and Polymorphism## [8.3.2] - 2024-09-14
### Added
- ✨ Add Activity Week 4
- ✨ Add Lecture Module No. 4 : JAVA OOP Constructor Overloading and Overriding## [8.3.2] - 2024-09-28
### Added
- ✨ Add Activity Week 5
- ✨ Add Lecture Module No. 5 : JAVA Design and Programming by Contracts## [8.3.2] - 2024-10-05
### Added
- ✨ Add Lab Activity Week 6 : Abstraction and Interface
- ✨ Add Lecture Module No. 6 : JAVA Abstraction and Interface## [8.3.2] - 2024-10-12
### Added
- ✨ Add Lab Activity Week 7 : Coming Soon
- ✨ Add Lecture Module No. 7 : Coming Soon## [8.3.2] - 2024-11-03
### Added
- ✨ Add Final Exam Case Study Project Repository Link
- ✨ Add Case Study SDLC PDF file
- ✨ Update README.md🧊 Object Oriented Programming
```#### [Back to Table of Content](#-ccobjpgl---object-oriented-programming-in-java)
---
![]()
![]()
![]()
![]()