Jelita obiektów OOP składają się z programowania proceduralnego.
Jeśli nie możesz wykonać pętli for, użyj poprawnie wskaźników, zadeklaruj swoje typy i funkcje, że nie będziesz w stanie pisać interfejsów dla swoich klas, a tym bardziej sprawić, że wnętrze zrobi coś, co warto zrobić.
I tak naprawdę nie uczyłbyś się OOP w klasie wprowadzającej, byłaby to po prostu składnia - przeskakiwanie prosto do OOP sprawiłoby, że rzeczy byłyby trudniejsze do uchwycenia (na początku) niż już są.
OOP nie polega na deklarowaniu składni do tworzenia klas, dotyczy struktur danych, wzorców projektowych, polimorfizmu, dziedziczenia i kompozycji.
Aby zrobić wszystkie te rzeczy, które musisz znać programowanie proceduralne, coś, co łatwo zrobić w C. Możesz przenieść większość wszystkiego, czego uczysz się w C, do Javy lub C ++ i tak, być może będziesz musiał przemyśleć niektóre rzeczy, które wziąłeś za pewnik w C, ALE ... Musisz znać gramatykę (gdzie jesteś we wprowadzeniu C), aby pisać zdania (musisz pisać procedury, aby zdefiniować interfejsy), a następnie akapity (musisz znać struktury danych), a następnie znać pewne wzorce projektowe (tragedia, komedia, wady bohater, ich interakcje i kiedy ich nie używać), zanim będzie można napisać kompletne powieści (kompletny system OOP).
Gdybym był tobą chciałbym podnieść niektóre z następujących książek: Język ANSI C , Java Programming Language , wzorce projektowe , Gang of Four i wzoru kreskowania . Zdecydowanie wybrałbym kopię The C Programming Language, gdybym poważnie mówił o C / C ++.
Jeśli chcesz przejść na całość Java (i zrobić to za $), wybierz kilka książek o wzorcach projektowych Java i jak używać Java z serwerami WWW Apache i Tomcat oraz kilka książek o programowaniu w bazie danych SQL. Przykro mi, ale Java ma w historii mnóstwo dziur w zabezpieczeniach, co sprawia, że jest to tak samo bolesne jak Windows, aby powstrzymać się od zrootowania serwera lub wstrzyknięcia baz danych SQL.
Powinieneś również poświęcić trochę czasu na naukę SQL, Oracle MySQL Postgresql i MSSQL mają ze sobą wiele wspólnego pod względem składni, ale gdybym musiał po prostu wybrać jeden dla siebie, wybrałbym Postgresql tylko dlatego, że ma licencję BSD zamiast GPL (powinieneś sprawdzić porównanie i kontrast również z licencjami GPL / BSD)