Swift or Objective-C in iOS Development

twitter logo github logo ・1 min read

I'm just getting started learning how to build an app for iOS. I'm beginner on this, so I try to make a simple iOS app with Swift that display "Hello World" on screen. And I feels like iOS Developer now ✌️

As beginner, should I learn Objective-C also or only using Swift for iOS Development?

Thank you very much.

twitter logo DISCUSS (13)
markdown guide
 

Judging from the trends and StackOverflow 2018 survey I would say invest in Swift.

I'm going to tag @kaydacode on this topic though :-)

 

Yeah It's maybe like Kotlin for Android Development. Thanks for suggesting, and I will invest my time to learning Swift. Thanks rhymes!

 

Thanks @rhymes !

Swift MOST DEFINITELY. It's beginner friendly, and is the future for Apple development. Only reason Obj-C hasn't been officially unsupported is because of the top apps in the app that are still converting their old code. Besides Obj-C is a HUGE headache.

When you're ready for the next step -- I do a intro to iOS talk, in Swift. I have slides and example code found here. Feel free to pull it or fork it and play around. It's what it's there for. :)

github.com/karnett/cwit

Definitely going to check this out! Thank you much!

 

If you are just staring, the most logical way is to pick Swift up from the get go. It is definitely the longer-term prospect for the Apple ecosystem, but also, due to the general-purpose orientation of the language, in many other areas such as server development, data science, etc.

That said, although you might not ever have to write a single line line of Objective-C code again, you will certainly encounter it many times. It is still what lies under the hood, and for many lower-level tasks, you will need to interoperate with it in one way or another. Therefore, my advice is to have an understanding of Objective-C to the point that you can orient yourself around it, when needs arise. Generally, the more you know about it, the better, but still, push Swift 100% the way forward.

 

I highly recommend Swift. I've created a few apps, and the Swift language has really come along. If you are going to be using git or another version control, I also recommend that you avoid the storyboard like the plague. You can do everything with code and have a better idea of what your changes are actually changing.

Can't wait to see what you make!

 

Thanks, Jess!

Seriously after asking above question, I want to ask about using Storyboard. And you have answer it before I ask it!

Thank you very much

 

As some other have suggested, I would go with Swift as it really is the future of programming for macOS/iOS devices.

The language is cleaner and is "modern" in the sense that it's a new language but is getting better with each new release.

Keep at it and you'll get it!

Good luck :)

  • Eric
 

Learn Swift.

Once you are comfortable with Swift, and you need to integrate with things in iOS (or macOS), you will need to also become familiar with Objective-C.

Perhaps unfortunate, but that is the state of the platform. Apple is making the transition from Objective-C to Swift, and that will take many years. So in the meantime, you will also need to become familiar with Objective-C, at least enough so that you may read header files and understand how they map to Swift.

The other benefit (of sorts) to learn Swift well, and then learn at least enough Objective-C to be able to read it, is you will understand some of the oddities in Swift which exist to support interop with Objective-C.

Swift is not Apple's first attempt to replace Objective-C. They had initiatives with Dylan, MacRuby, Cocoa for Java, and probably skunkworks projects that were never released. But Swift is the language Apple has made the commitment to switch to, from Objective-C.

Also, once you learn Swift, if you decide to do Android development, Kotlin will feel eerily familiar. The amazing thing is that Kotlin and Swift were developed independently, and simultaneously, on opposite sides of the world.

 

Go with Swift. It's a fun language with a ton of features you are certain to love. I wish I were doing more projects in Swift as it is easily my favorite language to work with.

 

I learned Obj-C before Swift was released. It wasn't difficult transitioning to Swift once it was released but the constant changes turned me back to Obj-C. My vote is for Objective-C.

 
Classic DEV Post from Jan 22

Self Care for Developers

Self care is a hot topic these days, and I’m not just talking about face masks. There is a growing movement that underscores the importance of taking time to take care of yourself (in addition to all the other things that you already take time for). You can prevent problems down the road by taking proactive steps to ensure your health and happiness.

Fariz Rizaldy profile image
polyglot storyteller. tinkering with web technologies, web performance and synthetic in between. UX & DX nerd.
Join DEV

Heard of computers? This could be you. Get a lifetime membership for a flat fee of $0.00.