{"id":19137,"date":"2017-10-06T16:34:17","date_gmt":"2017-10-06T20:34:17","guid":{"rendered":"https:\/\/mjtsai.com\/blog\/?p=19137"},"modified":"2017-10-06T22:44:22","modified_gmt":"2017-10-07T02:44:22","slug":"why-many-developers-still-prefer-objective-c-to-swift","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2017\/10\/06\/why-many-developers-still-prefer-objective-c-to-swift\/","title":{"rendered":"Why Many Developers Still Prefer Objective-C to Swift"},"content":{"rendered":"<p><a href=\"https:\/\/www.hackingwithswift.com\/articles\/27\/why-many-developers-still-prefer-objective-c-to-swift\">Paul Hudson<\/a>:<\/p>\n<blockquote cite=\"https:\/\/www.hackingwithswift.com\/articles\/27\/why-many-developers-still-prefer-objective-c-to-swift\"><p>Objective-C &#x2013; once the rising star of the app development world &#x2013; has started to become a second-class citizen in the Apple ecosystem. Yes, it might occasionally get dusted off for a slide or two at WWDC, but the majority of conference talks worldwide are in Swift, Apple is pushing Swift hard in the education space, and major language features come to Swift first.<\/p>\n<p>But if you&rsquo;re still using Objective-C, you&rsquo;re not alone &#x2013; many other developers still prefer Objective-C to Swift, and with good reasons. I got in touch with some Objective-C developers to ask what&rsquo;s holding them back, whether they feel Objective-C development has become stigmatized, and more &#x2013; here&rsquo;s what they had to say&#8230;<\/p>\n<p>[&#8230;]<\/p>\n<p><strong>Steve Troughton-Smith:<\/strong> Swift was absolutely catastrophic for Objective-C development; for any new APIs or features I no longer have sample code, WWDC slides, tutorials, GitHub or StackOverflow. Whatever about StackOverflow millennial jokes, but losing access to all of this context and knowledge is devastating. On the plus side, the ObjC language itself has gained a bunch of quality of life\/syntactic sugar features to help it interop with Swift better, and all of those have been fantastic.<\/p>\n<p>[&#8230;]<\/p>\n<p><strong>Michael Lauer:<\/strong> I can only dream about what could have been Objective-C if there was the same manpower behind it.<\/p>\n<p>[&#8230;]<\/p>\n<p><strong>Marcel Weiher:<\/strong> Objective-C is OK for what it is and really needs a bullet in the head more than further development!<\/p>\n<p>What&rsquo;s more surprising and somewhat disturbing is how many obvious defects in the libraries and &ldquo;preferred coding styles&rdquo; that would have been trivial to fix without introducing a whole new language weren&rsquo;t until Swift arrived &#x2013; and are now attributed to Swift. It&rsquo;s almost as if these improvements were held back in order to make Swift look good, though I am pretty sure that&rsquo;s not how it happened.<\/p>\n<p>However, the biggest negative impact will be that it will most likely prevent the development of successor that&rsquo;s an actual improvement. We really have enough information to build such a beast now, and Apple ignored just about all of it.<\/p><\/blockquote>\n<p>It&rsquo;s not good that people feel left out, but I&rsquo;ve been pretty happy with the advancement of Swift so far. I feared that people wouldn&rsquo;t embrace it, and it would be stuck in a limbo like some other former Apple technologies. People would be worried about using it because they thought Apple would drop it, and this would become a self-fulfilling prophecy. Instead, it seems like the train is going full steam ahead, and that gives us clarity. You don&rsquo;t have to give up Objective-C right now if you prefer it. But time spent learning about Swift at this point will not be wasted. Swift is the future for most development. Yet I think Objective-C will remain useful for a long time to come, both because of existing code bases and because certain APIs and optimizations are more accessible from it.<\/p>\n<p>Update (2017-10-06): See also: <a href=\"https:\/\/twitter.com\/stroughtonsmith\/status\/916403502510944256\">Steve<\/a> <a href=\"https:\/\/twitter.com\/stroughtonsmith\/status\/916418611719430144\">Troughton-Smith<\/a>, <a href=\"https:\/\/twitter.com\/wilshipley\/status\/916417035894120448\">Wil<\/a> <a href=\"https:\/\/twitter.com\/wilshipley\/status\/916417208577810432\">Shipley<\/a>, <a href=\"https:\/\/news.ycombinator.com\/item?id=15421073\">Hacker News<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Paul Hudson: Objective-C &#x2013; once the rising star of the app development world &#x2013; has started to become a second-class citizen in the Apple ecosystem. Yes, it might occasionally get dusted off for a slide or two at WWDC, but the majority of conference talks worldwide are in Swift, Apple is pushing Swift hard in [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"","apple_news_api_id":"","apple_news_api_modified_at":"","apple_news_api_revision":"","apple_news_api_share_url":"","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[2],"tags":[31,1472,46,30,1529,54,71,901],"class_list":["post-19137","post","type-post","status-publish","format-standard","hentry","category-technology","tag-ios","tag-ios-11","tag-languagedesign","tag-mac","tag-macos-10-13","tag-objective-c","tag-programming","tag-swift-programming-language"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/19137","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=19137"}],"version-history":[{"count":5,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/19137\/revisions"}],"predecessor-version":[{"id":19153,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/19137\/revisions\/19153"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=19137"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=19137"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=19137"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}