Should i learn Objective C in 2020 for iOS development?

I'm a beginner in iOS development.I have developed some apps using Swift(UIKit). Now i'm trying to learn Objective C i have previous experience in C,C++.Is it valid to learn Objective C in 2020 or i should stick with Swift alone. Objective C will be supported in future or not.

Accepted Reply

I strongly encourage you to get a reading knowledge of Objective-C. You don’t necessarily have to become an expert in it, but it’s useful to be able to read it because lots of documentation, tutorials, blog posts, and so on assume that.

The good news here is that, if you’re familiar with C-based languages, Objective-C isn’t hard to pick up. It is, essentially, a Smalltalk-style object system grafted on to standard C.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@apple.com"

Replies

I strongly encourage you to get a reading knowledge of Objective-C. You don’t necessarily have to become an expert in it, but it’s useful to be able to read it because lots of documentation, tutorials, blog posts, and so on assume that.

The good news here is that, if you’re familiar with C-based languages, Objective-C isn’t hard to pick up. It is, essentially, a Smalltalk-style object system grafted on to standard C.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@apple.com"
Thanks for your response
If you want to have the most control of all of features and function available, Objective-C is the way to go. Swift was developed for exactly the way it was named, a fast. lazy way to code. You trade off quick coding for detailed control. If you need deep attributes or control, Swift falls short by a long shot.

We have 10's of thousands lines of Objective-C code and they work flawlessly. About the only drawback you will find is that if you are stuck on a problem, most everyone around (on Stack Overflow, etc.) will give answer and examples in Swift. You sort of have to divine the correct syntax in Obj-c.

I'll hire a developer that knows Swift but they won't pass muster if they cannot truly understand the real innards of Objective-C. They just won't last.

The watch, and Apple's first documentation of new features and examples of code in Swift certainly doesn't help.

A good analogy (as I'm rather old) if you want real control of everything in a System 370/z-server mainframe then System 370 assembler is to PL/1 as Objective-C is to Swift.

Dating myself here. And yes, I got started in writing complex and expensive mainframe utility products in the early 80 all in System 370 assembler. No way could you get to the internal system calls, or manipulate down to the word and bit level in the higher level languages. ;)

I bet you know all know why my ID ends in "370". It's where I made all my money in my early years enough to buy my own airplane and startup a few companies. The products sold for 100's of thousands to millions of dollars and the developers got a commission on the GrossSales, not Net, of each of their product sale! With that money we supported the hell out of the customer including flying up to them to personally look at problems. Tell me today which companies will send the original author of the code to the customer to debug an issue.

The parking lot in those days was filled with BMW's and Mercedes. I drove an Explorer because we have lots of dogs so we need a DRV (Dog Relocation Vehicle)! ;)

OK, I've lobbed the hand grenade, go at it folks! LOL


I just get an interview of iOS Engineer today. The company makes video apps, they are curious about memory and performance.
Then I get lots of question about OC, although I'm using more about Swift.

Then, I got lots of questions on Objective-C like MRC, Category, how to locate errors from iOS app crash stack, how to invoke C or C++ in code.

I answered really badly since I get more about Swift, I didn’t realize that Category is extension in Swift and MRC is Capture list in Swift at that time.

Although, the interviewer is nice, he told me that even I hire you now, you will get big difficulties at the first as I get poor knowledge in OC. So if I want to join use, you must learn OC, C++, and understand things like multithread and memory management in OC then you could call us again, we are always opened.

Though Swift get more and more support, libraries, there is still tons of old apps which written in OC need to be maintained. Thus companies will hiring guys who could use OC to maintain their apps, especially the big companies.

Well, I have Swift in belt, published 2 apps in App Store. For now, I get used to the basic grammar. 
The problem I'm facing is I need to learn both Swift and OC now. But I found that there is really less and less community and tutorials about creating apps with OC. It is really hard to find some learning materials about OC from internet. If you guys know some stuff, please give me some links, I appreciate that!