- Instructor: Anditya Arifianto, [email protected]
Learn best practices in Object Oriented Programming using Java Programming language
slides : http://anditya.staff.telkomuniversity.ac.id/academic/oop/
Topics include :
- 00 – Introduction to Java
- 01 – Object Oriented Paradigm
- 02 – Class and Object
- 03 – Variable and Reverence
- 04 – Encapsulation
- 05 – Class Relationship
- 06 – Inheritance
- 07 – Polymorphism
- 08 – Abstract and Interface
- 09 – Static and Inner Class
- 10 – Exception Handling
- 11 – Object Persistence
- 12 – Model View Control
- [KUG1C3 - Basic Algorithm and Programming]
- [CSG2A3 - Data Structure and Algorithm]
All assignments are listed within the Course Outline.
- Fork the repository for the exercise/project (found under github.com/OOP-ADF).
- Clone the repository to your computer.
- Open the README.md files to read the assignment instructions
- Modify the code files to complete your solution
- Make sure all of your code is committed.
- Push/sync up to GitHub.
- Create a pull request on the original repository. All assignments are due at the start of the following class, unless otherwise specified.
- You can continue to push fixes and improvements until the close date (listed in Classes) – just add a comment in the pull request to let me know it's been updated.
- On the due date I will close the pull request and send you a message confirmation for your assignment
These apply to real life, as well.
- Must apply "good programming style" learned in class
- Functions should be "short" (see Sandi Metz's rules for developers)
- Optimize for readability
- Any borrowed code must be properly annotated
- Bonus points for:
- Creativity (as long as requirements are fulfilled)
- Introduction
- Setup
- GitHub workflow
- Walk through workflow
- to be added later
- Git and GitHub
- GitHub Pages
- to be added Later
New York University takes plagiarism very seriously and regards it as a form of fraud. The definition of plagiarism that has been adopted by the School of Continuing and Professional Studies is as follows: "Plagiarism is presenting someone else's work as though it were one's own. More specifically, plagiarism is to present as one's own words quoted without quotation marks from another writer; a paraphrased passage from another writer’s work; or facts or ideas gathered, organized, and reported by someone else, orally and/or in writing. Since plagiarism is a matter of fact, not of the student's intention, it is crucial that acknowledgement of the sources be accurate and complete. Even where there is not a conscious intention to deceive, the failure to make appropriate acknowledgement constitutes plagiarism. Penalties for plagiarism range from failure for a paper or course to dismissal from the University.
Reuse and building upon ideas or code are major parts of modern software development. As a professional programmer you will never write anything from scratch. This class is structured such that all solutions are public. You are encouraged to learn from the work of your peers. I won't hunt down people who are simply copying-and-pasting solutions, because without challenging themselves, they are simply wasting their time and money taking this class.
Please respect the terms of use and/or license of any code you find, and if you reimplement or duplicate an algorithm or code from elsewhere, credit the original source with an inline comment.
This work and all other materials under https://github.com/adf-asd are licensed under a Creative Commons Attribution 4.0 International License.