0% found this document useful (0 votes)
13 views5 pages

unit 5

The document provides an overview of iOS app development, detailing the programming languages used (Objective-C and Swift) and the features of iOS 12 that developers should be aware of. Key updates include enhancements to Xcode 10, new testing capabilities, Siri Shortcuts, ARKit 2.0, and improvements in performance, privacy, and security. It emphasizes the importance of keeping technology stacks updated to remain competitive in mobile application development.

Uploaded by

adityakumawat625
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views5 pages

unit 5

The document provides an overview of iOS app development, detailing the programming languages used (Objective-C and Swift) and the features of iOS 12 that developers should be aware of. Key updates include enhancements to Xcode 10, new testing capabilities, Siri Shortcuts, ARKit 2.0, and improvements in performance, privacy, and security. It emphasizes the importance of keeping technology stacks updated to remain competitive in mobile application development.

Uploaded by

adityakumawat625
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

lOMoAR cPSD| 22530938

Mobile Application Development Lecture Notes


lOMoAR cPSD| 22530938

UNIT V IOS DESIGN


iPhone Craze 3 iOS Features 3 iOS Tools - iOS Project 3 Objective C Basics 3 Building iOS App
3 Actions and Outlets 3 Delegates - User Interface Elements 3 Accelerometer 3 Location
Handling - SQLite Database

iOS in mobile application development:


What is iOS app development? iOS application development is the process of making mobile
applications for Apple hardware, including iPhone, iPad and iPod Touch.
The software is written in the Swift programming language or Objective-C and then deployed to
the App Store for users to download
iOS app development:
iOS application development is the process of making mobile applications for Apple hardware,
including iPhone, iPad and iPod Touch. The software is written in the Swift programming language
or Objective-C and then deployed to the App Store for users to download.
Select an iOS programing language:

There are currently two programming languages for iOS app development.

● Objective-C: Developed in the early 1980s, Objective-C was the primary programming
language for all Apple products for decades. Derived from the C language, Objective-C is
an object-oriented programming language centered on passing messages to different
processes (as opposed to invoking a process in traditional C programming). Many
developers choose to maintain their legacy applications written in Objective-C instead of
integrating them into the Swift framework, which was introduced in 2014.
● Swift: The Swift programming language is the new <official= language of iOS. While it has
many similarities to Objective-C, Swift is designed to use a simpler syntax and is more
focused on security than its predecessor. Because it shares a run time with Objective-C, you
can easily incorporate legacy code into updated apps. Swift is easy to learn, even for people
just beginning to program. Because Swift is faster, more secure and easier to use than
Objective-C, you should plan to use it to develop your iOS app unless you have a
compelling reason to stick with Objective-C.

iOS Features
Tech Features for Developers
Believe it or not, users are moving very quickly in terms of adopting Apple9s new products, either
software or hardware. It9s been proved from the past experiences that users quickly adopt new
releases before we think of adopting our technology stacks. We have to be prepared to get our
technology stack up to date with new features and tooling as soon as possible to stay competitive in
the digital tech market. There is always technologies behind new features. In order to keep up with
new changes in tools and technologies, we should be always prepared for upgrading our existing
toolset to the latest stack. Now we will see what9s new in developer tools and Apple frameworks
that have been relevant for iOS 12.
1. Xcode 10
lOMoAR cPSD| 22530938

● Apple announced Xcode 10 with a full list of the new features for iOS developers. The most
noticeable feature of Xcode 10 is a dark mode with macOS Mojave.
● With Xcode 10, Developers can enjoy writing code in the dark mode. Xcode 10 obviously
shipped with all the iOS 12 simulators and can build an app on the newly launched device.
● Other important features launched with Xcode 10 are multi-line editing, code snippets for
the other languages like Ruby, Python, etc. Last year, Apple announced integrated support
for Github within Xcode. This year with Xcode 10, we will have support for GitLab and
BitBucket as well. You can check all the new features in the Xcode 10 release notes. Xcode
10 shipped with Swift 4.2 but we can use Swift toolchains to switch between the Swift
versions.
2. New Build System
● With Xcode 10, we will have a new build system enabled by default.
● The new build system is designed for the faster Swift builds and optimizing the speed of the
iOS app. From now on, all the apps developed for iOS 12 will be using the new build
system.
● As a developer, we need to make sure that existing apps still work with new build system if
not we have to make them compatible or switch to the old build system from Xcode
Files->Project/Workspace Setting option.

3. XCTest/XCUITest and Code Coverage


Apple is revamping the tools, technologies and practices for testing iOS apps. As usual, there are
some great features added with Xcode 10 and iOS 12. The key improvements are as follows
Parallel Testing

The support for parallel testing has been extended to the next level this year. Now we can officially
run XCTest or Xcode UI Test in parallel by having the number of clones of a simulator. The native
tools xcodebuild has also got an option to run them in parallel. We can enable the parallel testing by
updating the scheme and in the Test action, we can select <Options= against a test bundle to choose
parallelization option.
Randomizing Tests

Previously, XCTest used to run in the alphabetical order but with Xcode 10 onwards we can run
tests in the random order. This would be a useful feature to find the dependencies between the tests.
xccov
Apple announced the native tool known as xccov to generate code coverage for the Swift code. This
reduces the pain of using third-party tools to display the Xcode code coverage reports in a nice
format. The details of xccov and latest XCTest features can be found here.
4. Swift
Xcode 10 comes up with Swift 4.2. There is one thing, we need to note is Xcode 10 is the last
release supporting Swift 3. If your app is still using Swift 3 then it9s worth thinking out the
migration to Swift 4 or later before it gets too late.
lOMoAR cPSD| 22530938

5. Siri Shortcut
One of the major feature announced with iOS 12 is Siri Shortcuts.
The Siri Shortcuts can be used to expose your app features to Siri so that Siri can suggest some of
the features of your apps to users.
This enables a new way of interacting with your users from iOS as well from watchOS Now that,
developers can use custom intent Siri Shortcuts for iOS 12 apps, Apple has provided resources in
terms of WWDC videos and example app to help developers to get started with Siri Shortcuts. The
developers can refer to this excellent blog post on how to use Intents Extension in the existing apps.
Siri Shortcuts is new of communicating with your existing users so get ready to implement these
features in your apps.
6. ARKit 2.0
Arkit is a great framework which allows developers to write augmented reality apps for iOS. With
iOS 12, developers can use ARKit 2.0 for face tracking and 3D object detection. If you have
already implemented ARKit in your app then its opportunity to expand the horizon.
7. Machine Learning
Apple announced the Core ML framework last year to support machine learning in iOS apps.
However, in order to create machine learning models, the developer has to rely on third-party
frameworks like TensonFlow or IBM Watson, etc. This year with iOS 12 apps, we can use Create
ML framework for generating the machine learning models with Swift and within Xcode. Now
developers can implement end to end machine learning flow using Swift and Xcode 10. This will
reduce the burden on developers to learn third-party machine learning frameworks and algorithms.

8. CarPlay
Apple announced a customizable framework for the CarPlay which means with iOS 12, developers
can create apps for CarPlay with smooth animations and better communications. The biggest news
for developers is that, with iOS 12 latest build, you can use Google map on iOS CarPlay.
9. Photos and Images
Apple has improved the Photos experience a lot in iOS 12. There are some cool features like
personalized Photo, Photo searcher, etc. The iOS apps involved in the business of printing photos
can take benefits of these features. Apple has improved the portrait segmentation API and Depth
API to interact with images in a new way. By using this new API, developers can be able to build
apps with various photo effects.
10. Notifications
The user notifications have been improved drastically since iOS 10 but with iOS 12 we can add
more controls in the remote and local notifications. Now it9s possible to add buttons, switches and
custom views to the notifications using UserNotificationsUI API.

11. Performance
Apple seems to have made a significant improvement in the performance in all areas including
faster keyboard display, faster app launch. It9s worth checking our existing apps on iOS 12 to see
lOMoAR cPSD| 22530938

app launch improvement hasn9t affected launch screen images or text. It9s great news for the
developer that iOS 12 will give them performance improvement for free.
12. Privacy and Security
Apple has packed loads of security and privacy features into iOS 12. The key security and privacy
features include a built-in password manager, easy two-factor authentication.
And blocked access to USB if locked for more than an hour. Apple has put in all the security
features in the single document.
With iOS 12, developers can improve the user experience of existing apps while login or
onboarding using Password AutoFill API.
While considering, these security features developers needs to be aware of upgrades that might
lead to terrible consequences like dropping passwords using AirDrop can leak sensitive data to the
hacker.

You might also like