Book Image

Swift High Performance

By : Kostiantyn Koval
Book Image

Swift High Performance

By: Kostiantyn Koval

Overview of this book

Swift is one of the most popular and powerful programming languages for building iOS and Mac OS applications, and continues to evolve with new features and capabilities. Swift is considered a replacement to Objective-C and has performance advantages over Objective-C and Python. Swift adopts safe programming patterns and adds modern features to make programming easier, more flexible, and more fun. Develop Swift and discover best practices that allow you to build solid applications and optimize their performance. First, a few of performance characteristics of Swift will be explained. You will implement new tools available in Swift, including Playgrounds and REPL. These will improve your code efficiency, enable you to analyse Swift code, and enhance performance. Next, the importance of building solid applications using multithreading concurrency and multi-core device architecture is covered, before moving on to best practices and techniques that you should utilize when building high performance applications, such as concurrency and lazy-loading. Finally, you will explore the underlying structure of Swift further, and learn how to disassemble and compile Swift code.
Table of Contents (15 chapters)
Swift High Performance
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

REPL in Xcode


One of the more interesting functionalities available in the Xcode LLDB console is that you can run Swift REPL there. You can enter and execute Swift code when you stop the application execution in the debugger. This is very useful for debugging purposes.

Note

REPL can only access public types, functions, and public global variables. Local variables are not visible in REPL. If you need to work with local variables, use LLDB commands instead.

To enter an REPL console, we first have to stop the program execution and enter the LLDB debugger. There are three commands for interacting with REPL:

  • Enter REPL: repl

  • Exit REPL: :

  • Execute the LLDB command in REPL: : command, for example, :p name

We can execute the same function as before, but now use REPL commands in the debug console, as shown here:

Now let's look at more interesting use cases of REPL. When you enter REPL, you can enter and execute Swift code. You also have access to publicly declared Swift code in your application in...