How Object oriented programming approach can be utilised in data science domain?
This is a really interesting question about the motivation behind Object orientated programming.
The main reason that makes OOP particularly attractive is the reusability of functions and objects which you can reuse in different analysis.
For example, for one NLP model, you create a function which cleans text (returns lowercase text, free from stopwords). A few days later you want to generate another NLP model which preprocesses text in the same way as your previous NLP model. Here you can put the clean text method instead a Preprocessing class and reuse the clean text method to clean the text in the same way as before.
Another reason behind OOP is its legibility. I find it is noticeably easier to track where bugs arise in OOP code than functional programming code. This, in turn, makes it easier to test and debug separate components within a class.
This is my take on it, and I am sure everyone has their own way of programming that suits you and the teams you work in.
I look forward to reading other people's views/answers to this query.