Programowanie
Niezależnie czy dopiero rozpoczynacie swoją przygodę z programowaniem, czy jesteście już uznanymi na rynku profesjonalistami, to w kategorii Programowanie na pewno znajdziecie podręczniki, które pomogą Wam w przebiegu pracy, czy też w nauce podstaw programowania.
W książkach z tego działu zawarta jest wiedza zarówno związana z czysto technicznymi sprawami typu składnia języków, ale także z umiejętnościami bardziej "miękkimi" jak obsługa i wykorzystanie pełnych możliwości środowisk programistycznych, czy też projektowanie oprogramowania lub metody numeryczne czy oraz struktury danych.
Marcin Jamro
Projektowanie aplikacji jest wymagającym zadaniem, zwłaszcza jeśli trzeba rozwiązywać złożone problemy. W takich przypadkach należy mieć na uwadze również wydajność kodu, aby program działał płynnie na urządzeniach o ograniczonych zasobach. Takie zadania bywają naprawdę trudne i wymagają wiedzy, w tym dotyczącej struktur danych i algorytmów. Tę praktyczną książkę docenią programiści C#. Zaczniesz od zapoznania się z zasadami działania algorytmów, aby później przejść do różnych struktur danych: tablic, list, stosów, kolejek, słowników i zbiorów. Poszczególne przykłady zostały zilustrowane fragmentami kodu i rysunkami. Opanujesz także sortowanie tablic przy użyciu rozmaitych algorytmów, co solidnie ugruntuje Twoje umiejętności. Następnie poznasz bardziej złożone struktury danych i algorytmy służące do różnych zadań, jak wyznaczanie najkrótszej ścieżki w grafie czy rozwiązywanie łamigłówek. W ten sposób nauczysz się budować w języku C# komponenty algorytmiczne, które bez problemu zastosujesz w rozmaitych aplikacjach, również internetowych i na platformy mobilne. Z tą książką nauczysz się: podstaw algorytmów i ich klasyfikacji przechowywać dane w ustrukturyzowany sposób budować aplikacje wzbogacone o stosy, kolejki, tablice z haszowaniem, słowniki i zbiory tworzyć wydajne aplikacje z użyciem algorytmów związanych z drzewami podnosić wydajność swoich rozwiązań przy użyciu grafów implementować algorytmy pozwalające rozwiązywać łamigłówki i generować fraktale Kilkusetkrotne zwiększenie wydajności kodu na wyciągnięcie ręki!
Struktury danych i algorytmy w języku Java. Przewodnik dla początkujących
James Cutajar
Aby aplikacje mogły spełniać oczekiwania dotyczące wydajności i szybkości działania, programista musi orientować się w typowych problemach z wykonywaniem kodu i wiedzieć, które techniki sprawdzą się w danej sytuacji. W tym celu powinien biegle posługiwać się algorytmami i strukturami danych. Wiedza ta umożliwia rozpoznawanie typowych zagrożeń i wybór najlepszych rozwiązań. Warto pamiętać, że w przypadku większości codziennych problemów z kodem istnieją już wypróbowane rozwiązania. Znajomość tych zagadnień jest niezwykle ważna dla każdego inżyniera oprogramowania. To książka przeznaczona dla programistów, którzy chcą w praktyczny sposób posługiwać się popularnymi algorytmami i strukturami danych, zrozumieć ich działanie i skuteczniej poprawiać wydajność swojego kodu w Javie. Przedstawiono tu narzędzia przydatne w pracy z algorytmami i w tworzeniu efektywnych aplikacji. Opisano praktyczne aspekty złożoności algorytmów. Omówiono algorytmy sortowania oraz inne popularne wzorce programowania, a także takie struktury danych jak drzewa binarne, tablice z haszowaniem i grafy. Następnie zaprezentowano koncepcje bardziej zaawansowane, wśród nich paradygmaty projektowania algorytmów i teorię grafów. W tej książce między innymi: definiowanie algorytmu i złożoność algorytmiczna struktury danych i ich implementacje algorytmy sortowania i wyszukiwania wzorca w tekście paradygmaty projektowania algorytmów grafy i sposoby ich reprezentacji w programach komputerowych grafy jako moduły do budowy złożonych algorytmów Algorytm i struktura danych: tak działa optymalny kod!
Struktury danych i algorytmy w języku Java. Przewodnik dla początkujących
James Cutajar
Aby aplikacje mogły spełniać oczekiwania dotyczące wydajności i szybkości działania, programista musi orientować się w typowych problemach z wykonywaniem kodu i wiedzieć, które techniki sprawdzą się w danej sytuacji. W tym celu powinien biegle posługiwać się algorytmami i strukturami danych. Wiedza ta umożliwia rozpoznawanie typowych zagrożeń i wybór najlepszych rozwiązań. Warto pamiętać, że w przypadku większości codziennych problemów z kodem istnieją już wypróbowane rozwiązania. Znajomość tych zagadnień jest niezwykle ważna dla każdego inżyniera oprogramowania. To książka przeznaczona dla programistów, którzy chcą w praktyczny sposób posługiwać się popularnymi algorytmami i strukturami danych, zrozumieć ich działanie i skuteczniej poprawiać wydajność swojego kodu w Javie. Przedstawiono tu narzędzia przydatne w pracy z algorytmami i w tworzeniu efektywnych aplikacji. Opisano praktyczne aspekty złożoności algorytmów. Omówiono algorytmy sortowania oraz inne popularne wzorce programowania, a także takie struktury danych jak drzewa binarne, tablice z haszowaniem i grafy. Następnie zaprezentowano koncepcje bardziej zaawansowane, wśród nich paradygmaty projektowania algorytmów i teorię grafów. W tej książce między innymi: definiowanie algorytmu i złożoność algorytmiczna struktury danych i ich implementacje algorytmy sortowania i wyszukiwania wzorca w tekście paradygmaty projektowania algorytmów grafy i sposoby ich reprezentacji w programach komputerowych grafy jako moduły do budowy złożonych algorytmów Algorytm i struktura danych: tak działa optymalny kod!
Struktury danych i algorytmy w języku Java. Przewodnik dla początkujących
James Cutajar
Aby aplikacje mogły spełniać oczekiwania dotyczące wydajności i szybkości działania, programista musi orientować się w typowych problemach z wykonywaniem kodu i wiedzieć, które techniki sprawdzą się w danej sytuacji. W tym celu powinien biegle posługiwać się algorytmami i strukturami danych. Wiedza ta umożliwia rozpoznawanie typowych zagrożeń i wybór najlepszych rozwiązań. Warto pamiętać, że w przypadku większości codziennych problemów z kodem istnieją już wypróbowane rozwiązania. Znajomość tych zagadnień jest niezwykle ważna dla każdego inżyniera oprogramowania. To książka przeznaczona dla programistów, którzy chcą w praktyczny sposób posługiwać się popularnymi algorytmami i strukturami danych, zrozumieć ich działanie i skuteczniej poprawiać wydajność swojego kodu w Javie. Przedstawiono tu narzędzia przydatne w pracy z algorytmami i w tworzeniu efektywnych aplikacji. Opisano praktyczne aspekty złożoności algorytmów. Omówiono algorytmy sortowania oraz inne popularne wzorce programowania, a także takie struktury danych jak drzewa binarne, tablice z haszowaniem i grafy. Następnie zaprezentowano koncepcje bardziej zaawansowane, wśród nich paradygmaty projektowania algorytmów i teorię grafów. W tej książce między innymi: definiowanie algorytmu i złożoność algorytmiczna struktury danych i ich implementacje algorytmy sortowania i wyszukiwania wzorca w tekście paradygmaty projektowania algorytmów grafy i sposoby ich reprezentacji w programach komputerowych grafy jako moduły do budowy złożonych algorytmów Algorytm i struktura danych: tak działa optymalny kod!
Stwórz Grę Aplikacje Mobilne ES6+ JavaScript React Native - Hooks
poswojsku.pl
Witaj w poradniku wydawnictwa poswojsku.pl, dzięki któremu wspólnie zaprogramujemy grę mobilną Falling Jumping Shapes. Stworzymy projekt od pomysłu przez grafikę, aż do kompleksowego zaprogramowania w najwspanialszym języku programowania: JavaScript. Aby jednak to osiągnąć, najpierw nauczę Ciebie podstaw kilku niesamowitych technologii: nowoczesnej odmiany JavaScript, czyli tzw. ES6+, React Native, React, CSS w wersji do aplikacji mobilnej, Android. Aplikacje będziemy tworzyli w IDE: VSCodium lub możesz użyć inny edytor kodu, np. Visual Studio Code. Poradnik zawiera kod gry wraz z omówieniem oraz podstawową wiedzę niezbędną do tworzenia aplikacji mobilnych za pomocą frameworka React Native - Część II Aplikacje Mobilne Wprowadzenie. Ale jeżeli posiadasz już podstawy wiedzy, możesz od razu przejść do tworzenia gry. OPIS GRY DO WYKONANIA Planujemy zbudować grę, posiadającą trzy poziomy, a właściwie warianty: prosty - nazwijmy go SIMPLE oraz przypiszmy do niego oznaczenie 'zero' trudniejszy - nazwijmy go MEDIUM oraz przypiszmy do niego oznaczenie 'one' nieco szalony - nazwijmy go CRAZY oraz przypiszmy do niego oznaczenie 'two' Użyłem określenia 'warianty' a nie poziomy, gdyż można uruchomić każdy z nich bez względu na przejście przez poprzedni. Technicznie rzecz ujmując będą to trzy zupełnie niezależne od siebie gry, ale oparte na podobnym wyglądzie oraz grafice. Gracz będzie miał za zadanie kliknięcie w spadającą kulkę, tyle razy, aby wyszła za jedną z bocznych krawędzi. Zasady gry są bardzo proste: Wybierając z menu nawigacyjnego jeden z wariantów, Gracz rozpocznie grę, Po kliknięciu w przycisk START GAME pojawia się na górnej krawędzi kulka o losowym kolorze, Kulka opada powoli w dół, Gracz ma za zadanie kliknąć kulkę, a ona za każdym kliknięciem zmienia swoją pozycję w poziomie (w sposób losowy w lewo lub prawo - zgodnie z logiką zapisaną w kodzie JavaScript), Gdy kulka wyjedzie za lewą lub prawą krawędź - Gracz uzyskuje punkt - trzeba: uruchomić Zliczanie Punktów, kulka ponownie musi wrócić powyżej górnej krawędzi, aby rozpocząć swobodne spadanie, ale już w innym kolorze oraz z większą szybkością niż poprzednio, Gracza trzeba poinformować o liczbie punktów, Gracza trzeba poinformować o tym, że idzie mu dobrze, Gdy kulka spadnie poniżej dolnej krawędzi, Gracz nie uzyskuje punktu: kulka ponownie musi wrócić powyżej górnej krawędzi, aby rozpocząć spadanie, ale już w innym kolorze, Gracza trzeba poinformować o tym, że nie wykonał poprawnie kliknięć w spadający obiekt, granicznik - maksymalna liczba punktów - po uzyskaniu określonej, założonej przez programistę liczby punktów, kończy się gra: Gracza trzeba poinformować, że gra się zakończyła bo uzyskał określoną liczbę punktów, Na ekranie powinien znowu pojawić się napis START GAME, gdyby chciał Gracz zagrać ponownie. INNE ?? tutaj jest miejsce na dalszy rozwój gry - dla Ciebie oraz Twojej kreatywności :).
Stwórz grę w Unity, a nauczysz się programowania w C#! Pisanie kodu, które sprawia radość. Wydanie V
Harrison Ferrone
Unity jest zaawansowanym środowiskiem przeznaczonym do tworzenia gier 3D. Równocześnie może stanowić początek wspaniałej przygody z C#, który jest nowoczesnym i wszechstronnym językiem programowania. Taka ścieżka nauki pozwala na uniknięcie niezrozumiałego dla początkujących żargonu czy niejasnej logiki programowania. Poszczególne konstrukcje języka i ich zastosowanie nagle stają się proste - dzięki niestandardowym skryptom pisanym w C# można rozszerzyć możliwości Unity i tworzyć wciągające, świetnie wyglądające gry. Oto sposób na przyjemną i angażującą, a przy tym skuteczną naukę programowania! To piąte, uzupełnione i zaktualizowane wydanie cenionego podręcznika, dzięki któremu poznasz od podstaw koncepcje programowania w języku C#, dowiesz się, czym są zmienne i klasy, a także jakie są zasady programowania zorientowanego obiektowo. Po zapoznaniu się z elementarzem C# przejdziesz do tworzenia gier w Unity. Nauczysz się tworzyć skrypty obsługi prostej mechaniki gry i zdobędziesz praktyczne doświadczenie w programowaniu zgodnym z najlepszymi praktykami kodowania. A tym samym wejdziesz na wyższy poziom w zakresie posługiwania się Unity i językiem C#. Po uważnej lekturze zdobędziesz umiejętności potrzebne do realizacji projektów własnych gier w Unity i C#. W książce między innymi: precyzyjne przykłady przydatne w nauce podstaw programowania w języku C# skrypty i ich implementacja w Unity tworzenie podstawowych mechanizmów gier interfejsy, klasy abstrakcyjne, stosy, kolejki, obsługa wyjątków i błędów w C# podstawy sztucznej inteligencji do zastosowania w grach Ciekawość to pierwszy krok do programowania!
Harrison Ferrone
Unity to jeden z najpopularniejszych silników do tworzenia gier. Równocześnie, pracując w tym środowisku, możesz się nauczyć programowania w C#, który jest nowoczesnym i wszechstronnym językiem. Podczas pisania skryptów potrzebnych do zbudowania gry poszczególne konstrukcje języka i ich zastosowanie nagle stają się proste i zrozumiałe. Dzięki nim można zaimplementować niestandardowe zachowania i mechanikę gry, i to na poziomie profesjonalnej, grywalnej gry! I właśnie taki jest cel tej książki - nauka bloków budulcowych programowania i języka C# od podstaw. Oto siódme, uzupełnione i zaktualizowane wydanie cenionego podręcznika (dodano do niego kilka nowych rozdziałów). Dzięki lekturze poznasz od podstaw koncepcje programowania w języku C# i płynnie przejdziesz do tworzenia gier w Unity. Nauczysz się pisać skrypty implementujące prostą mechanikę gier, programować proceduralnie i zwiększać złożoność swoich gier poprzez wprowadzanie inteligentnych nieprzyjaciół i pocisków zadających obrażenia. W kolejnych rozdziałach poznasz coraz ciekawsze możliwości Unity, niezbędne w projektowaniu gier, takie jak sterowanie oświetleniem, ruchami gracza, kamerą, programowanie kolizji i wiele innych. W książce między innymi: podstawy programowania, w tym programowania zorientowanego obiektowego w języku C# przykłady skryptów C# w środowisku Unity interfejsy, klasy abstrakcyjne i rozszerzenia klas tworzenie dokumentu projektu gry i podstawowych mechanizmów gier stosy, kolejki, wyjątki, obsługa błędów formaty XML i JSON i ich zastosowanie Mistrz programowania zaczynał od pisania gier!
A B Vijay Kumar
GraalVM is a universal virtual machine that allows programmers to compile and run applications written in both JVM and non-JVM languages. It improves the performance and efficiency of applications, making it an ideal companion for cloud-native or microservices-based applications.This book is a hands-on guide, with step-by-step instructions on how to work with GraalVM. Starting with a quick introduction to the GraalVM architecture and how things work under the hood, you'll discover the performance benefits of running your Java applications on GraalVM. You'll then learn how to create native images and understand how AOT (ahead-of-time) can improve application performance significantly. The book covers examples of building polyglot applications that will help you explore the interoperability between languages running on the same VM. You'll also see how you can use the Truffle framework to implement any language of your choice to run optimally on GraalVM.By the end of this book, you'll not only have learned how GraalVM is beneficial in cloud-native and microservices development but also how to leverage its capabilities to create high-performing polyglot applications.
Hila Paz Herszfang, Peter V. Henstock, Mike...
Software development is being transformed by GenAI tools, such as ChatGPT, OpenAI API, and GitHub Copilot, redefining how developers work. This book will help you become a power user of GenAI for Python code generation, enabling you to write better software faster. Written by an ML advisor with a thriving tech social media presence and a top AI leader who brings Harvard-level instruction to the table, this book combines practical industry insights with academic expertise.With this book, you'll gain a deep understanding of LLMs and develop a systematic approach to solving complex tasks with AI. Through real-world examples and practical exercises, you’ll master best practices for leveraging GenAI, including prompt engineering techniques like few-shot learning and Chain-of-Thought (CoT).Going beyond simple code generation, this book teaches you how to automate debugging, refactoring, performance optimization, testing, and monitoring. By applying reusable prompt frameworks and AI-driven workflows, you’ll streamline your SDLC and produce high-quality, well-structured code.By the end of this book, you'll know how to select the right AI tool for each task, boost efficiency, and anticipate your next coding moves—helping you stay ahead in the AI-powered development era.*Email sign-up and proof of purchase required
Taylor Smith
Supervised machine learning is used in a wide range of sectors, such as finance, online advertising, and analytics, to train systems to make pricing predictions, campaign adjustments, customer recommendations, and much more by learning from the data that is used to train it and making decisions on its own. This makes it crucial to know how a machine 'learns' under the hood.This book will guide you through the implementation and nuances of many popular supervised machine learning algorithms, and help you understand how they work. You’ll embark on this journey with a quick overview of supervised learning and see how it differs from unsupervised learning. You’ll then explore parametric models, such as linear and logistic regression, non-parametric methods, such as decision trees, and a variety of clustering techniques that facilitate decision-making and predictions. As you advance, you'll work hands-on with recommender systems, which are widely used by online companies to increase user interaction and enrich shopping potential. Finally, you’ll wrap up with a brief foray into neural networks and transfer learning.By the end of this book, you’ll be equipped with hands-on techniques and will have gained the practical know-how you need to quickly and effectively apply algorithms to solve new problems.
Sustainable Cloud Development. Optimize cloud workloads for environmental impact in the GenAI era
Parth Girish Patel, Ishneet Kaur Dua, Steven...
Written by three seasoned AWS solution architects, sustainability mentors, and thought leaders, Sustainable Cloud Development equips cloud professionals with actionable strategies to design, build, and optimize workloads that minimize environmental impact, while maintaining performance and scalability.This book combines practical insights, best practices, and case studies to help you align your cloud operations with global sustainability goals. From foundational concepts such as carbon footprint measurement to advanced techniques such as sustainable software architecture, generative AI lifecycle optimization, and cost-efficient cloud practices, this book covers every aspect of sustainable cloud development. You’ll get to grips with key tools, including AWS Cost Explorer, for analyzing costs and usage over time to right-size deployments; auto scaling for automatically scaling compute resources dynamically based on demand; Amazon Trusted Advisor for reviewing optimization recommendations across critical areas such as cost, performance, and security; and Amazon CloudWatch for detailed monitoring and threshold-based alerting around all resources and applications.This book serves as a practical blueprint for optimizing your cloud workloads for both high performance and a minimal environmental footprint.
Sustainable Cloud Development. Optimize cloud workloads for environmental impact in the GenAI era
Parth Girish Patel, Ishneet Kaur Dua, Steven...
Written by three seasoned AWS solution architects, sustainability mentors, and thought leaders, Sustainable Cloud Development equips cloud professionals with actionable strategies to design, build, and optimize workloads that minimize environmental impact, while maintaining performance and scalability.This book combines practical insights, best practices, and case studies to help you align your cloud operations with global sustainability goals. From foundational concepts such as carbon footprint measurement to advanced techniques such as sustainable software architecture, generative AI lifecycle optimization, and cost-efficient cloud practices, this book covers every aspect of sustainable cloud development. You’ll get to grips with key tools, including AWS Cost Explorer, for analyzing costs and usage over time to right-size deployments; auto scaling for automatically scaling compute resources dynamically based on demand; Amazon Trusted Advisor for reviewing optimization recommendations across critical areas such as cost, performance, and security; and Amazon CloudWatch for detailed monitoring and threshold-based alerting around all resources and applications.This book serves as a practical blueprint for optimizing your cloud workloads for both high performance and a minimal environmental footprint.
Daniel Irvine
Svelte is a popular front-end framework used for its focus on performance and user-friendliness, and test-driven development (TDD) is a powerful approach that helps in creating automated tests before writing code. By combining them, you can create efficient, maintainable code for modern applications. Svelte with Test-Driven Development will help you learn effective automated testing practices to build and maintain Svelte applications.In the first part of the book, you’ll find a guided walkthrough on building a SvelteKit application using the TDD workflow. You’ll uncover the main concepts for writing effective unit test cases and practical advice for developing solid, maintainable test suites that can speed up application development while remaining effective as the application evolves. In the next part of the book, you’ll focus on refactoring and advanced test techniques, such as using component mocks and writing BDD-style tests with the Cucumber.js framework. In the final part of the book, you’ll explore how to test complex application and framework features, including authentication, Svelte stores, and service workers.By the end of this book, you’ll be well-equipped to build test-driven Svelte applications by employing theoretical and practical knowledge.
Dylan Hildenbrand
The JavaScript ecosystem has grown vast, complex, and daunting for newcomers. Fortunately, SvelteKit has emerged, simplifying the process of building JavaScript-based web applications. This book aims to demystify SvelteKit, making it as approachable as it makes web app development.With SvelteKit Up and Running you’ll be introduced to the philosophy and technologies underlying SvelteKit. First, you’ll follow a standard educational programming approach, progressing to a 'Hello World' application. Next, you’ll explore the fundamental routing techniques, data loading management, and user submission, all through real-world scenarios commonly encountered in day-to-day development, before discovering various adapters employed by SvelteKit to seamlessly integrate with diverse environments. You’ll also delve into advanced concepts like dynamic route management, error handling, and leveraging SvelteKit to optimize SEO and accessibility.By the end of this book, you’ll have mastered SvelteKit and will be well-equipped to navigate the complexities of web app development.
Swift 2 By Example. Create robust and extensible iOS apps using the advanced features of Swift 2
Giordano Scalzo
Swift is no longer the unripe language it was when launched by Apple at WWDC14, now it’s a powerful and ready-for-production programming language that has empowered most new released apps.Swift is a user-friendly language with a smooth learning curve; it is safe, robust, and really flexible.Swift 2 is more powerful than ever; it introduces new ways to solve old problems, more robust error handling, and a new programming paradigm that favours composition over inheritance.Swift 2 by Example is a fast-paced, practical guide to help you learn how to develop iOS apps using Swift. Through the development of seven different iOS apps and one server app, you’ll find out how to use either the right feature of the language or the right tool to solve a given problem.We begin by introducing you to the latest features of Swift 2, further kick-starting your app development journey by building a guessing game app, followed by a memory game. It doesn’t end there, with a few more apps in store for you: a to-do list, a beautiful weather app, two games: Flappy Swift and Cube Runner, and finally an ecommerce app to top everything off. By the end of the book, you’ll be able to build well-designed apps, effectively use AutoLayout, develop videogames, and build server apps.
Swift 3 Game Development. Build iOS 10 Games with Swift 3.0 - Second Edition
Stephen Haney
Swift is the perfect choice for game development. Developers are intrigued by Swift 3.0 and want to make use of new features to develop their best games yet. Packed with best practices and easy-to-use examples, this book leads you step by step through the development of your first Swift game.This book starts by introducing SpriteKit and Swift's new features that can be used for game development. After setting up your first Swift project, you will build your first custom class, learn how to draw and animate your game, and add physics simulations.Then, you will add the player character, NPCs, and powerups. To make your game more fun and engaging, you will learn how to set up scenes and backgrounds, build fun menus, and integrate with Apple Game Center to add leaderboards and achievements. You will then make your game stand out by adding animations when game objects collide, and incorporate proven techniques such as the advanced particle system and graphics. Finally, you will explore the various options available to start down the path towards monetization and publish your finished games to the App Store.By the end of this book, you will be able to create your own iOS games using Swift and SpriteKit.
Swift 3 Game Development. Build iOS 10 Games with Swift 3.0 - Second Edition
Stephen Haney
Swift is the perfect choice for game development. Developers are intrigued by Swift 3.0 and want to make use of new features to develop their best games yet. Packed with best practices and easy-to-use examples, this book leads you step by step through the development of your first Swift game.This book starts by introducing SpriteKit and Swift's new features that can be used for game development. After setting up your first Swift project, you will build your first custom class, learn how to draw and animate your game, and add physics simulations.Then, you will add the player character, NPCs, and powerups. To make your game more fun and engaging, you will learn how to set up scenes and backgrounds, build fun menus, and integrate with Apple Game Center to add leaderboards and achievements. You will then make your game stand out by adding animations when game objects collide, and incorporate proven techniques such as the advanced particle system and graphics. Finally, you will explore the various options available to start down the path towards monetization and publish your finished games to the App Store.By the end of this book, you will be able to create your own iOS games using Swift and SpriteKit.
Swift 3 New Features. Get up to date with what`s new in Swift 3
Keith Elliott
Since Swift was introduced by Apple in WWDC 2015, it has gone on to become one of the most beloved languages to develop iOS applications with. In the new version, the Swift team aimed to take its adoption to the next level by making it available for new platforms and audiences.This book will very quickly get you up to speed and productive with Swift 3. You will begin by understanding the process of submitting new feature requests for future versions of Swift. Swift 3 allows you to develop and run your applications on a Linux machine. Using this feature, you will write your first Linux application using the debugger in Linux. Using Swift migrator, you will initiate a conversion from Swift 2.2 to Swift 3. Further on, you will learn how to interact with Cocoa libraries when importing Objective C to Swift. You will explore the function and operator changes new to Swift 3, followed by Collection and Closure changes. You will also see the changes in Swift 3 that allow you write tests easier with XCTest and debug your running code better with new formats as well. Finally, you will have a running server written completely in Swift on a Linux box.By the end of the book, you will know everything you need to know to dive into Swift 3 and build successful projects.
Gastón C. Hillar
Swift has quickly become one of the most-liked languages and developers’ de-facto choice when building applications that target iOS and macOS. In the new version, the Swift team wants to take its adoption to the next level by making it available for new platforms and audiences.This book introduces the object-oriented paradigm and its implementation in the Swift 3 programming language to help you understand how real-world objects can become part of fundamental reusable elements in the code. This book is developed with XCode 8.x and covers all the enhancements included in Swift 3.0. In addition, we teach you to run most of the examples with the Swift REPL available on macOS and Linux, and with a Web-based Swift sandbox developed by IBM capable of running on any web browser, including Windows and mobile devices.You will organize data in blueprints that generate instances. You’ll work with examples so you understand how to encapsulate and hide data by working with properties and access control. Then, you’ll get to grips with complex scenarios where you use instances that belong to more than one blueprint. You’ll discover the power of contract programming and parametric polymorphism. You’ll combine generic code with inheritance and multiple inheritance. Later, you’ll see how to combine functional programming with object-oriented programming and find out how to refactor your existing code for easy maintenance.
Gastón C. Hillar
Swift has quickly become one of the most-liked languages and developers’ de-facto choice when building applications that target iOS and macOS. In the new version, the Swift team wants to take its adoption to the next level by making it available for new platforms and audiences.This book introduces the object-oriented paradigm and its implementation in the Swift 3 programming language to help you understand how real-world objects can become part of fundamental reusable elements in the code. This book is developed with XCode 8.x and covers all the enhancements included in Swift 3.0. In addition, we teach you to run most of the examples with the Swift REPL available on macOS and Linux, and with a Web-based Swift sandbox developed by IBM capable of running on any web browser, including Windows and mobile devices.You will organize data in blueprints that generate instances. You’ll work with examples so you understand how to encapsulate and hide data by working with properties and access control. Then, you’ll get to grips with complex scenarios where you use instances that belong to more than one blueprint. You’ll discover the power of contract programming and parametric polymorphism. You’ll combine generic code with inheritance and multiple inheritance. Later, you’ll see how to combine functional programming with object-oriented programming and find out how to refactor your existing code for easy maintenance.
Gastón C. Hillar
Swift has quickly become one of the most-liked languages and developers’ de-facto choice when building applications that target iOS and macOS. In the new version, the Swift team wants to take its adoption to the next level by making it available for new platforms and audiences.This book introduces the object-oriented paradigm and its implementation in the Swift 3 programming language to help you understand how real-world objects can become part of fundamental reusable elements in the code. This book is developed with XCode 8.x and covers all the enhancements included in Swift 3.0. In addition, we teach you to run most of the examples with the Swift REPL available on macOS and Linux, and with a Web-based Swift sandbox developed by IBM capable of running on any web browser, including Windows and mobile devices.You will organize data in blueprints that generate instances. You’ll work with examples so you understand how to encapsulate and hide data by working with properties and access control. Then, you’ll get to grips with complex scenarios where you use instances that belong to more than one blueprint. You’ll discover the power of contract programming and parametric polymorphism. You’ll combine generic code with inheritance and multiple inheritance. Later, you’ll see how to combine functional programming with object-oriented programming and find out how to refactor your existing code for easy maintenance.
Swift 4. Koduj jak mistrz. Wydanie IV
Jon Hoffman
Historia Swifta rozpoczęła się w 2014 r. Dziś jest najważniejszym językiem programowania dla platform macOS i iOS. Charakteryzuje się zwięzłą i przejrzystą składnią, jest przy tym wygodny i elastyczny, a jego nauka nie powinna sprawiać problemów nawet początkującym deweloperom. Od chwili jego powstania Apple co roku przedstawia nowe wydanie tego języka. Na konferencji WWDC w 2017 roku zaprezentowano wydanie o numerze 4, w którym wprowadzono sporo bardzo interesujących zmian. Każdy, kto chce pisać efektywne i bezpieczne aplikacje dla macOS i iOS, koniecznie powinien się z nimi zapoznać! Niniejsza książka jest praktycznym podręcznikiem efektywnego programowania w języku Swift 4. Znajdziesz tu wyjaśnienie podstaw języka, następnie poznasz nowe funkcje i nauczysz się z nich korzystać podczas tworzenia aplikacji. Poza dość zasadniczymi kwestiami przedstawiono tu również zagadnienia zaawansowane, takie jak łączenie w projekcie kodu Objective-C i Swift, wykorzystanie mechanizmu ARC, używanie domknięć i zastosowanie programowania równoległego. Bardzo ciekawymi tematami poruszonymi w książce są rozszerzenia protokołów, obsługa błędów, stosowanie wzorców projektowych i współbieżności. Poznasz potężne możliwości programowania zorientowanego na protokoły. Szybko nauczysz się pisać elastyczny i łatwy w zarządzaniu kod. W tej książce między innymi: składnia i elementy języka Swift kontrola przepływu działania programu tworzenie bezpiecznego kodu i obsługa błędów typy opcjonalne, typy generyczne i domknięcia zasady pisania eleganckiego i czytelnego kodu podstawowe biblioteki Swifta i wzorce projektowe Swift 4: programuj po mistrzowsku!
Swift 4. Koduj jak mistrz. Wydanie IV
Jon Hoffman
Historia Swifta rozpoczęła się w 2014 r. Dziś jest najważniejszym językiem programowania dla platform macOS i iOS. Charakteryzuje się zwięzłą i przejrzystą składnią, jest przy tym wygodny i elastyczny, a jego nauka nie powinna sprawiać problemów nawet początkującym deweloperom. Od chwili jego powstania Apple co roku przedstawia nowe wydanie tego języka. Na konferencji WWDC w 2017 roku zaprezentowano wydanie o numerze 4, w którym wprowadzono sporo bardzo interesujących zmian. Każdy, kto chce pisać efektywne i bezpieczne aplikacje dla macOS i iOS, koniecznie powinien się z nimi zapoznać! Niniejsza książka jest praktycznym podręcznikiem efektywnego programowania w języku Swift 4. Znajdziesz tu wyjaśnienie podstaw języka, następnie poznasz nowe funkcje i nauczysz się z nich korzystać podczas tworzenia aplikacji. Poza dość zasadniczymi kwestiami przedstawiono tu również zagadnienia zaawansowane, takie jak łączenie w projekcie kodu Objective-C i Swift, wykorzystanie mechanizmu ARC, używanie domknięć i zastosowanie programowania równoległego. Bardzo ciekawymi tematami poruszonymi w książce są rozszerzenia protokołów, obsługa błędów, stosowanie wzorców projektowych i współbieżności. Poznasz potężne możliwości programowania zorientowanego na protokoły. Szybko nauczysz się pisać elastyczny i łatwy w zarządzaniu kod. W tej książce między innymi: składnia i elementy języka Swift kontrola przepływu działania programu tworzenie bezpiecznego kodu i obsługa błędów typy opcjonalne, typy generyczne i domknięcia zasady pisania eleganckiego i czytelnego kodu podstawowe biblioteki Swifta i wzorce projektowe Swift 4: programuj po mistrzowsku!
Swift 4 Programming Cookbook. 50 task-oriented recipes to maximise Swift 4 productivity
Keith Moon
Swift 4 is an exciting, multi-platform, general-purpose programming language. Being open source, modern and easy to use has made Swift one of the fastest growing programming languages. If you interested in exploring it, then this book is what you need.The book begins with an introduction to the basic building blocks of Swift 4, its syntax and the functionalities of Swift constructs. Then, introduces you to Apple's Xcode 9 IDE and Swift Playgrounds, which provide an ideal platform to write, execute, and debug the codes thus initiating your development process. Next, you'll learn to bundle variables into tuples, set order to your data with an array, store key-value pairs with dictionaries and you'll learn how to use the property observers. Later, explore the decision-making and control structures in Swift and learn how to handle errors in Swift 4.Then you'll, examine the advanced features of Swift, generics and operators, and then explore the functionalities outside of the standard library, provided by frameworks such as Foundation and UIKit. Also, you'll explore advanced features of Swift Playgrounds. At the end of the book, you'll learn server-side programming aspect of Swift 4 and see how to run Swift on Linux and then investigate Vapor, one of the most popular server-side frameworks for Swift.
Swift 4 Programming Cookbook. 50 task-oriented recipes to maximise Swift 4 productivity
Keith Moon
Swift 4 is an exciting, multi-platform, general-purpose programming language. Being open source, modern and easy to use has made Swift one of the fastest growing programming languages. If you interested in exploring it, then this book is what you need.The book begins with an introduction to the basic building blocks of Swift 4, its syntax and the functionalities of Swift constructs. Then, introduces you to Apple's Xcode 9 IDE and Swift Playgrounds, which provide an ideal platform to write, execute, and debug the codes thus initiating your development process. Next, you'll learn to bundle variables into tuples, set order to your data with an array, store key-value pairs with dictionaries and you'll learn how to use the property observers. Later, explore the decision-making and control structures in Swift and learn how to handle errors in Swift 4.Then you'll, examine the advanced features of Swift, generics and operators, and then explore the functionalities outside of the standard library, provided by frameworks such as Foundation and UIKit. Also, you'll explore advanced features of Swift Playgrounds. At the end of the book, you'll learn server-side programming aspect of Swift 4 and see how to run Swift on Linux and then investigate Vapor, one of the most popular server-side frameworks for Swift.
Jon Hoffman
Swift has become the number one language used in iOS and macOS development. The Swift standard library is developed using protocol-oriented programming techniques, generics, and first-class value semantics; therefore, every Swift developer should understand these powerful concepts and how to take advantage of them in their application design.This book will help you understand the differences between object-oriented programming and protocol-oriented programming. It will demonstrate how to work with protocol-oriented programming using real-world use cases. You will gain a solid knowledge of the various types that can be used in Swift and the differences between value and reference types. You will be taught how protocol-oriented programming techniques can be used to develop very flexible and easy-to-maintain code.By the end of the book, you will have a thorough understanding of protocol-oriented programming and how to utilize it to build powerful and practical applications.
Jon Hoffman
Swift has become the number one language used in iOS and macOS development. The Swift standard library is developed using protocol-oriented programming techniques, generics, and first-class value semantics; therefore, every Swift developer should understand these powerful concepts and how to take advantage of them in their application design.This book will help you understand the differences between object-oriented programming and protocol-oriented programming. It will demonstrate how to work with protocol-oriented programming using real-world use cases. You will gain a solid knowledge of the various types that can be used in Swift and the differences between value and reference types. You will be taught how protocol-oriented programming techniques can be used to develop very flexible and easy-to-maintain code.By the end of the book, you will have a thorough understanding of protocol-oriented programming and how to utilize it to build powerful and practical applications.
Keith Moon, Chris Barker
Swift is an exciting, multi-platform, general-purpose programming language, and with this book, you'll explore the features of its latest version, Swift 5.3.The book begins with an introduction to the basic building blocks of Swift 5.3, its syntax, and the functionalities of Swift constructs. You’ll then discover how Swift Playgrounds provide an ideal platform to write, execute, and debug your Swift code. As you advance through the chapters, the book will show you how to bundle variables into tuples or sets, order your data with an array, store key-value pairs with dictionaries, and use property observers. You’ll also get to grips with the decision-making and control structures in Swift, examine advanced features such as generics and operators, and explore functionalities outside of the standard library. Once you’ve learned how to build iOS applications using UIKit, you'll find out how to use Swift for server-side programming, run Swift on Linux, and investigate Vapor. Finally, you'll discover some of the newest features of Swift 5.3 using SwiftUI and Combine to build adaptive and reactive applications, and find out how to use Swift to build and integrate machine learning models along with Apple’s Vision Framework.By the end of this Swift book, you'll have discovered solutions to boost your productivity while developing code using Swift 5.3.
Keith Moon, Chris Barker
Swift is an exciting, multi-platform, general-purpose programming language, and with this book, you'll explore the features of its latest version, Swift 5.3.The book begins with an introduction to the basic building blocks of Swift 5.3, its syntax, and the functionalities of Swift constructs. You’ll then discover how Swift Playgrounds provide an ideal platform to write, execute, and debug your Swift code. As you advance through the chapters, the book will show you how to bundle variables into tuples or sets, order your data with an array, store key-value pairs with dictionaries, and use property observers. You’ll also get to grips with the decision-making and control structures in Swift, examine advanced features such as generics and operators, and explore functionalities outside of the standard library. Once you’ve learned how to build iOS applications using UIKit, you'll find out how to use Swift for server-side programming, run Swift on Linux, and investigate Vapor. Finally, you'll discover some of the newest features of Swift 5.3 using SwiftUI and Combine to build adaptive and reactive applications, and find out how to use Swift to build and integrate machine learning models along with Apple’s Vision Framework.By the end of this Swift book, you'll have discovered solutions to boost your productivity while developing code using Swift 5.3.
Swift Data Structure and Algorithms. Implement Swift structures and algorithms natively
Erik Azar, Mario Eguiluz Alebicto
Apple’s Swift language has expressive features that are familiar to those working with modern functional languages, but also provides backward support for Objective-C and Apple’s legacy frameworks. These features are attracting many new developers to start creating applications for OS X and iOS using Swift. Designing an application to scale while processing large amounts of data or provide fast and efficient searching can be complex, especially running on mobile devices with limited memory and bandwidth. Learning about best practices and knowing how to select the best data structure and algorithm in Swift is crucial to the success of your application and will help ensure your application is a success. That’s what this book will teach you.Starting at the beginning, this book will cover the basic data structures and Swift types, and introduce asymptotic analysis. You’ll learn about the standard library collections and bridging between Swift and Objective-C collections. You will see how to implement advanced data structures, sort algorithms, work with trees, advanced searching methods, use graphs, and performance and algorithm efficiency. You’ll also see how to choose the perfect algorithm for your problem.
Swift: Developing iOS Applications. Developing iOS Applications
Jon Hoffman, Andrew J Wagner, Giordano Scalzo
The Swift––Developing iOS Applications course will take you on a journey to become an efficient iOS and OS X developer, with the latest trending topic in town. Right from the basics to the advanced level topics, this course would cover everything in detail. We’ll embark our journey by dividing the learning path into four modules. Each of these modules are a mini course in their own right; and as you complete each one, you’ll gain key skills and be ready for the material in the next module.The first module is like a step-by-step guide to programming in Swift 2. Each topic is separated into compressible sections that are full of practical examples and easy-to-understand explanations. Each section builds on the previous topics, so you can develop a proficient and comprehensive understanding of app development in Swift 2. By the end of this module, you’ll have a basic understanding of Swift 2 and its functionalities.The second module will be the an easy-to-follow guide filled with tutorials to show you how to build real-world apps. The difficulty and complexity level increases chapter by chapter. Each chapter is dedicated to build a new app, beginning from a basic and unstyled app through to a full 3D game. The last two chapters show you how to build a complete client-server e-commerce app right from scratch. By the end of these modules, you’ll be able to build well-designed apps, effectively use AutoLayout, develop videogames, and build server apps.The third and the last module of our course will take an example-based approach where each concept covered is supported by example code to not only give you a good understanding of the concept, but also to demonstrate how to properly implement it.
Alex Blewitt
Swift was considered one of the biggest innovations last year, and certainly with Swift 2 announced at WWDC in 2015, this segment of the developer space will continue to be hot and dominating. This is a fast-paced guide to provide an overview of Swift programming and then walks you through in detail how to write iOS applications. Progress through chapters on custom views, networking, parsing and build a complete application as a Git repository, all by using Swift as the core language
Dr. Fatih Nayebi
Swift is a multi-paradigm programming language enabling you to tackle different problems in various ways. Understanding each paradigm and knowing when and how to utilize and combine them can lead to a better code base. Functional programming (FP) is an important paradigm that empowers us with declarative development and makes applications more suitable for testing, as well as performant and elegant. This book aims to simplify the FP paradigms, making them easily understandable and usable, by showing you how to solve many of your day-to-day development problems using Swift FP.It starts with the basics of FP, and you will go through all the core concepts of Swift and the building blocks of FP. You will also go through important aspects, such as function composition and currying, custom operator definition, monads, functors, applicative functors,memoization, lenses, algebraic data types, type erasure, functional data structures, functional reactive programming (FRP), and protocol-oriented programming(POP). You will then learn to combine those techniques to develop a fully functional iOS application from scratch
Dr. Fatih Nayebi
Swift is a multi-paradigm programming language enabling you to tackle different problems in various ways. Understanding each paradigm and knowing when and how to utilize and combine them can lead to a better code base. Functional programming (FP) is an important paradigm that empowers us with declarative development and makes applications more suitable for testing, as well as performant and elegant. This book aims to simplify the FP paradigms, making them easily understandable and usable, by showing you how to solve many of your day-to-day development problems using Swift FP.It starts with the basics of FP, and you will go through all the core concepts of Swift and the building blocks of FP. You will also go through important aspects, such as function composition and currying, custom operator definition, monads, functors, applicative functors,memoization, lenses, algebraic data types, type erasure, functional data structures, functional reactive programming (FRP), and protocol-oriented programming(POP). You will then learn to combine those techniques to develop a fully functional iOS application from scratch
Dr. Fatih Nayebi
Swift is a multi-paradigm programming language enabling you to tackle different problems in various ways. Understanding each paradigm and knowing when and how to utilize and combine them can lead to a better code base. Functional programming (FP) is an important paradigm that empowers us with declarative development and makes applications more suitable for testing, as well as performant and elegant. This book aims to simplify the FP paradigms, making them easily understandable and usable, by showing you how to solve many of your day-to-day development problems using Swift FP.It starts with the basics of FP, and you will go through all the core concepts of Swift and the building blocks of FP. You will also go through important aspects, such as function composition and currying, custom operator definition, monads, functors, applicative functors,memoization, lenses, algebraic data types, type erasure, functional data structures, functional reactive programming (FRP), and protocol-oriented programming(POP). You will then learn to combine those techniques to develop a fully functional iOS application from scratch
Siddharth Shekar, Stephen Haney
Swift is the perfect choice for game development. Developers are intrigued by Swift and want to make use of new features to develop their best games yet. Packed with best practices and easy-to-use examples, this book leads you step by step through the development of your first Swift game.The book starts by introducing Swift's best features – including its new ones for game development. Using SpriteKit, you will learn how to animate sprites and textures. Along the way, you will master physics, animations, and collision effects and how to build the UI aspects of a game. You will then work on creating a 3D game using the SceneKit framework. Further, we will look at how to add monetization and integrate Game Center. With iOS 12, we see the introduction of ARKit 2.0. This new version allows us to integrate shared experiences such as multiplayer augmented reality and persistent AR that is tied to a specific location so that the same information can be replicated on all connected devices. In the next section, we will dive into creating Augmented Reality games using SpriteKit and SceneKit. Then, finally, we will see how to create a Multipeer AR project to connect two devices, and send and receive data back and forth between those devices in real time.By the end of this book, you will be able to create your own iOS games using Swift and publish them on the iOS App Store.
Siddharth Shekar, Stephen Haney
Swift is the perfect choice for game development. Developers are intrigued by Swift and want to make use of new features to develop their best games yet. Packed with best practices and easy-to-use examples, this book leads you step by step through the development of your first Swift game.The book starts by introducing Swift's best features – including its new ones for game development. Using SpriteKit, you will learn how to animate sprites and textures. Along the way, you will master physics, animations, and collision effects and how to build the UI aspects of a game. You will then work on creating a 3D game using the SceneKit framework. Further, we will look at how to add monetization and integrate Game Center. With iOS 12, we see the introduction of ARKit 2.0. This new version allows us to integrate shared experiences such as multiplayer augmented reality and persistent AR that is tied to a specific location so that the same information can be replicated on all connected devices. In the next section, we will dive into creating Augmented Reality games using SpriteKit and SceneKit. Then, finally, we will see how to create a Multipeer AR project to connect two devices, and send and receive data back and forth between those devices in real time.By the end of this book, you will be able to create your own iOS games using Swift and publish them on the iOS App Store.