Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Cocoa Touch (iOS)
Cocoa Touch (iOS)

164
145
+ 1
12
Swift
Swift

6.1K
4.1K
+ 1
1.1K
Add tool

Cocoa Touch (iOS) vs Swift: What are the differences?

Developers describe Cocoa Touch (iOS) as "The Cocoa Touch collection of frameworks includes everything needed to create iOS apps". The Cocoa Touch layer contains key frameworks for building iOS apps. These frameworks define the appearance of your app. They also provide the basic app infrastructure and support for key technologies such as multitasking, touch-based input, push notifications, and many high-level system services. On the other hand, Swift is detailed as "An innovative new programming language for Cocoa and Cocoa Touch". Writing code is interactive and fun, the syntax is concise yet expressive, and apps run lightning-fast. Swift is ready for your next iOS and OS X project — or for addition into your current app — because Swift code works side-by-side with Objective-C.

Cocoa Touch (iOS) and Swift are primarily classified as "Frameworks (Full Stack)" and "Languages" tools respectively.

"Backed by Apple" is the top reason why over 5 developers like Cocoa Touch (iOS), while over 241 developers mention "Ios" as the leading cause for choosing Swift.

Swift is an open source tool with 48.2K GitHub stars and 7.71K GitHub forks. Here's a link to Swift's open source repository on GitHub.

Slack, Lyft, and Zillow are some of the popular companies that use Swift, whereas Cocoa Touch (iOS) is used by Snapchat, Third Iron, and Apple. Swift has a broader approval, being mentioned in 979 company stacks & 526 developers stacks; compared to Cocoa Touch (iOS), which is listed in 32 company stacks and 18 developer stacks.

- No public GitHub repository available -

What is Cocoa Touch (iOS)?

The Cocoa Touch layer contains key frameworks for building iOS apps. These frameworks define the appearance of your app. They also provide the basic app infrastructure and support for key technologies such as multitasking, touch-based input, push notifications, and many high-level system services.

What is Swift?

Writing code is interactive and fun, the syntax is concise yet expressive, and apps run lightning-fast. Swift is ready for your next iOS and OS X project — or for addition into your current app — because Swift code works side-by-side with Objective-C.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose Cocoa Touch (iOS)?
Why do developers choose Swift?

Sign up to add, upvote and see more prosMake informed product decisions

    Be the first to leave a con

    Sign up to add, upvote and see more consMake informed product decisions

    What companies use Cocoa Touch (iOS)?
    What companies use Swift?

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Cocoa Touch (iOS)?
    What tools integrate with Swift?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to Cocoa Touch (iOS) and Swift?
    Node.js
    Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
    ASP.NET
    .NET is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.
    Django
    Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.
    Rails
    Rails is a web-application framework that includes everything needed to create database-backed web applications according to the Model-View-Controller (MVC) pattern.
    Laravel
    It is a web application framework with expressive, elegant syntax. It attempts to take the pain out of development by easing common tasks used in the majority of web projects, such as authentication, routing, sessions, and caching.
    See all alternatives
    Decisions about Cocoa Touch (iOS) and Swift
    StackShare Editors
    StackShare Editors
    Rails
    Rails
    Node.js
    Node.js
    Python
    Python
    React
    React
    Java
    Java
    Ruby
    Ruby
    Go
    Go
    Swift
    Swift
    Objective-C
    Objective-C
    jQuery
    jQuery

    By mid-2015, around the time of the Series E, the Digital department at WeWork had grown to more than 40 people to support the company’s growing product needs.

    By then, they’d migrated the main website off of WordPress to Ruby on Rails, and a combination React, Angular, and jQuery, though there were efforts to move entirely to React for the front-end.

    The backend was structured around a microservices architecture built partially in Node.js, along with a combination of Ruby, Python, Bash, and Go. Swift/Objective-C and Java powered the mobile apps.

    These technologies power the listings on the website, as well as various internal tools, like community manager dashboards as well as RFID hardware for access management.

    See more
    StackShare Editors
    StackShare Editors
    Java
    Java
    Swift
    Swift
    Gradle
    Gradle
    Objective-C
    Objective-C

    At the heart of Uber’s mobile app development are four primary apps: Android rider, Android driver, iOS rider, and iOS driver. Android developers build in Java, iOS in Objective C and Swift. Engineers across both platforms land code into a monolithic code base that ships each week.

    They use some third-party libraries, but often build their own, since “Many open source libraries available are general-purpose, which can create binary bloat. For mobile engineering, every kilobyte matters.”

    On Android, the build system is Gradle. For the UI, Butter Knife binds views and callbacks to fields and methods via annotation processing, and Picasso provides image loading.

    As for iOS, all of the code lives in a monorepo built with Buck. For crash detection, KSCrash reports crashes to the internal reporting framework.

    See more
    Conor Myhrvold
    Conor Myhrvold
    Tech Brand Mgr, Office of CTO at Uber · | 10 upvotes · 553.7K views
    atUber TechnologiesUber Technologies
    RIBs
    RIBs
    Objective-C
    Objective-C
    Swift
    Swift

    Excerpts from how we developed (and subsequently open sourced) Uber's cross-platform mobile architecture framework, RIBs , going from Objective-C to Swift in the process for iOS: https://github.com/uber/RIBs

    Uber’s new application architecture (RIBs) extensively uses protocols to keep its various components decoupled and testable. We used this architecture for the first time in our new rider application and moved our primary language from Objective-C to Swift. Since Swift is a very static language, unit testing became problematic. Dynamic languages have good frameworks to build test mocks, stubs, or stand-ins by dynamically creating or modifying existing concrete classes.

    Needless to say, we were not very excited about the additional complexity of manually writing and maintaining mock implementations for each of our thousands of protocols.

    The information required to generate mock classes already exists in the Swift protocol. For Uber’s use case, we set out to create tooling that would let engineers automatically generate test mocks for any protocol they wanted by simply annotating them.

    The iOS codebase for our rider application alone incorporates around 1,500 of these generated mocks. Without our code generation tool, all of these would have to be written and maintained by hand, which would have made testing much more time-intensive. Auto-generated mocks have contributed a lot to the unit test coverage that we have today.

    We built these code generation tools ourselves for a number of reasons, including that there weren’t many open source tools available at the time we started our effort. Today, there are some great open source tools to generate resource accessors, like SwiftGen. And Sourcery can help you with generic code generation needs:

    https://eng.uber.com/code-generation/ https://eng.uber.com/driver-app-ribs-architecture/

    (GitHub : https://github.com/uber/RIBs )

    See more
    Befmatic
    Befmatic
    Crashlytics
    Crashlytics
    Fabric by Twitter
    Fabric by Twitter
    Cocoa Touch (iOS)
    Cocoa Touch (iOS)
    Android SDK
    Android SDK

    When we first built the ArifZefen app our focus was around validating our business assumptions and finding a good product fit. Once we got to a few thousand users, it became clear that we needed to make quality a priority and that meant we needed a reliable tool that will allow us to monitor the health of our app. Crashlytics (now Fabric by Twitter ) was on a short list of solutions we closely explored and we were very happy with its ease of integration and the consistency it brought to our Cocoa Touch (iOS) and Android SDK crash monitoring.

    Its daily pulse emails were also super informative in giving us a good sense of how each platform was doing in terms of crash-free and new users, daily actives and other relevant session data. These emails also surfaced any anomalies in daily trends, alerting us of any reason for concern. Overall, Crashlytics was instrumental in allowing us to quickly discover and diagnose crashes and it is one of the main reasons we were able to keep our app store ratings reasonable high. But perhaps even more importantly, we were able to set a high quality bar for our users that absent Crashlytics would have been difficult to maintain.

    See more
    StackShare Editors
    StackShare Editors
    Prometheus
    Prometheus
    Chef
    Chef
    Consul
    Consul
    Memcached
    Memcached
    Hack
    Hack
    Swift
    Swift
    Hadoop
    Hadoop
    Terraform
    Terraform
    Airflow
    Airflow
    Apache Spark
    Apache Spark
    Kubernetes
    Kubernetes
    gRPC
    gRPC
    HHVM (HipHop Virtual Machine)
    HHVM (HipHop Virtual Machine)
    Presto
    Presto
    Kotlin
    Kotlin
    Apache Thrift
    Apache Thrift

    Since the beginning, Cal Henderson has been the CTO of Slack. Earlier this year, he commented on a Quora question summarizing their current stack.

    Apps
    • Web: a mix of JavaScript/ES6 and React.
    • Desktop: And Electron to ship it as a desktop application.
    • Android: a mix of Java and Kotlin.
    • iOS: written in a mix of Objective C and Swift.
    Backend
    • The core application and the API written in PHP/Hack that runs on HHVM.
    • The data is stored in MySQL using Vitess.
    • Caching is done using Memcached and MCRouter.
    • The search service takes help from SolrCloud, with various Java services.
    • The messaging system uses WebSockets with many services in Java and Go.
    • Load balancing is done using HAproxy with Consul for configuration.
    • Most services talk to each other over gRPC,
    • Some Thrift and JSON-over-HTTP
    • Voice and video calling service was built in Elixir.
    Data warehouse
    • Built using open source tools including Presto, Spark, Airflow, Hadoop and Kafka.
    Etc
    See more
    Visual Studio Code
    Visual Studio Code
    GitHub
    GitHub
    Linux
    Linux
    JavaScript
    JavaScript
    Swift
    Swift
    Java
    Java
    PHP
    PHP
    Python
    Python
    XML
    XML
    JSON
    JSON
    Git
    Git
    SVN (Subversion)
    SVN (Subversion)

    I use Visual Studio Code because at this time is a mature software and I can do practically everything using it.

    • It's free and open source: The project is hosted on GitHub and it’s free to download, fork, modify and contribute to the project.

    • Multi-platform: You can download binaries for different platforms, included Windows (x64), MacOS and Linux (.rpm and .deb packages)

    • LightWeight: It runs smoothly in different devices. It has an average memory and CPU usage. Starts almost immediately and it’s very stable.

    • Extended language support: Supports by default the majority of the most used languages and syntax like JavaScript, HTML, C#, Swift, Java, PHP, Python and others. Also, VS Code supports different file types associated to projects like .ini, .properties, XML and JSON files.

    • Integrated tools: Includes an integrated terminal, debugger, problem list and console output inspector. The project navigator sidebar is simple and powerful: you can manage your files and folders with ease. The command palette helps you find commands by text. The search widget has a powerful auto-complete feature to search and find your files.

    • Extensible and configurable: There are many extensions available for every language supported, including syntax highlighters, IntelliSense and code completion, and debuggers. There are also extension to manage application configuration and architecture like Docker and Jenkins.

    • Integrated with Git: You can visually manage your project repositories, pull, commit and push your changes, and easy conflict resolution.( there is support for SVN (Subversion) users by plugin)

    See more
    Siddhant Sharma
    Siddhant Sharma
    Tech Connoisseur at Bigstep Technologies · | 12 upvotes · 128.8K views
    WordPress
    WordPress
    Magento
    Magento
    PHP
    PHP
    Java
    Java
    Swift
    Swift
    JavaScript
    JavaScript
    #Messaging
    #Communication
    #InAppChat
    #Dating
    #Matrimonial

    WordPress Magento PHP Java Swift JavaScript

    Back in the days, we started looking for a date on different matrimonial websites as there were no Dating Applications. We used to create different profiles. It all changed in 2012 when Tinder, an Online Dating application came into India Market.

    Tinder allowed us to communicate with our potential soul mates. That too without paying any extra money. I too got 4-6 matches in 6 years. It changed the life of many Millennials. Tinder created a revolution of its own. P.S. - I still don't have a date :(

    Posting my first article. Please have a look and do give feedback.

    Communication InAppChat Dating Matrimonial #messaging

    See more
    Siddhant Sharma
    Siddhant Sharma
    Tech Connoisseur at Bigstep Technologies · | 3 upvotes · 2.2K views
    Swift
    Swift
    Java
    Java
    PHP
    PHP
    Magneto
    Magneto
    WordPress
    WordPress
    #Webhooks
    #Channelize.io

    Swift Java PHP Magneto WordPress #Webhooks Added as the newest feature in #Channelize.io. It was initially hard for me to understand what Webhooks meant. But I got the gist of it. Simple example:

    Webhooks are pretty much like our brains. for every task, our brains keep sending signals continuously. notifying us for eating, for moving, for removing our hand from Gas Stove or steam.

    Imagine asking your brain if you're hungry, tired or hurt. That would be disastrous! Right?

    Webhooks are pretty much the same thing, complete automation for your web development projects triggered by some Events just like our Brain. Take a look at the article below to learn more about webhooks and how it works with Channelize.io. Do give your Suggestions also here.

    https://channelize.typeform.com/to/jztS7B

    See more
    Interest over time
    Reviews of Cocoa Touch (iOS) and Swift
    Avatar of Bessalitskykh
    Software Development Consultan at MLSDev Inc.
    Review ofSwiftSwift

    The performance of Swift is almost the same as that of C++, which is considered the fastest in algorithm calculation arithmetics. Apple had this idea in mind and worked to improve the speed of Swift. For example, Swift 2.0 has beaten C++ in several computation algorithms, such as Mandelbrot algorithm. Objective-C is slower because it contains C API legacy.

    Swift is faster than Objective-C, because it removed the limitations of C language and has been improved with the help of advanced technologies that were unavailable when C was developed. As mentioned by Apple, Swift was originally designed to operate faster.

    Despite the fact that languages are different, they both integrate, and work with Cocoa and Cocoa Touch APIs, for all Apple platforms. Therefore, a regular app-user would not recognize the difference in operating speed between Objective-C vs Swift. Speed also depends on a programmer’s level and capabilities, since a slow app can be written in Swift as well.

    Learn more here https://mlsdev.com/blog/51-7-advantages-of-using-swift-over-objective-c

    Avatar of Bessalitskykh
    Software Development Consultan at MLSDev Inc.
    Review ofSwiftSwift

    Its performance approaches the one of C++ which is considered the fastest algorithm calculation arithmetics. And Apple strives to improve the speed of Swift. Learn more here https://mlsdev.com/blog/51-7-advantages-of-using-swift-over-objective-c

    How developers use Cocoa Touch (iOS) and Swift
    Avatar of Lawrence Cheuk
    Lawrence Cheuk uses SwiftSwift

    iPhone app, a new born language, it may good but the IDE, xcode is bad compare with Visual Studio. It just like a baby. playground can only use without connect to other library...you can not do a simply refactor of renaming a variable. You can go to definition and find reference, but you can not go to implementation....I should write them on xcode not here basically it is not the fault of swift, but it tightly to it, unless you want to use a notepad to write it.

    Avatar of Refractal
    Refractal uses SwiftSwift

    Most of our newer apps are written completely in swift, with our older ones and some special cases using a mix of Swift and Objective-C, but with Swift 2, the language is pretty much a must-use. "guard" is <3.

    Avatar of Flutter Health Inc.
    Flutter Health Inc. uses SwiftSwift

    Flutter is coded with Swift v.2.3 and can be run with Xcode v.8.2.1. To launch in Xcode 9.3, the code needs to be migrated to Swift 4.1

    Avatar of Maxim Ananov
    Maxim Ananov uses SwiftSwift

    Most of the app code was gradually rewritten in Swift for better performance and code maintenance.

    Avatar of JINJA Ltd.
    JINJA Ltd. uses SwiftSwift

    Our native iOS app is built on Swift, and most of the basic function is still written in Swift

    How much does Cocoa Touch (iOS) cost?
    How much does Swift cost?
    Pricing unavailable
    Pricing unavailable
    News about Cocoa Touch (iOS)
    More news