Koseoglu | Swift | Buch | 978-1-4932-2718-1 | www.sack.de

Buch, Englisch, 680 Seiten, Format (B × H): 178 mm x 254 mm

Koseoglu

Swift

The Practical Guide
1. Auflage 2026
ISBN: 978-1-4932-2718-1
Verlag: Rheinwerk Verlag GmbH

The Practical Guide

Buch, Englisch, 680 Seiten, Format (B × H): 178 mm x 254 mm

ISBN: 978-1-4932-2718-1
Verlag: Rheinwerk Verlag GmbH


This is your ultimate resource for Swift, the programming language for Apple devices! Get to know Swift’s syntax and learn to work with elements such as variables and collections. Use Swift’s built-in features for debugging, error handling, and memory management to streamline your development process. Then move to more advanced topics like concurrency and custom modules. Follow along with downloadable code examples to get practical experience working with the language. Become a Swift master in no time!

Highlights include:

1) Variables and collections
2) Control flow
3) Functions
4) Optionals
5) Enums and structs
6) Object-oriented programming
7) Memory management
8) Debugging and error handling
9) Concurrency
10) Modules
11) Unit testing

Koseoglu Swift jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


... Dedication ... 19

1 ... Introduction ... 21

1.1 ... About this Book ... 21

1.2 ... Welcome to Swift! ... 23

1.3 ... Why Learn Swift? ... 24

1.4 ... Swift Versus Other Programming Languages ... 26

1.5 ... Setting Up the Development Environment ... 35

1.6 ... Summary ... 43

2 ... Variables ... 45

2.1 ... Variables ... 45

2.2 ... Boolean ... 52

2.3 ... Numbers ... 58

2.4 ... Text ... 74

2.5 ... Dates and Times ... 98

2.6 ... Quantities ... 113

2.7 ... Tuples ... 120

2.8 ... Type Aliases ... 124

2.9 ... Summary ... 125

3 ... Collections ... 127

3.1 ... Arrays ... 128

3.2 ... Sets ... 148

3.3 ... Dictionaries ... 162

3.4 ... Summary ... 173

4 ... Control Flow ... 175

4.1 ... Conditional Statements ... 176

4.2 ... Loops ... 199

4.3 ... Control Transfer Statements ... 211

4.4 ... Summary ... 221

5 ... Functions ... 223

5.1 ... What Is a Function? ... 223

5.2 ... Defining and Calling Functions ... 226

5.3 ... Input Parameters ... 234

5.4 ... Returning Values ... 242

5.5 ... Variadic Parameters ... 250

5.6 ... Function Overloading ... 253

5.7 ... Inout Parameters ... 255

5.8 ... Nested Functions ... 258

5.9 ... Function Types ... 261

5.10 ... Closures ... 268

5.11 ... Generic Functions ... 280

5.12 ... Summary ... 289

6 ... Optionals ... 291

6.1 ... What Are Optionals? ... 291

6.2 ... Optional Binding ... 296

6.3 ... Implicitly Unwrapped Optionals ... 299

6.4 ... Optional Chaining ... 300

6.5 ... Summary ... 302

7 ... Enumerations ... 303

7.1 ... What Are Enumerations? ... 303

7.2 ... Declaring Enumerations ... 305

7.3 ... Computed Properties ... 313

7.4 ... Functions in Enumerations ... 317

7.5 ... Iterating over Enumerations ... 319

7.6 ... Recursive Enumerations ... 322

7.7 ... Generic Enumerations ... 325

7.8 ... Summary ... 327

8 ... Structs ... 329

8.1 ... What Is a Struct? ... 329

8.2 ... Declaring Structs ... 331

8.3 ... Static Properties ... 339

8.4 ... Computed Properties ... 341

8.5 ... Functions ... 345

8.6 ... Encapsulation ... 351

8.7 ... Structs as Function Parameters ... 355

8.8 ... Generic Structs ... 357

8.9 ... Advanced Features ... 359

8.10 ... Summary ... 369

9 ... Classes ... 371

9.1 ... Declaring Classes ... 372

9.2 ... Functions ... 380

9.3 ... Inheritance ... 385

9.4 ... Classes as Function Parameters ... 409

9.5 ... Memory Management ... 412

9.6 ... Summary ... 419

10 ... Protocols ... 421

10.1 ... Purpose of Protocols ... 421

10.2 ... Function Requirements ... 425

10.3 ... Initializer Requirements ... 431

10.4 ... Property Requirements ... 433

10.5 ... Implementing Multiple Protocols ... 437

10.6 ... Checking for Protocol Conformance ... 440

10.7 ... Protocols as Function Parameters ... 442

10.8 ... Associated Types ... 445

10.9 ... Using Standard Protocols ... 448

10.10 ... Summary ... 459

11 ... Extensions ... 461

11.1 ... Extending Enumerations ... 462

11.2 ... Extending Structs ... 464

11.3 ... Extending Classes ... 466

11.4 ... Extending Protocols ... 468

11.5 ... Operator Extensions ... 470

11.6 ... Extending Swift Data Types ... 478

11.7 ... Generic Extensions ... 480

11.8 ... Summary ... 482

12 ... Error Handling ... 483

12.1 ... Understanding Errors in Swift ... 484

12.2 ... Throwing Errors ... 486

12.3 ... Catching Errors ... 492

12.4 ... Cleanup with Defer ... 504

12.5 ... Runtime Checks ... 508

12.6 ... Summary ... 513

13 ... File Handling ... 515

13.1 ... Text Files ... 515

13.2 ... Binary Files ... 522

13.3 ... Working with Common Formats ... 529

13.4 ... File System Operations ... 542

13.5 ... Summary ... 554

14 ... Concurrency ... 555

14.1 ... What Is Concurrency? ... 555

14.2 ... Async Functions ... 557

14.3 ... Tasks ... 569

14.4 ... Async Streams ... 588

14.5 ... Shared State Safety ... 593

14.6 ... Summary ... 606

15 ... Modules in Swift ... 607

15.1 ... Introduction to Modules ... 607

15.2 ... Working with Frameworks ... 613

15.3 ... Working with Packages ... 621

15.4 ... Access Control ... 629

15.5 ... Summary ... 631

16 ... Conclusion ... 633

Appendices ... ... 635

A ... Unit Testing ... 635

B ... Debugging ... 655

C ... The Author ... 673

... Index ... 675


Koseoglu, Kerem
Dr. Kerem Koseoglu is a freelance SAP software architect, working professionally since 2000. He specializes in the development of comprehensive applications using design patterns and also conducts technical training related to design patterns. He has participated in global software development projects, taking diverse roles including lead architect, team lead, developer, technical advisor, instructor, and project manager. His former publications include four books and countless articles for technical magazines in Turkey. He has a Ph.D. in organizational behavior.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.