What is OOP?

What is OOP?

Object oriented programming (OOP) is one of the most revolutionary things about programming, it's what enables software engineering to be able to solve real-world problems by being able to create abstract versions of concepts and actual objects.

When stepping into backend software development, OOP is one of the first things one has to learn. Surprisingly OOP is also one of the reasons why backend development is perceived to be much harder than frontend development, there is no limit to what can be created using OOP (once you can wrap your head around it). Therein lies the problem, the average person who attempts backend development is overwhelmed by the sheer magnitude and complexity of OOP.

If you're a visual person who likes to be able to see his or her work in progress you're going to find backend challenging as you can't exactly see the objects you're creating, OOP is one of the reasons why people perceive frontend development to be easier than backend development, if something doesn't work in frontend development you can see that it doesn't work in real-time, if something doesn't work and isn't caught by compile-time you're going to have to be very good at debugging to find the error in backend development.

Backend development (through OOP) takes you closer to the machine, you'll be forced to learn other guiding principles like the SOLID principles as well as other mind blowing concepts. If you're interested in backend you have to be willing to persevere through sheer force of will or you might find yourself giving up.