Krótkie wprowadzenie do programowania obiektowego

Jako statystycy i naukowcy zajmujący się danymi staramy się tworzyć systemy, które dostarczają cennych informacji. Aby to osiągnąć, zwykle używamy dwóch narzędzi – matematyki i komputerów. Zwykle, gdy ludzie z matematycznym doświadczeniem są wprowadzani do programowania, są wprowadzani poprzez podejście funkcjonalne, co oznacza, że ​​myślą w kategoriach algorytmów z wejściami i wyjściami, które są implementowane jako funkcje. Ten sposób pracy jest intuicyjny, jeśli wywodzisz się z matematyki i nie masz do czynienia z abstrakcjami wysokiego poziomu, i to jest sposób, w jaki pracowaliśmy do tej pory w całej książce. Ta sekcja pokaże inny sposób programowania zwany programowaniem obiektowym. Programowanie obiektowe i model obiektowy to potężne i jednoczące idee w wielu dziedzinach, które można znaleźć w większości popularnych języków programowania, przy czym R nie jest wyjątkiem. Z mojego doświadczenia wynika, że ​​ludzie, którzy nie mieli świadomego doświadczenia z programowaniem obiektowym, zwykle uważają, że jest to zagmatwane i nie rozumieją jego potencjału. Uważają, że jest to bardziej kłopotliwe niż ułatwienie i myślą, że przeszkadza im to podczas pisania kodu. W tym rozdziale postaramy się wydestylować paradygmat obiektowy w sposób zrozumiały dla osób, które czują się komfortowo z podejściem funkcjonalnym (niekoniecznie z programowaniem funkcjonalnym), a także pokażemy, jak wdrożyć mały obiektowy system, który stale pobiera dane na żywo z rynków kryptowalut i portfeli. Zanim zaczniemy wdrażać taki system, musimy wprowadzić koncepcje, które będą używane w dalszej części przykładu, w tym w dwóch kolejnych rozdziałach. W kolejnych akapitach znajdziesz bardzo ogólne opisy pojęć stojących za modelem obiektowym, który jest zaimplementowany w programowaniu obiektowym, a także wyjaśnienia, które, miejmy nadzieję, przekonają Cię, że ten sposób programowania może być bardzo skuteczny w przypadku niektórych problemów.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *