A Concise Guide to Object Orientated Programming
()
About this ebook
A concise beginners guide to the theory of object orientated programming. This book covers the basic theory and more advanced best practices, patterns and advanced concepts such as Publish/Subcribe, CQRS, Dependency Injection and a brief introduction to MVC,
Read more from Alasdair Gilchrist
Spreadsheets To Cubes (Advanced Data Analytics for Small Medium Business): Data Science Rating: 0 out of 5 stars0 ratingsREST API Design Control and Management Rating: 4 out of 5 stars4/5Google Cloud Platform for Data Engineering: From Beginner to Data Engineer using Google Cloud Platform Rating: 5 out of 5 stars5/5Google Cloud Platform an Architect's Guide Rating: 5 out of 5 stars5/5Concise Guide to DWDM Rating: 5 out of 5 stars5/5Google Cloud Platform - Networking Rating: 0 out of 5 stars0 ratingsSix Sigma Yellow Belt Certification Study Guide Rating: 0 out of 5 stars0 ratingsConcise Guide to OTN optical transport networks Rating: 4 out of 5 stars4/5The Certified Ethical Hacker Exam - version 8 (The concise study guide) Rating: 3 out of 5 stars3/5A Practical Guide Wireshark Forensics Rating: 5 out of 5 stars5/5Supply Chain 4.0: From Stocking Shelves to Running the World Fuelled by Industry 4.0 Rating: 3 out of 5 stars3/5An Executive Guide to Identity Access Management - 2nd Edition Rating: 4 out of 5 stars4/5The Layman's Guide GDPR Compliance for Small Medium Business Rating: 5 out of 5 stars5/5A Concise Guide to Microservices for Executive (Now for DevOps too!) Rating: 1 out of 5 stars1/5Concise and Simple Guide to IP Subnets Rating: 5 out of 5 stars5/5PSD2 - Open Banking for DevOps(Sec) Rating: 5 out of 5 stars5/5ChatGPT Will Won't Save The World Rating: 0 out of 5 stars0 ratingsDigital Success: A Holistic Approach to Digital Transformation for Enterprises and Manufacturers Rating: 0 out of 5 stars0 ratingsAn Introduction to SDN Intent Based Networking Rating: 5 out of 5 stars5/5Tackling Fraud Rating: 4 out of 5 stars4/5A Last Minute Hands-on Guide to GDPR Readiness Rating: 0 out of 5 stars0 ratingsConcise Guide to CompTIA Security + Rating: 3 out of 5 stars3/5The Concise Guide to the Internet of Things for Executives Rating: 4 out of 5 stars4/5GDPR for DevOp(Sec) - The laws, Controls and solutions Rating: 5 out of 5 stars5/5FinTech Rising: Navigating the maze of US & EU regulations Rating: 5 out of 5 stars5/5Why Industry 4.0 Sucks! Rating: 0 out of 5 stars0 ratingsThe Concise Guide to SSL/TLS for DevOps Rating: 5 out of 5 stars5/5SRS - How to build a Pen Test and Hacking Platform Rating: 2 out of 5 stars2/5A concise guide to PHP MySQL and Apache Rating: 4 out of 5 stars4/5
Related to A Concise Guide to Object Orientated Programming
Related ebooks
Java for Beginners: A Crash Course to Learn Java Programming in 1 Week Rating: 5 out of 5 stars5/5Introduction to Algorithms & Data Structures 1: A solid foundation for the real world of machine learning and data analytics Rating: 0 out of 5 stars0 ratingsIntroduction to DBMS: Designing and Implementing Databases from Scratch for Absolute Beginners Rating: 0 out of 5 stars0 ratingsJAVA for Beginner's Crash Course: Java for Beginners Guide to Program Java, jQuery, & Java Programming Rating: 4 out of 5 stars4/5The basic concepts of OOP in C#: Learn conceptually in simple language Rating: 0 out of 5 stars0 ratingsObject-Oriented JavaScript: Create scalable, reusable high-quality JavaScript applications, and libraries Rating: 3 out of 5 stars3/5Python: Programming for Intermediates: Learn the Fundamentals of Python in 7 Days Rating: 4 out of 5 stars4/5Learn Java: A Crash Course Guide to Learn Java in 1 Week Rating: 3 out of 5 stars3/5Learning Swift Rating: 5 out of 5 stars5/5Python for Developers Rating: 0 out of 5 stars0 ratingsIntroduction to Algorithms & Data Structures 2: A solid foundation for the real world of machine learning and data analytics Rating: 0 out of 5 stars0 ratingsPython: Programming For Intermediates: Learn The Basics Of Python In 7 Days! Rating: 0 out of 5 stars0 ratingsObject-Oriented JavaScript Rating: 4 out of 5 stars4/5Learning Object-Oriented Programming Rating: 0 out of 5 stars0 ratingsMastering C# 8.0: Master C# Skills with Hands-on Code Examples (English Edition) Rating: 0 out of 5 stars0 ratingsGit Essentials Rating: 4 out of 5 stars4/5Java: Best Practices to Programming Code with Java Rating: 0 out of 5 stars0 ratingsC# Functions and Tutorial - 50 Examples Rating: 0 out of 5 stars0 ratingsMastering Objectoriented Python Rating: 5 out of 5 stars5/5Data Structures and Algorithm Analysis in Java, Third Edition Rating: 4 out of 5 stars4/5Programming in an Object-Oriented Environment Rating: 5 out of 5 stars5/5Get Programming: Learn to code with Python Rating: 0 out of 5 stars0 ratingsC++ Learn in 24 Hours Rating: 0 out of 5 stars0 ratingsUML: A Beginner's Guide Rating: 3 out of 5 stars3/5Python 3 Object Oriented Programming Rating: 4 out of 5 stars4/5Python GUI Programming Cookbook - Second Edition Rating: 5 out of 5 stars5/5Python 3 Object-oriented Programming - Second Edition Rating: 4 out of 5 stars4/5Software Architecture with Python Rating: 0 out of 5 stars0 ratings
Databases For You
Blockchain Basics: A Non-Technical Introduction in 25 Steps Rating: 5 out of 5 stars5/5Grokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5Learn SQL in 24 Hours Rating: 5 out of 5 stars5/5Business Intelligence Guidebook: From Data Integration to Analytics Rating: 4 out of 5 stars4/5100+ SQL Queries T-SQL for Microsoft SQL Server Rating: 4 out of 5 stars4/5Practical Data Analysis Rating: 4 out of 5 stars4/5Relational Database Design and Implementation Rating: 5 out of 5 stars5/5SQL QuickStart Guide: The Simplified Beginner's Guide to Managing, Analyzing, and Manipulating Data With SQL Rating: 4 out of 5 stars4/5Learning PostgreSQL Rating: 1 out of 5 stars1/5Learn Git in a Month of Lunches Rating: 0 out of 5 stars0 ratingsExcel 2021 Rating: 4 out of 5 stars4/5Data Governance: How to Design, Deploy and Sustain an Effective Data Governance Program Rating: 4 out of 5 stars4/5COMPUTER SCIENCE FOR ROOKIES Rating: 0 out of 5 stars0 ratingsQuery Store for SQL Server 2019: Identify and Fix Poorly Performing Queries Rating: 0 out of 5 stars0 ratingsBehind Every Good Decision: How Anyone Can Use Business Analytics to Turn Data into Profitable Insight Rating: 5 out of 5 stars5/5SQL Clearly Explained Rating: 5 out of 5 stars5/5Python Projects for Everyone Rating: 0 out of 5 stars0 ratingsBeginning Microsoft SQL Server 2012 Programming Rating: 1 out of 5 stars1/5The AI Bible, Making Money with Artificial Intelligence: Real Case Studies and How-To's for Implementation Rating: 4 out of 5 stars4/5The Data and Analytics Playbook: Proven Methods for Governed Data and Analytic Quality Rating: 5 out of 5 stars5/5SQL: Practical Guide for Developers Rating: 2 out of 5 stars2/5Learn SQL Server Administration in a Month of Lunches Rating: 0 out of 5 stars0 ratingsBeginning Microsoft Power BI: A Practical Guide to Self-Service Data Analytics Rating: 0 out of 5 stars0 ratingsAccess 2019 For Dummies Rating: 0 out of 5 stars0 ratingsArtificial Intelligence for Fashion: How AI is Revolutionizing the Fashion Industry Rating: 0 out of 5 stars0 ratingsBuilding a Scalable Data Warehouse with Data Vault 2.0 Rating: 4 out of 5 stars4/5Access 2010 All-in-One For Dummies Rating: 4 out of 5 stars4/5
Reviews for A Concise Guide to Object Orientated Programming
0 ratings0 reviews
Book preview
A Concise Guide to Object Orientated Programming - alasdair gilchrist
Object Orientated Programming
Overview of Object Orientated Programming (OOP)
So, what is the difference in viewpoint?
So what is an Object?
Objects
Class
The Four Concepts of OOP
Encapsulation
Abstraction
Inheritance
Polymorphism
Method Overloading
Operator Overload
Method Over-Riding
OOP Design Principles
S.O.L.I.D
SRP - The Single Responsibility Principle
OCP - The Open Closed Principle
LSP - The Liskov Substitution Principle
ISP - The Interface Segregation Principle
DIP - The Dependency Inversion Principle
Summary
Part II
Publish/Subscribe Design Pattern.
Part III
Command Query and Responsibility Segregation Pattern (CQRS)
CQRS Overview
Segregation and Synchronization
Why you should use a CQRS pattern
Scalability
Reduced Complexity
Flexibility
Business Focus
Task Based UI’s
Collaboration
Stale Data
Rule of Thumb
When not to use CQRS
Summary
Part IV
Dependency Injection
What is a Dependency?
What is Dependency Injection?
The Goals of Dependency Injection
Where and When to Use D.I
What is a Dependency Injection Container?
The benefits of Dependency Injection
When to use Dependency Injection Container
When not to use D.I Container
Part V
ASP.NET MVC
Overview
MVC Design Patterns
MVC Framework
MVC Typical Applications & Advantages
Key Features of MVC
Differences between MVC and MVP and MVVM
Typical Uses
Object Orientated Programming
Overview of Object Orientated Programming (OOP)
OOP is a design philosophy, which as the name suggests, focuses on objects rather than procedures or functions. The concept is that programmers relate real world things to small manageable pieces of code called objects. OOP takes a different perspective to problem solving than procedural languages such as C or functional languages such as Pascal.
So, what is the difference in viewpoint?
Well, in a procedural program, the code is a list of tasks, with the code and data separated, it may use subroutines to make it modular but typically, it is a long list of procedures. The difference with OOP, is that it is down to the separation of code and data. In a procedural language, such as C, a programmer defines certain steps of logic to apply to data, hence the requirement for a long list of procedural steps. However, in OOP, the focus is on an entity called an object. This object, modeled on a real world thing or entity, has been constructed in the programmer’s imagination to relate to a conceptual thing, it doesn’t have to be a physical thing, it could just as well be a procedure or an event. By taking this approach and by seeing how such conceptual entities interact and mimic reality, it is possible to construct a logical program that makes sense in the real world.
So what is an Object?
An object in OOP is a programmable module, which a programmer constructs in order to mimic, describe, and to