Objective-C — języki programowania w pigułce

6 grudnia 2021

Język programowania Objective-C to jeden z najstarszych języków, które są używane w branży IT. Stanowi rozszerzenie języka C z możliwością programowania obiektowego wzorowanego przede wszystkim na Smalltalku. Powstał na początku lat 80-tych ubiegłego stulecia w pewnej firmie informatycznej i jest ogólnego zastosowania, ale przede wszystkim stosuje go firma Apple do swoich systemów operacyjnych takich jak OS X i iOS oraz interfejsów API: Cocoa i Cocoa Touch.

Analizując składnię tego języka, wymienić należy dwa rozszerzenia, które wchodzą w interakcję z językiem C, a mianowicie kwadratowe nawiasy służące do wywoływania metod oraz znak @ umożliwiający wywołanie definicji deklarowanych właśnie dla Objectivie-C. Z tego właśnie rozwiązania skorzystało wielu programistów. Zostały wprowadzone także specjalne typy, które są unikalnymi referencjami dla obiektu utworzonego już z języka C.

Objecitive-C jest wzorowany również na Smalltalku gdzie składnie są bardzo zbliżone m.in. przez charakterystyczne wielosłowne metody. Należy pamiętać, że w przeciwieństwie do Smalltalka obiektem pozostaje tylko to, co jest dostarczone przez nakładkę. Warto dodać, że Objectivie-C nie ma standardu języka, ponieważ dwie koncepcje Apple i Steostone rozwijają się niezależnie.

 

Starszy, ale czy zapomniany?

W 2014 roku Objectivie-C pozostawał jednym z trzech najpopularniejszych języków programowania na świecie. Kiedy wszedł na rynek język Swift, developerzy chętnie sięgnęli po ten drugi, co zaowocowało tym, że oba te języki uplasowały się dalej na liście rankingowej. Mimo tego, że od ponad 4 lat Objecitvie-C nie jest już głównym językiem Apple, to wciąż jest efektywnie wykorzystywany.

Zapewne wynika to z faktu, iż napisanie od nowa większości kodów w już istniejących projektach byłoby kosztowne i nie opłacalne, słusznym zatem wydaję się udostępnić możliwość korzystania zarówno ze starego jak i nowego standardu. Jeśli prześledzimy ofert pracy dla iOS developera to zapewne zauważy się wymóg znajomości zarówno Swifta jak i Objective-C. Wynika to zapewne z tego, że w wielu projektach pracuje się na obu tych językach i cześć powstaje w Swift, a starsze części kodu utrzymywane są w Objective-C.

Składnia Objective-C i podobieństwo do innych języków

Kodujący w języku Swift zauważają ogromne podobieństwo do Objecitive-C i jest to słuszne spostrzeżenie, gdyż Swift powstał na podwalinach tego języka. Są w nim zachowane takie rozwiązania jak ARC oraz lambda domknięcia. Istnieją też narzędzia wywodzące się bezpośrednio z języka C, czyli wskaźniki, zarządzania pamięcią i inne. Wiadome jest, że część starego kodu jest nadal utrzymywana w tym języku, ponieważ nieopłacalne byłoby przepisanie wszystkiego od nowa. Jest również ogrom bibliotek dostępnych do użytku dla programistów. Wystarczy przejrzeć listę bibliotek dostępnych na managerze zależności CocoaPods. Jeśli w miarę dokładnie znasz Swift, to zapewne wiele rozwiązań w Objective-C będzie dla Ciebie całkiem proste.

Zakładając, że znasz język C lub C++ proste się wydadzą kwestie z zarządzaniem pamięcią. Jeśli zatem wszystkie tajniki i różnice będą Ci znane, wtedy z łatwością przyzwyczaisz się do składni i z łatwością możesz rozpocząć, wykorzystywać narzędzia Objective-C w powierzonych projektach.

 

Czy warto uczyć się Objective-C, choć jest to stary język?

Wszystko zależy od celu tej edukacji oraz pozycji wyjściowej samego programisty. Dla osoby, która chce nauczyć się programowania na iOS lub inny system Apple wskazane jest poświęcić 100% uwagi na Swift 4. Jeśli znasz już Swift 4 to dobry moment, żeby wziąć się za Objecitive-C. Przez wiele lat był on wykorzystywany do tworzenia oprogramowania oraz aplikacji dla firmy Apple. Jednocześnie powstała cała plejada nowych frameworków i bibliotek. Nawet obecnie większość aplikacji w App Store stanowią te napisane w Objecitive-C.

 

Podsumowując

Objecitive-C jest generalnie prostym językiem komputerowym dającym możliwość zaawansowanego programowania obiektowego. To zestaw rozszerzeń standardowego języka ANSI C a jego dodatki do C oparte są głównie na Smalltalk jednym z pierwszych języków. Język, o którym dziś mówimy, został zaprojektowany, aby dać C pełne możliwości programowania obiektowego i robić to w sposób prosty i bezpośredni. Osoby, które chcą programować pod systemy Apple, powinny się go nauczyć, choć nie w pierwszej kolejności

Pozostałe wpisy

Fizyka kwantowa, kilka faktów które warto znać

Fizyka kwantowa, kilka faktów które warto znać

Ostatnio słowo kwantowy staje się coraz bardziej popularne. Mamy już kwantowy Internet, kwantowy procesor, kwantowy komputer, a nawet teleportację kwantową. Mechanika kwantowa analizuje świat mikroskopowy, obiekty o małych masach i gabarytach, nie tylko atomy, ale...

czytaj dalej
Komputer kwantowy, co to takiego

Komputer kwantowy, co to takiego

Działanie tego komputera jak już sama nazwa wskazuje opiera się o fizykę kwantową. Przesyłanie danych w takich urządzeniach odbywa się za pomocą kubitów a nie bitów jak w klasycznych komputerach. Co zatem jest innego w tych komputerach w stosunku do starych rozwiązań...

czytaj dalej
Co to jest sieć 5G

Co to jest sieć 5G

5G to sieć komórkowa piątej generacji. Dzięki niej można cieszyć się megaszybkim Internetem mobilnym oraz możliwością rozwoju wirtualnej rzeczywistości. Technologia wciąż pędzi do przodu, korzystamy z ogromnej ilości urządzeń podłączonych do sieci. To już nie tylko...

czytaj dalej