Xcode 10 - What’s New? ✨

Hey folks! We’ll talk about Xcode 10 enhancements and discover which advantages bring to us.

As you can see in above, all of bars, background and much more stuff are adapted to Dark Mode. It will look good to us. Let’s look the Dark Mode before the technical enhancements.

Dark Mode

  • Apple brings Dark Mode with macOS Mojave as default. Also, It’ll be available in Xcode 10 too.
  • Xcode 10 will give you good opportunity to adapt your applications to Dark Mode. Especially, You’ll be able to see light or dark versions in Interface Builder.
  • One of the important feature is allows you to check light and dark mode w/o changing system settings in debug mode.

First of all, Apple introduced new version of Xcode in several WWDC’18 sessions. As you can see in below;

  • Advanced Debugging with Xcode and LLDB
  • Building Faster in Xcode 10
  • New Localization Workflows in Xcode 10
  • What’s New in LLVM
  • What’s New in Testing
  • What’s New in Energy Debugging

There are some categories to talk on it. We can seperate them like that;

  • Testing
  • Debugging
  • Enhancements on existing features

Let’s start with first one.


Testing

Testing is the important part to provide your application’s stability and how responding in several situations. So, let’s discover what’s new on it.

Especially, Apple Engineers had focused on the three main sections to talk about on it.

  • Code coverage
  • Test selection and ordering
  • Parallel testing

Note : “As you know, These enhancements are included in Xcode 9.3+ updates. But it’ll be already included in Xcode 10 too.”

Code coverage: As you know, Providing high percentage of executed code value is important to be sure to talk about success of the unit tests.

from What’s New Testing? (WWDC’18 session slide)

xccov is a best command to measuring / gathering data with different types.

from What’s New Testing? (WWDC’18 session slide)
from What’s New Testing? (WWDC’18 session slide)

Test selection and ordering:

It’s providing a way for ordering tests by alphabetical or randomly. It’ll help you to see how your applications responding in differents conditions.

from What’s New Testing? (WWDC’18 session slide)
from What’s New Testing? (WWDC’18 session slide)

Parallel Testing (Parallel Distributed Testing): As you probably be aware, Parallel Testing will provide us a freedom to run tests in same time.

from What’s New Testing? (WWDC’18 session slide)
from What’s New Testing? (WWDC’18 session slide)

According to my thoughts, parallelism will be the middle point in the development of Xcode over the coming years.


Debugging

  • It allows you to change appearance of your macOS app at runtime. (Debug > View Debugging > Appearance menu)
  • You can choose background color of canvas background color while debugging. (light and dark)

Enhancements on existing features

  • Source control: Xcode allows to use lots of source code collobration platforms. (E.g. GitHub, GitLab and Bitbucket).
  • New build system (Build system): The build time and stability has been improved with the new build system, besides we can catch configuration errors with that. Large Swift projects build for debugging dramatically faster when using the incremental build setting.
  • Source Editor: Code completion and general stuffs are better than Xcode 9.3+. Over-scroll makes it easy to center the last lines of code in the middle of your screen .
  • Localization: You’ll be able to create Siri shortcut intents. (https://developer.apple.com/videos/play/wwdc2018/404/)

Download the Xcode 10: https://developer.apple.com/xcode/