Posts Tagged ‘apple’

Swift – Apple’s own programming language

Thursday, February 6th, 2020

Swift?

Swift

I won’t blame you if you’ve never heard about Swift before. It’s a programming language just like C++, Java or Python. So why did Apple reinvent the wheel when there are so many alternatives to it?

Simplicity. Just like everything made by Apple, Swift is simple, elegant and very easy to understand and work with.

What is it?

Swift is a compiled programming language for iOS, iPadOS, macOS, watchOS, tvOS, and Linux applications.

It’s safe because its syntax encourages you to write clean and consistent code. It also provides safeguards to prevent errors and improve readability.

And more importantly, it’s fast. Very fast. Swift was built with performance in mind. Not only does its simple syntax and hand-holding help you develop faster, it also lives up to its name. And keep in mind, it is 2.6x faster than Objective-C and 8x faster than Python.

A brief history about Swift

First introduced at Apple’s 2014 Worldwide Developers Conference (WWDC), Swift programming language has generated considerable debate ever since. Chris Lattner, Apple’s Senior Director, Developer Tools Department, started designing the basic concepts of the new language back in 2010.

It wasn’t until 2013 that the team was able to solve a strategic question about how the new language would fit in with the existing Objective-C ecosystem. Forcing all iOS developers to move to a new language could have had a major disruptive effect on the community. So, the company decided to continue investing in Objective-C while also committing to the development of a new “safe programming language.”

But in 2015, there was a major turning point for Swift – it became open-source. Ever since then, it’s growth has been huge, being adopted and loved by millions around the world.

Swift 5.0

In March 2019, Swift 5.0 was officially released by Apple. The current version of Swift now contains a stable version of the application binary interface (ABI) across Apple’s platforms. This is a giant step toward helping developers use Swift on dedicated OSs like iOS, iPadOS, macOS, tvOS, and watchOS. Needless to say, Apple is building a solid ecosystem, as now standard Swift libraries are included in OS releases.

SwiftUI was introduced in the release, which is basically a library of controls, graphic elements, and layouts for Swift applications that can be used to design user interface. The update also brought renewed documentation, updated CLI Xcode 10.2, and binaries for Ubuntu. Swift also became backward compatible with its previous versions. The list of languages that it is interoperable with now includes Ruby, Python, and JavaScript.

Since the release version 5.0, standard Swift libraries are integrated into every macOS, iOS, tvOS, and watchOS release. That means any app built on those platforms will be smaller, because these libraries are included. With this advancement, stable application binary interface (ABI) was also released. This allows Apple to provide support of Swift across its platforms.

Why you would want to use Swift over other alternatives

Swift

An example of how simple Swift can be

Well, first of all – the development process is extremely fast. Swift is very easy to write and read, being very concise, which means less code is required to perform the same task, as compared to Objective-C. Automatic Reference Counting (ARC) does all the work tracking and managing the app’s memory usage, so developers don’t need to spend time and effort doing that manually. Accordingly, it usually takes less time to build iOS apps with Swift.

In addition to faster development time, we can say that Swift is future-proof and can be extended with new features as needed. Thus, Swift projects are typically easier to scale. The fact that Apple is more likely to support Swift than Objective-C should also get serious consideration for long-term investment.

Additionally, Swift allows you to add more developers to your team if needed: The on-boarding is relatively fast due to the simplicity and conciseness of the code-base. The syntax of Swift is considered near to natural English, thus it offers easy readability for new team members.

Static vs. dynamic libraries

Usually, when you build an app, you use a lot of third-party code – reusable and often open source frameworks or libraries compiled into your app’s code. These libraries can be static and dynamic (or shared). Swift first introduced dynamic libraries to iOS when it launched. Usually, static libraries become the part of your executable file, thus increasing its size and load time. They also can’t be automatically updated since they’re stuck in the version you compiled at. Dynamic libraries, on the other hand, exist outside of your code and are uploaded only when needed. Static libraries need to have copies in all files of your program while dynamic ones do not.

Even though it takes more time to reach for the dynamic code from the outside than call to it when it’s already included, you have a choice to keep using static libraries when you want to isolate apps that aren’t meant to be shared.

ARC – Automatic Memory Counting

Swift uses Automatic Memory Counting (ARC) – a technology aimed to add a garbage collector function that wasn’t introduced to iOS before. Languages like Java, C#, and Go use garbage collectors to delete class instances that are no longer used. They are useful to decrease your memory footprint but can add a lot of extra unnecessary CPU usage.

Before ARC, iOS developers had to manage memory manually and constantly manage retain counts of every class. Swift’s ARC determines which instances are no longer in use and gets rid of them on your behalf. It allows you to increase your app’s performance without lagging your memory or CPU.

To sum up

For such a young programming language, Swift surely has an great variety of resources to help developers accelerate adoption. Apart from official e-books, there are tons of community guidelines, podcasts, online and even real-life courses and even third-party apps.

Swift has become an even more mature language with the latest update, but there are still a few things that need fixing. Apple is creating its own ecosystem with a stable ABI over its platforms, but it still lacks tooling and support for earlier versions. As such, Swift adoption will continue to grow, which soon might lead to a complete displacement of Objective-C as the leading first-class language for iOS mobile application development.

For business owners, it is important to be ready for any changes the market might impose. Thus, being prepared to switch to the new language with minimum effort and at a reasonable cost should be one of the key strategies for the near future.

Tags: , ,
Posted in Apps, Mobile development | No Comments »

What is new in iOS 13?

Sunday, October 13th, 2019

What is new in iOS 13 – the latest iPhone operating system?

Apple introduced the newest version of its iOS operating system, iOS 13, on June 3rd 2019. It was showcased at the keynote event of the 2019 WWDC (Worldwide Developers Conference). iOS 13 is a huge overhaul to iOS, with a long list of new features.

iOS 13

Firstly, Apple continued on with its optimization trend introduced in iOS 12, making iOS 13 faster and more efficient than ever. App update times have improved, app launch times are two times faster, app download sizes have been reduced by up to 50 percent, and Face ID is 30 percent faster.

The speed improvements aren’t very noticeable on the newest devices (iPhone Xs and 11), as those phones were already extremely fast. However, on the older devices such as iPhone 6S, 7, 8 and X, the speed improvements are huge. Apple is saying that these older devices will feel a lot faster, up to 50% faster.

Dark Mode is here!

There’s also a new system-wide Dark Mode option, which changes the entire look of the operating system from light to dark. You can choose either option, or have Dark Mode come on at sunset or on a custom schedule. All native Apple apps feature Dark Mode support, and third-party apps can use Dark Mode APIs to add Dark Mode integration.

While many consider the Dark Mode option to only be an aesthetical change, it’s also great for improving battery life. This only applies to devices with OLED screens, not LCD, so if you have an iPhone X, Xs, Xs Max or 11 Pro, you should notice better battery life when using Dark Mode. How is it possible to save battery life just by having Dark Mode enabled? OLED screen technology is much more advanced than LCD technology. While typical LCD screens use a backlight, OLED screens don’t have backlight, only the pixels light up (as needed). So if most of the interface is dark, the pixels won’t light up, which means saved battery.

 

New Photos app and editing tools

Apple have also overhauled the Photos app, introducing a new feature that curates your entire Photos library. This will show you a selection of highlights from your life by day, month, or year. Photos and videos are also intelligently organized, making it easier to browse and relive your favorite moments.

Photo editing tools in the Photos app have been revamped to make it easier than ever to edit your images. Your editing tools are now at the bottom of the Photos app, and there are handy slider wheels available right at your fingertips when you tap the “Edit” button.

iOS 13 also gives you the capability to fully edit videos, letting you rotate, crop, and apply filters to videos. In the Camera app, you can make Portrait Lighting adjustments, moving the light closer or further away depending on the look you’re going for. There’s also a new High-Key Mono lighting effect for creating monochromatic looks.

iOS 13 introduces a streamlined, less obtrusive volume HUD for the first time. Now there’s also an option to download apps of any size over an LTE/4G connection, untethering you from WiFi.

iPadOS

Apple has finally separated the operating systems between iPhones and iPads. As such, the OS on iPad tablets is no longer called iOS. The new name for the tablet OS is iPadOS. This has been done in order to differentiate between phones and tablets (read more here). iPadOS takes advantage of the larger display size and optimizes apps to look better and be more usable on the larger screen.

iPhones are now faster than ever, even the 5-year old iPhone 6S still holds its own. What makes iPhones great is also the fact that they have access to the world’s largest app market – the App Store. The App Store has also been completely revamped in iOS 13, having a fresh new look. App updates are done seamlessly now, and finding apps that you need has been made even easier.

The new App Store

Back in iOS 11, Apple gave the App Store its first big facelift in years when it added its own editorial content in a new Today tab. They have also split Games and Apps into their own tabs, and redesigned app pages. In iOS 13, the App Store is going through another significant revision. It’s not quite as big a reorganization as in iOS 11, but it’s a significant change to how you update and manage your apps.

Having access to the App Store gives iPhone users access to millions of great apps. Amazing apps that range from entertainment apps, social media apps, and even apps that save lives – everything can be found on the App Store. This is why we consider the largest marketplace for apps, the App Store, to be a vital component of the iPhone user experience.

ios

By having an app on the App Store you reach to over a billion users. So if you have an amazing idea for an app, having it developed for iOS is the best way to go.

Just let us know about your idea, and we will turn it into reality. Our iOS developers are more than keen on hearing your idea and helping you shape the future of your company. We can help you with everything – from listening to the initial idea, to improving it, developing it and putting it on the App Store – we can make your dream come true. We don’t just build apps, we create them with love.

 

Tags: , , ,
Posted in Apps, Mobile development, News | No Comments »