دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: [6 ed.]
نویسندگان: JON HOFFMAN
سری:
ISBN (شابک) : 9781800562158, 1800562152
ناشر: PACKT PUBLISHING LIMITED
سال نشر: 2020
تعداد صفحات: [419]
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 4 Mb
در صورت تبدیل فایل کتاب MASTERING SWIFT 5.3 : upgrade your knowledge and become an expert in the latest... version of the swift programming language. به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب تسلط بر SWIFT 5.3: دانش خود را ارتقا دهید و در آخرین نسخه... زبان برنامه نویسی سوئیفت متخصص شوید. نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
راهنمای جامع برای علاقه مندان به برنامه نویسی که مایل به تسلط کامل بر اصول و مفاهیم پیشرفته سوئیفت هستند ویژگی های کلیدی ویرایش ششم این کتاب پرفروش، بهبود یافته و به روز شده تا آخرین نسخه زبان برنامه نویسی Swift 5.3 را پوشش دهد. با محبوب و مدرن آشنا شوید. تکنیکهای طراحی برای نوشتن کد سوئیفت با مدیریت آسان استفاده از ویژگیهای اصلی سوئیفت مانند همزمانی، کلیات و کپی روی نوشتن در کد خود شرح کتاب در طول سالها، Mastering Swift خود را در بین توسعهدهندگان به عنوان یک انتخاب محبوب برای راهنمای عمیق و کاربردی زبان برنامه نویسی سویفت. این نسخه ششم با جدیدترین ویژگیها، یک بازنگری کلی برای هماهنگی با Swift 5.3 و دو فصل جدید در ساخت سوئیفت از اپراتورهای منبع و پیشرفته ارائه میشود. از اصول اولیه زبان گرفته تا ویژگی های محبوب مانند همزمانی، ژنریک و مدیریت حافظه، این راهنمای عمیق به شما کمک می کند تا تخصص و تسلط خود را بر زبان توسعه دهید. همانطور که پیشرفت می کنید، بینش عملی در مورد برخی از پیچیده ترین عناصر در توسعه سوئیفت، از جمله برنامه های افزودنی پروتکل، مدیریت خطا، و بسته شدن به دست خواهید آورد. این کتاب همچنین به شما نشان می دهد که چگونه از آنها در پروژه های خود استفاده و به کار ببرید. در فصلهای بعدی، نحوه استفاده از قدرت برنامهنویسی مبتنی بر پروتکل برای نوشتن کدهای انعطافپذیر و آسانتر برای مدیریت در سوئیفت را خواهید فهمید. در نهایت، یاد خواهید گرفت که چگونه ویژگی کپی در نوشتن را به انواع ارزش سفارشی خود اضافه کنید، همراه با درک نحوه جلوگیری از مشکلات مدیریت حافظه ناشی از چرخه های مرجع قوی. در پایان این کتاب سریع، شما به زبان Swift 5.3 تسلط خواهید داشت و مهارتهایی را که برای استفاده مؤثر از ویژگیهای آن برای ساخت برنامههای کاربردی قوی نیاز دارید، توسعه خواهید داد. آنچه خواهید آموخت درک اجزای اصلی سوئیفت، مانند عملگرها، مجموعهها، جریانهای کنترل و توابع شناسایی نحوه و زمان استفاده از کلاسها، ساختارها و شمارشها استفاده از طراحی پروتکلمدار با برنامههای افزودنی برای نوشتن کد با مدیریت آسانتر الگوهای طراحی اهرمی با استفاده از Swift برای حل مشکلات طراحی رایج، کپی در نوشتن را برای انواع ارزش سفارشی خود اعمال کنید تا عملکرد را بهبود بخشد. برای مبتدیان با درک اولیه از برنامه نویسی و توسعه دهندگان با تجربه ای است که به دنبال یادگیری برنامه نویسی Swift هستند. آشنایی با ابزارهای اپل مفید خواهد بود اما اجباری نیست. همه نمونه ها باید روی پلتفرم های لینوکس و ویندوز نیز کار کنند
A comprehensive guide for programming enthusiasts who wish to gain a firm command of the fundamentals and advanced Swift concepts Key features Sixth edition of this bestselling book, improved and updated to cover the latest version of the Swift 5.3 programming language Get to grips with popular and modern design techniques to write easy-to-manage Swift code Use core Swift features such as concurrency, generics, and copy-on-write in your code Book Description Over the years, Mastering Swift has proven itself among developers as a popular choice for an in-depth and practical guide to the Swift programming language. This sixth edition comes with the latest features, an overall revision to align with Swift 5.3, and two new chapters on building swift from source and advance operators. From the basics of the language to popular features such as concurrency, generics, and memory management, this in-depth guide will help you develop your expertise and mastery of the language. As you progress, you will gain practical insights into some of the most sophisticated elements in Swift development, including protocol extensions, error handling, and closures. The book will also show you how to use and apply them in your own projects. In later chapters, you will understand how to use the power of protocol-oriented programming to write flexible and easier-to-manage code in Swift. Finally, you will learn how to add the copy-on-write feature to your custom value types, along with understanding how to avoid memory management issues caused by strong reference cycles. By the end of this swift book, you will have mastered the Swift 5.3 language and developed the skills you need to effectively use its features to build robust applications. What you will learn Understand core Swift components, such as operators, collections, control flows, and functions Identify how and when to use classes, structures, and enumerations Use protocol-oriented design with extensions to write easier-to-manage code Leverage design patterns with Swift to solve commonly occurring design problems Apply copy-on-write for your custom value types to improve performance Add concurrency to your applications using Grand Central Dispatch and Operation Queues Implement generics to write flexible and reusable code Who this book is for This book is for beginners with a basic understanding of programming and experienced developers looking to learn Swift programming. Familiarity with Apple's tools will be beneficial but not mandatory. All examples should also work on the Linux and Windows platforms
Cover Copyright Packt Page Contributors Table of Contents Preface Chapter 1: Taking the First Steps with Swift What is Swift? Swift features Playgrounds Getting started with playgrounds iOS, tvOS, and macOS playgrounds Creating and displaying graphs in playgrounds What playgrounds are not Swift language syntax Comments Semicolons Parentheses Curly brackets An assignment operator does not return a value Spaces are optional in conditional and assignment statements Hello World Summary Chapter 2: Swift Documentation and Installing Swift Swift.org Swift documentation Installing Swift from swift.org Building Swift and the Swift toolchain from source Installing dependencies Swift source Building Swift Installing Swift Testing the installation Using the Swift package manager Using the Swift compiler Summary Chapter 3: Learning about Variables, Constants, Strings, and Operators Constants and variables Defining constants and variables Type safety Type inference Explicit types Numeric types Integer types Floating-point and Double values The Boolean type The String type Tuples Enumerations Operators The assignment operator Comparison operators Arithmetic operators The remainder operator Compound assignment operators The closed range operator The half-open range operator The ternary conditional operator The logical NOT operator The logical AND operator The logical OR operator Summary Chapter 4: Optional Types Introducing optionals The need for optional types in Swift Defining an optional Using optionals Forced unwrapping of an optional Optional binding Optional types with tuples Optional chaining The nil coalescing operator Summary Chapter 5: Using Swift Collections Swift collection types Mutability Arrays Creating and initializing arrays Accessing the array element Counting the elements of an array Is the array empty? Shuffling an array Appending to an array Inserting a value into an array Replacing elements in an array Removing elements from an array Merging two arrays Retrieving a subarray from an array Making bulk changes to an array Algorithms for arrays Sort Sorted Filter Map Count Diff forEach Iterating over an array Dictionaries Creating and initializing dictionaries Accessing dictionary values Counting the keys or values in a dictionary Is the dictionary empty? Updating the value of a key Adding a key-value pair Removing a key-value pair Set Initializing a set Inserting items into a set Determining the number of items in a set Checking whether a set contains an item Iterating over a set Removing items in a set Set operations Summary Chapter 6: Control Flow What have we learned so far? Curly brackets Parentheses Control flow Conditional statements The if statement Conditional code execution with the if...else statement The guard statement The switch statement Match on wildcard Loops The for-in loop Using the for-in loop The while loop Using the while loop Using the repeat-while loop Using case and where statements with conditional statements and loops Filtering with the where statement Filtering with the for-case statement Using the if-case statement Control transfer statements The continue statement The break statement The fallthrough statement Summary Chapter 7: Functions Using a single-parameter function Using a multi-parameter function Defining a parameter's default values Returning multiple values from a function Adding external parameter names Using variadic parameters inout parameters Omitting argument labels Putting it all together Summary Chapter 8: Classes, Structures, and Protocols What are classes and structures? Similarities between classes and structures Differences between classes and structures Value versus reference types Creating a class or structure Properties Stored properties Computed properties Property observers Methods Custom initializers Internal and external parameter names Failable initializers Access controls Key-path expressions as functions Calling a type as a function Inheritance Overriding methods and properties Overriding methods Overriding properties Preventing overrides Protocols Protocol syntax Property requirements Method requirements Extensions Property wrappers Optional chaining Summary Chapter 9: Protocols and Protocol Extensions Protocols as types Polymorphism with protocols Typecasting with protocols Protocol extensions A real-world example Do I need to use protocols? Adopting protocols using a synthesized implementation Swift's standard library Summary Chapter 10: Protocol-Oriented Design Requirements Object-oriented design Protocol-oriented design Protocol inheritance Protocol composition Protocol-oriented design – putting it all together Using the where statement with protocols Structures versus classes Summary Chapter 11: Generics Introducing generics Generic functions Generic types Conditionally adding extensions with generics Conditionally adding functions Conditional conformance Generic subscripts Associated types Summary Chapter 12: Error Handling and Availability Native error handling Representing errors Throwing errors Catching errors Multi-pattern catch clauses The availability attribute Summary Chapter 13: Custom Subscripting Introducing subscripts Subscripts with Swift arrays Creating and using custom subscripts Read-only custom subscripts Calculated subscripts Subscript values Static subscripts External names for subscripts Multidimensional subscripts Dynamic member lookup When not to use a custom subscript Summary Chapter 14: Working with Closures An introduction to closures Simple closures Shorthand syntax for closures Using closures with Swift arrays Using closures with Swift's array algorithms Non-contiguous elements from an array Uninitialized arrays Changing functionality Selecting a closure based on results Summary Chapter 15: Advanced and Custom Operators Bits and bytes Endianness Bitwise operators Printing binary numbers The bitwise AND operator The bitwise OR operator The bitwise XOR operator The bitwise NOT operator Bitwise shift operators Overflow operators Operator methods Custom operators Summary Chapter 16: Concurrency and Parallelism in Swift Concurrency and parallelism Grand Central Dispatch (GCD) Calculation types Creating queues Creating and using a concurrent queue Creating and using a serial queue async versus sync Executing code on the main queue function Using asyncAfter Using the Operation and OperationQueue types Using BlockOperation Using the addOperation() method of the operation queue Subclassing the Operation class Summary Chapter 17: Custom Value Types Value types and reference types Recursive data types for reference types Inheritance for reference types Dynamic dispatch Copy-on-write Implementing the Equatable protocol Summary Chapter 18: Memory Management How ARC works Strong reference cycles Unowned references Weak references Summary Chapter 19: Swift Formatting and Style Guide What is a programming style guide? API Design Guide Your style guide Do not use semicolons at the end of statements Do not use parentheses for conditional statements Naming Indenting Comments Using the self keyword Constants and variables Optional types Using type inference Using shorthand declarations for collections Using switch rather than multiple if statements Don't leave commented-out code in your application Summary Chapter 20: Adopting Design Patterns in Swift What are design patterns? Creational design patterns The singleton pattern Understanding the problem Understanding the solution Implementing the singleton pattern The builder pattern Understanding the problem Understanding the solution Implementing the builder pattern Structural design patterns The bridge pattern Understanding the problem Understanding the solution Implementing the bridge pattern The facade pattern Understanding the problem Understanding the solution Implementing the facade pattern The proxy pattern Understanding the problem Understanding the solution Implementing the proxy pattern Behavioral design patterns The command pattern Understanding the problem Understanding the solution Implementing the command pattern The strategy pattern Understanding the problem Understanding the solution Implementing the strategy pattern Summary Other Books You May Enjoy Index