Programowanie
Badanie danych. Raport z pierwszej linii działań
Rachel Schutt, Cathy O'Neil
Unikalne wprowadzenie do nauki o danych! W dzisiejszych czasach najcenniejszym dobrem jest informacja. Ogromne ilości danych są przechowywane w przepastnych bazach danych, a kluczem do sukcesu jest ich umiejętna analiza i wyciąganie wniosków. To dynamicznie rozwijająca się dziedzina wiedzy, w której do tej pory brakowało solidnych podręczników, pozwalających na dogłębne poznanie tego obszaru. Na szczęście to się zmieniło! To unikalna książka, w której badacze z największych firm branży IT dzielą się skutecznymi technikami analizy danych. Z kolejnych rozdziałów dowiesz się, czym jest nauka o danych, model danych oraz test A/B. Ponadto zdobędziesz wiedzę na temat wnioskowania statystycznego, algorytmów, języka R oraz wizualizacji danych. Sięgnij po tę książkę, jeżeli chcesz się dowiedzieć, jak wykrywać oszustwa, korzystać z MapReduce oraz badać przyczynowość. To obowiązkowa pozycja na półce czytelników zainteresowanych badaniem danych. Wśród tematów poruszonych w książce odnajdziesz: Wnioskowanie statystyczne, eksploracyjną analizę danych i proces (metodologię) nauki o danych Algorytmy Filtry spamu, naiwny algorytm Bayesa i wstępną obróbkę danych Regresję logistyczną Modelowanie finansowe Mechanizmy rekomendacji i przyczynowość Wizualizowanie danych Sieci społecznościowe i dziennikarstwo danych Inżynierię danych, systemy MapReduce, Pregel i Hadoop Wyciągnij wartościowe wnioski z posiadanych informacji!
Badanie danych. Raport z pierwszej linii działań
Rachel Schutt, Cathy O'Neil
Unikalne wprowadzenie do nauki o danych! W dzisiejszych czasach najcenniejszym dobrem jest informacja. Ogromne ilości danych są przechowywane w przepastnych bazach danych, a kluczem do sukcesu jest ich umiejętna analiza i wyciąganie wniosków. To dynamicznie rozwijająca się dziedzina wiedzy, w której do tej pory brakowało solidnych podręczników, pozwalających na dogłębne poznanie tego obszaru. Na szczęście to się zmieniło! To unikalna książka, w której badacze z największych firm branży IT dzielą się skutecznymi technikami analizy danych. Z kolejnych rozdziałów dowiesz się, czym jest nauka o danych, model danych oraz test A/B. Ponadto zdobędziesz wiedzę na temat wnioskowania statystycznego, algorytmów, języka R oraz wizualizacji danych. Sięgnij po tę książkę, jeżeli chcesz się dowiedzieć, jak wykrywać oszustwa, korzystać z MapReduce oraz badać przyczynowość. To obowiązkowa pozycja na półce czytelników zainteresowanych badaniem danych. Wśród tematów poruszonych w książce odnajdziesz: Wnioskowanie statystyczne, eksploracyjną analizę danych i proces (metodologię) nauki o danych Algorytmy Filtry spamu, naiwny algorytm Bayesa i wstępną obróbkę danych Regresję logistyczną Modelowanie finansowe Mechanizmy rekomendacji i przyczynowość Wizualizowanie danych Sieci społecznościowe i dziennikarstwo danych Inżynierię danych, systemy MapReduce, Pregel i Hadoop Wyciągnij wartościowe wnioski z posiadanych informacji!
Wagner Bill
50 sposobów ulepszenia języka C# Powszechnie rozpoznawany ekspert .NET Bill Wagner identyfikuje i wyjaśnia 50 zaawansowanych technik i zasad pisania niezawodnego i dobrze działającego kodu C# 7.0. Zgodnie z rosnącym wyrafinowaniem języka C# i oczekiwaniami społeczności programistów Wagner przedstawia nowe, skuteczne rozwiązania problemów, na które natrafiamy każdego dnia. Trzy wydania Effective C# i zawarte w nich jasne wyjaśnienia, wskazówki i realistyczne przykłady kodu dowiodły swojej wartości dla tysięcy programistów. Bardziej efektywny C# przynosi to samo sprawdzone podejście do nowych funkcjonalności języka C# 7.0, pomagające bardziej wydajnie i skutecznie realizować dobrze znane zadania. Bazując na niezrównanym doświadczeniu i kluczowej roli w globalnych gremiach standaryzujących języka C#, Wagner pokazuje podejścia zorientowane obiektowo, funkcyjne i zorientowane na usługi do zarządzania danymi przy użyciu C#, lepsze sposoby wyrażania naszych zamiarów użytkownikom i innym programistom, a także nowe możliwości wykorzystywania technik asyn-chronicznych i programowania dynamicznego. ? Używanie właściwości zamiast dostępnych pól danych (punkt 1) ? Rozróżnianie pomiędzy typami wartościowymi i referencyjnymi (4) ? Zależności pomiędzy różnymi koncepcjami równości (9) ? Unikanie operatorów konwersji (11) ? Rozróżnianie pomiędzy interfejsami a metodami wirtualnymi (15) ? Unikanie przeciążania metod zdefiniowanych w klasach bazowych (19) ? Tworzenie grup metod, które są jasne, minimalne i kompletne (22) ? Włączanie natychmiastowego zgłaszania błędów w iteratorach i metodach asynchronicznych (26) ? Używanie metod asynchronicznych do pracy asynchronicznej (27) ? Unikanie alokowania wątków i przełączania kontekstów (30) ? Konstruowanie równoległych zapytań PLINQ z uwzględnieniem wyjątków (36) ? Używanie puli wątków zamiast tworzenia wątków (37) ? Wykorzystanie BackgroundWorker do komunikacji pomiędzy wątkami (38) ? Używanie najmniejszego możliwego zakresu dla blokad (41) ? Zalety i wady dynamicznego programowania (43) ? Pełne wykorzystanie API wyrażeń (46) ? Minimalizowanie obiektów dynamicznych w publicznych API (47) Jesteś już skutecznym programistą C#: dzięki tej książce staniesz się wyjątkowym. Bill Wagner jest jednym z czołowych projektantów C#, członkiem ECMA C# Standards Committee i autorem trzech wydań Effective C#. Jest też prezesem Humanitarian Toolbox, został wyróżniony tytułem Microsoft Regional Director oraz .NET MVP od 11 lat, zaś ostatnio dołączył do .NET Foundation Advisory Council. Wagner wielokrotnie pomagał rozmaitym firmom, od start-upów po międzynarodowe korporacje w usprawnianiu procesów projektowych i rozwijaniu zespołów programistycznych. Obecnie jako członek zespołu .NET Core tworzy materiały szkoleniowe dla programistów z dziedziny języka C# i .NET Core.
Bardziej niż Agile. Jak zwiększyć innowacyjność twojego biznesu
Marcin Żmigrodzki
Efektywna innowacyjność w biznesie jest możliwa! Rozwój firm - od startupów do korporacji ― nie jest możliwy bez wprowadzania nowych pomysłów w życie. Jednak wiele z nich po wdrożeniu okazuje się nie przynosić korzyści, bo albo nikt nie chce kupić nowego produktu, albo wprowadzone rozwiązanie techniczne nie dostarcza spodziewanej wartości. Ponad 90 procent startupów bankrutuje, połowa firm, które 20 lat temu były na liście Fortune 500, już nie istnieje i jedną z głównych przyczyn tego stanu rzeczy jest niewystarczająca innowacyjność. Czy zatem skuteczniejszą strategią biznesową byłaby rezygnacja z innowacyjności i pozostanie przy tym, co może nie działa najlepiej, ale przynajmniej jest znane i sprawdzone? A może lepszym wyjściem byłoby generowanie mnóstwa pomysłów w nadziei, że przypadkiem uda się trafić na przełomową ideę? Nie, nie, po trzykroć nie! Biznes, by trwać i generować zyski, musi w dłuższej perspektywie bazować na wdrażaniu nowych idei, aby przynosiły wartość. Tajemnica sukcesu tkwi w tym, by owe idee weryfikować, odrzucać lub modyfikować na odpowiednim etapie, jeszcze zanim firma poniesie na nie duże wydatki. Takie podejście pozwala unikać strat i zarabiać na tych pomysłach, które faktycznie mają szansę odnieść sukces. Jak je wybrać spośród innych? Jak z powodzeniem przeprowadzić projekt eksploracyjny? Jak kontrolować projekt typu discovery, aby podążał za najlepszą opcją działania? Jak maksymalnie szybko uczyć się na doświadczeniach? W jaki sposób można użyć do tego narzędzia Agile? O tym wszystkim w swojej najnowszej książce pisze Marcin Żmigrodzki.
Bash Command Line and Shell Scripts Pocket Primer. Mastering Bash Commands and Scripting Techniques
Mercury Learning and Information, Oswald Campesato
As part of the best-selling Pocket Primer series, this book introduces readers to useful command-line utilities for creating powerful shell scripts. It focuses on the “bash” command set, though many concepts apply to other command shells like sh, ksh, zsh, and csh. The book covers piping data between commands and using versatile sed and awk commands. Aimed at beginners, it also serves as a good reference for those with some experience in shell scripting.The journey starts with an introduction to bash, covering files and directories, useful commands, and conditional logic with loops. Readers then learn to filter data with grep, transform data with sed, and work with awk. The book introduces shell scripts, showcasing their use with grep and awk for data manipulation. Various scripts are provided for data scientists and analysts needing shell-based solutions for text file cleaning.Understanding these concepts is crucial for simplifying routine tasks and creating efficient shell scripts. This book transitions readers from novices to proficient scriptwriters, combining theoretical knowledge and practical skills. Companion files with source code examples enhance learning. By the end, readers will be equipped to implement shell scripts in real-world scenarios.
Mateusz Lach
Wykorzystaj Bash do swoich celów! Jak działa Bash, czyli do czego potrzebna Ci ta powłoka i jak ją inteligentnie wykorzystać Raport wydajnościowy, czyli jak szybko znaleźć pliki, które ktoś ostatnio zmodyfikował W małym kinie, czyli jak zaprojektować system rezerwacji miejsc Powłoka Bash jest bardzo wygodnym narzędziem, pozwalającym na automatyzację wielu różnych czynności, kłopotliwych dla administratora systemu. Jest też uniwersalna: choć powstała jako powłoka dla systemów uniksowych, można używać jej także na komputerach wyposażonych w Windows. Jeśli chcesz sprawdzić, do czego warto użyć Basha, i zobaczyć, jak działa powłoka w konkretnych sytuacjach, koniecznie zajrzyj do tej książki. W przystępny, klarowny sposób omawia ona podstawowe zagadnienia związane z Bashem, a nade wszystko zawiera praktyczne, gotowe skrypty i liczne ćwiczenia. W książce znajdziesz zestawy instrukcji pozwalających efektywnie wyszukiwać w dużej bazie określone pliki, sortować, wykonywać skomplikowane obliczenia, generować zbiory liczb, stosować funkcje rekurencyjne i sprawdzać poprawność konfiguracji sieci komputerowej. Każdy rozdział rozpoczyna się od krótkiego opisu konkretnego problemu, który można rozwiązać dzięki skryptowi Basha. Taki układ na pewno docenią wszyscy, którzy nie mają zbyt wiele czasu na poznawanie teorii, gdy natychmiast potrzebna jest im praktyka. Sprawdź, zastosuj i oszczędź swój czas! Konwencje programistyczne Instalacja i konfiguracja środowiska pracy Zmienne, stringi, podstawowe polecenia Tryb interaktywny/konwersacyjny i wsadowy Instrukcje, operatory, pętle i tablice Parametry wejściowe, zmienne liczbowe i wyrażenia matematyczne Analiza zbioru plików pod kątem daty ich ostatniej modyfikacji Sortowanie liczb i funkcje Sprawdzanie poprawności konfiguracji sieci komputerowej Ciągi Fibonacciego Prosty kalkulator ze wsparciem dla arytmetyki Systemy rezerwacji miejsc Rekurencyjne wyszukiwanie dat w plikach Niech Twój komputer działa za Ciebie!
Bayesian Analysis with Python. A practical guide to probabilistic modeling - Third Edition
Osvaldo Martin, Christopher Fonnesbeck, Thomas Wiecki
The third edition of Bayesian Analysis with Python serves as an introduction to the main concepts of applied Bayesian modeling using PyMC, a state-of-the-art probabilistic programming library, and other libraries that support and facilitate modeling like ArviZ, for exploratory analysis of Bayesian models; Bambi, for flexible and easy hierarchical linear modeling; PreliZ, for prior elicitation; PyMC-BART, for flexible non-parametric regression; and Kulprit, for variable selection.In this updated edition, a brief and conceptual introduction to probability theory enhances your learning journey by introducing new topics like Bayesian additive regression trees (BART), featuring updated examples. Refined explanations, informed by feedback and experience from previous editions, underscore the book's emphasis on Bayesian statistics. You will explore various models, including hierarchical models, generalized linear models for regression and classification, mixture models, Gaussian processes, and BART, using synthetic and real datasets.By the end of this book, you’ll understand probabilistic modeling and be able to design and implement Bayesian models for data science, with a strong foundation for more advanced study.*Email sign-up and proof of purchase required
Osvaldo Martin, Eric Ma, Austin Rochford
The second edition of Bayesian Analysis with Python is an introduction to the main concepts of applied Bayesian inference and its practical implementation in Python using PyMC3, a state-of-the-art probabilistic programming library, and ArviZ, a new library for exploratory analysis of Bayesian models.The main concepts of Bayesian statistics are covered using a practical and computational approach. Synthetic and real data sets are used to introduce several types of models, such as generalized linear models for regression and classification, mixture models, hierarchical models, and Gaussian processes, among others. By the end of the book, you will have a working knowledge of probabilistic modeling and you will be able to design and implement Bayesian models for your own data science problems. After reading the book you will be better prepared to delve into more advanced material or specialized statistical modeling if you need to.
Bądź Agile. Zwinnie o HR i Employer Brandingu
Olga Żółkiewicz, Marcin Olszewski_, Mateusz Czarnecki
Pierwszy w Polsce kompleksowy przewodnik po Agile HR i EB Agile, zwinność - to terminy, które w pierwszej kolejności kojarzą się z branżą IT. I słusznie. Zwolennicy zwinnego programowania przyjmują, że skoro oczekiwania odbiorcy ewoluują w trakcie pracy nad produktem, jej założenia i metody powinny się do tych zmian adaptować. Firmy z sektora IT od dawna są Agile. Jednak zwinność przydaje się nie tylko specjalistom od kodowania. To podejście do zadań sprawdza się także w HR-ze i employer brandingu. Ważni gracze na rynku, jak telekomunikacja oraz bankowość, stawiają na zwinną transformację swoich działów HR. Czy to oznacza, że Agile jest tylko dla wielkich? Absolutnie nie! Autorzy tego przewodnika udowadniają, że ten sposób pracy z ludźmi w przedsiębiorstwach jest i dla dużych, i dla małych. Tłumaczą, na czym polega zwinność w HR i EB, podają przykłady większych i mniejszych firm działających w tych obszarach zgodnie z Agile. Dzielą się wiedzą o przydatnych narzędziach, podsuwają praktyczne wskazówki i cytują komentarze specjalistów, którzy od dawna pracują w stylu Agile. Wszystko po to, by stworzyć pełny obraz możliwości, jakie daje zwinność w zakresie human resources i employer brandingu.
Ashwin Pajankar, Abhishek Sharma, Sandeep Saini
This book is a one-stop guide for learning BBC Micro:bit with MicroPython, exploring many hardware components and programming techniques to provide detailed insights into developing practical applications with the Micro:bit. It will also show you how hardware components can be manipulated using a combination of Micro:bit and MicroPython for developing practical projects. BBC Micro:bit in Practice will help you gain a holistic understanding of the BBC Micro:bit platform and MicroPython programming, guiding you through mini projects aimed at developing practical knowledge of circuit design and writing programs. You’ll learn how to write programs for working with built-in LEDs and buttons, interfacing external LEDs, buttons, motors, buzzers, and much more. You’ll also work with built-in radio, speakers, accelerometer, and a compass. You’ll dive into concepts related to the Micro:bit filesystem, interfacing external displays, and working with libraries in detail before exploring sewable circuits and wearable technology.After reading this Micro:bit book, you’ll understand how to apply principles in electronics and MicroPython to create interesting real-life projects from scratch.
BDD w działaniu. Sterowanie zachowaniem w rozwoju aplikacji
John Ferguson Smart
Rozwój technik BDD jest odpowiedzią na poważny problem, z którym muszą się zmierzyć zespoły rozwijające oprogramowanie. Tym problemem jest skuteczne komunikowanie i zrozumienie się nawzajem. Jeśli jesteś kierownikiem projektu, musisz jakoś skłonić programistę do pisania testów, namówić testera do zaakceptowania tych testów i przekonać inwestora, że coś, co nie jest kodem produkcyjnym, może mieć swoją wartość. Okazuje się, że kluczem do sukcesu jest doprowadzenie do sytuacji, w której każdy rozumie, do czego ma służyć aplikacja, jak się ma zachować i jakie są jej kluczowe funkcje. Świetnym narzędziem ułatwiającym taką pracę jest technika BDD — obszerny zbiór najlepszych praktyk i narzędzi wspomagających analizę wymagań i automatyzację testów. Książka, którą trzymasz w dłoni, stanowi przegląd praktyk BDD na wszystkich poziomach procesu rozwoju oprogramowania. Znajdziesz w niej informacje na temat odkrywania i określania wysokopoziomowych wymagań, implementacji funkcji aplikacji oraz pisania automatycznych testów akceptacyjnych i jednostkowych. Jest ona niezastąpionym przewodnikiem dla analityków biznesowych i deweloperów, testerów, a przede wszystkim liderów i menedżerów projektów. Dzięki tej książce poznasz: teorię i praktykę BDD zasady stosowania BDD w pracy zespołowej testy akceptacyjne, integracyjne i jednostkowe BDD praktyczne przykłady w Javie, .NET, JavaScripcie i innych językach sposoby tworzenia raportów i dynamicznej dokumentacji BDD Już dziś przedstaw swojemu zespołowi rewolucyjne techniki BDD! John Ferguson Smart — światowej klasy specjalista w dziedzinie BDD, automatycznego testowania i optymalizacji rozwoju oprogramowania w całym cyklu życia, umiejętnie łączący wiedzę programisty i zalety coacha.
BDD w działaniu. Sterowanie zachowaniem w rozwoju aplikacji
John Ferguson Smart
Rozwój technik BDD jest odpowiedzią na poważny problem, z którym muszą się zmierzyć zespoły rozwijające oprogramowanie. Tym problemem jest skuteczne komunikowanie i zrozumienie się nawzajem. Jeśli jesteś kierownikiem projektu, musisz jakoś skłonić programistę do pisania testów, namówić testera do zaakceptowania tych testów i przekonać inwestora, że coś, co nie jest kodem produkcyjnym, może mieć swoją wartość. Okazuje się, że kluczem do sukcesu jest doprowadzenie do sytuacji, w której każdy rozumie, do czego ma służyć aplikacja, jak się ma zachować i jakie są jej kluczowe funkcje. Świetnym narzędziem ułatwiającym taką pracę jest technika BDD — obszerny zbiór najlepszych praktyk i narzędzi wspomagających analizę wymagań i automatyzację testów. Książka, którą trzymasz w dłoni, stanowi przegląd praktyk BDD na wszystkich poziomach procesu rozwoju oprogramowania. Znajdziesz w niej informacje na temat odkrywania i określania wysokopoziomowych wymagań, implementacji funkcji aplikacji oraz pisania automatycznych testów akceptacyjnych i jednostkowych. Jest ona niezastąpionym przewodnikiem dla analityków biznesowych i deweloperów, testerów, a przede wszystkim liderów i menedżerów projektów. Dzięki tej książce poznasz: teorię i praktykę BDD zasady stosowania BDD w pracy zespołowej testy akceptacyjne, integracyjne i jednostkowe BDD praktyczne przykłady w Javie, .NET, JavaScripcie i innych językach sposoby tworzenia raportów i dynamicznej dokumentacji BDD Już dziś przedstaw swojemu zespołowi rewolucyjne techniki BDD! John Ferguson Smart — światowej klasy specjalista w dziedzinie BDD, automatycznego testowania i optymalizacji rozwoju oprogramowania w całym cyklu życia, umiejętnie łączący wiedzę programisty i zalety coacha.
Alvaro Fuentes
Python is one of the most common and popular languages preferred by leading data analysts and statisticians for working with massive datasets and complex data visualizations.Become a Python Data Analyst introduces Python’s most essential tools and libraries necessary to work with the data analysis process, right from preparing data to performing simple statistical analyses and creating meaningful data visualizations.In this book, we will cover Python libraries such as NumPy, pandas, matplotlib, seaborn, SciPy, and scikit-learn, and apply them in practical data analysis and statistics examples. As you make your way through the chapters, you will learn to efficiently use the Jupyter Notebook to operate and manipulate data using NumPy and the pandas library. In the concluding chapters, you will gain experience in building simple predictive models and carrying out statistical computation and analysis using rich Python tools and proven data analysis techniques.By the end of this book, you will have hands-on experience performing data analysis with Python.
Rajesh R V
Many organizations have embraced Agile methodologies to transform their ability to rapidly respond to constantly changing customer demands. However, in this melee, many enterprises often neglect to invest in architects by presuming architecture is not an intrinsic element of Agile software development.Since the role of an architect is not pre-defined in Agile, many organizations struggle to position architects, often resulting in friction with other roles or a failure to provide a clear learning path for architects to be productive.This book guides architects and organizations through new Agile ways of incrementally developing the architecture for delivering an uninterrupted, continuous flow of values that meets customer needs. You'll explore various aspects of Agile architecture and how it differs from traditional architecture. The book later covers Agile architects' responsibilities and how architects can add significant value by positioning themselves appropriately in the Agile flow of work. Through examples, you'll also learn concepts such as architectural decision backlog,the last responsible moment, value delivery, architecting for change, DevOps, and evolutionary collaboration.By the end of this Agile book, you'll be able to operate as an architect in Agile development initiatives and successfully architect reliable software systems.
Michael Dinder
Django is a powerful framework but choosing the right add-ons that match the scale and scope of your enterprise projects can be tricky. This book will help you explore the multifarious options available for enterprise Django development. Countless organizations are already using Django and more migrating to it, unleashing the power of Python with many different packages and dependencies, including AI technologies.This practical guide will help you understand practices, blueprints, and design decisions to put Django to work the way you want it to. You’ll learn various ways in which data can be rendered onto a page and discover the power of Django for large-scale production applications. Starting with the basics of getting an enterprise project up and running, you'll get to grips with maintaining the project throughout its lifecycle while learning what the Django application lifecycle is.By the end of this book, you'll have learned how to build and deploy a Django project to the web and implement various components into the site.
Dmitry Galkin
The job market related to the cloud and cloud-native technologies is both growing and becoming increasingly competitive, making certifications like KCNA a great way to stand out from the crowd and learn about the latest advancements in cloud technologies.Becoming KCNA Certified doesn't just give you the practical skills needed to deploy and connect applications in Kubernetes, but it also prepares you to pass the Kubernetes and Cloud Native Associate (KCNA) exam on your first attempt.The book starts by introducing you to cloud-native computing, containers, and Kubernetes through practical examples, allowing you to test the theory out for yourself. You'll learn how to configure and provide storage for your Kubernetes-managed applications and explore the principles of modern cloud-native architecture and application delivery, giving you a well-rounded view of the subject. Once you've been through the theoretical and practical aspects of the book, you'll get the chance to test what you’ve learnt with two mock exams, with explanations of the answers, so you'll be well-prepared to appear for the KCNA exam.By the end of this Kubernetes book, you'll have everything you need to pass the KCNA exam and forge a career in Kubernetes and cloud-native computing.
Jorge Brasil
This book takes readers on a structured journey through calculus fundamentals essential for AI. Starting with “Why Calculus?” it introduces key concepts like functions, limits, and derivatives, providing a solid foundation for understanding machine learning.As readers progress, they will encounter practical applications such as Taylor Series for curve fitting, gradient descent for optimization, and L'Hôpital’s Rule for managing undefined expressions. Each chapter builds up from core calculus to multidimensional topics, making complex ideas accessible and applicable to AI.The final chapters guide readers through multivariable calculus, including advanced concepts like the gradient, Hessian, and backpropagation, crucial for neural networks. From optimizing models to understanding cost functions, this book equips readers with the calculus skills needed to confidently tackle AI challenges, offering insights that make complex calculus both manageable and deeply relevant to machine learning.
Tom Owsiak
Beginning C# 7 Hands-On – Advanced Language Features assumes that you’ve mastered the basic elements of the C# language and that you're now ready to learn the more advanced C# language and syntax, line by line, in a working Visual Studio environment. You'll learn how to code advanced C# language topics including generics, lambda expressions, and anonymous methods.You'll learn to use query syntax to construct queries and deploy queries that perform aggregation functions. Work with C# and SQL Server 2017 to perform complex joins and stored procedures. Explore advanced file access methods, and see how to serialize and deserialize objects – all by writing working lines of code that you can run within Visual Studio.This book is designed for beginner C# developers who have mastered the basics now, and anyone who needs a fast reference to using advanced C# language features in practical coding examples. You'll also take a look at C# through web programming with web forms. By the time you’ve finished this book, you’ll know all the critical advanced elements of the C# language and how to program everything from C# generics to XML, LINQ, and your first full MVC web applications. These are the advanced building blocks that you can then combine to exploit the full power of the C# programming language, line by line.
Tom Owsiak
Beginning C# 7 Hands-On – Advanced Language Features assumes that you’ve mastered the basic elements of the C# language and that you're now ready to learn the more advanced C# language and syntax, line by line, in a working Visual Studio environment. You'll learn how to code advanced C# language topics including generics, lambda expressions, and anonymous methods.You'll learn to use query syntax to construct queries and deploy queries that perform aggregation functions. Work with C# and SQL Server 2017 to perform complex joins and stored procedures. Explore advanced file access methods, and see how to serialize and deserialize objects – all by writing working lines of code that you can run within Visual Studio.This book is designed for beginner C# developers who have mastered the basics now, and anyone who needs a fast reference to using advanced C# language features in practical coding examples. You'll also take a look at C# through web programming with web forms. By the time you’ve finished this book, you’ll know all the critical advanced elements of the C# language and how to program everything from C# generics to XML, LINQ, and your first full MVC web applications. These are the advanced building blocks that you can then combine to exploit the full power of the C# programming language, line by line.
Beginning C# 7 Hands-On - The Core Language. Learn the C# language by coding it element by element
Tom Owsiak
Beginning C# 7 Hands-On - The Core Language teaches you core C# language and syntax in a working Visual Studio environment. This book covers everything from core language through to more advanced features such as object-oriented programming techniques. This book is for C# 7 beginners who need a practical reference to core C# language features. You'll also gain a view of C# 7 through web programming with web forms, so you'll learn HTML, basic CSS, and how to use a variety of controls, such as buttons and drop-down lists. You'll start with the fundamentals of C# and Visual Studio, including defining variables, interacting with users, and understanding data types, data conversions, and constants. You'll move on to checking conditions using if/else blocks, and see how to use loops to do things such as repeat blocks of code. After covering various operators to evaluate and assign control structures, you'll see how to use arrays to store collections of data. By the time you’ve finished the book, you’ll know how to program the vital elements of the core C# language. These are the building blocks that you can then combine to build complex C# programs.
Beginning C# 7 Hands-On - The Core Language. Learn the C# language by coding it element by element
Tom Owsiak
Beginning C# 7 Hands-On - The Core Language teaches you core C# language and syntax in a working Visual Studio environment. This book covers everything from core language through to more advanced features such as object-oriented programming techniques. This book is for C# 7 beginners who need a practical reference to core C# language features. You'll also gain a view of C# 7 through web programming with web forms, so you'll learn HTML, basic CSS, and how to use a variety of controls, such as buttons and drop-down lists. You'll start with the fundamentals of C# and Visual Studio, including defining variables, interacting with users, and understanding data types, data conversions, and constants. You'll move on to checking conditions using if/else blocks, and see how to use loops to do things such as repeat blocks of code. After covering various operators to evaluate and assign control structures, you'll see how to use arrays to store collections of data. By the time you’ve finished the book, you’ll know how to program the vital elements of the core C# language. These are the building blocks that you can then combine to build complex C# programs.
Beginning C++ Game Programming. Learn C++ from scratch and get started building your very own games
John Horton
This book is all about offering you a fun introduction to the world of game programming, C++, and the OpenGL-powered SFML using three fun, fully-playable games. These games are an addictive frantic two-button tapper, a multi-level zombie survival shooter, and a split-screen multiplayer puzzle-platformer.We will start with the very basics of programming, such as variables, loops, and conditions and you will become more skillful with each game as you move through the key C++ topics, such as OOP (Object-Orientated Programming), C++ pointers, and an introduction to the Standard Template Library. While building these games, you will also learn exciting game programming concepts like particle effects, directional sound (spatialization), OpenGL programmable Shaders, spawning thousands of objects, and more.
Beginning C++ Game Programming. Learn C++ from scratch by building fun games - Third Edition
John Horton
Always dreamed of creating your own games? With the third edition of Beginning C++ Game Programming, you can turn that dream into reality! This beginner-friendly guide is updated and improved to include the latest features of VS 2022, SFML, and modern C++20 programming techniques. You'll get a fun introduction to game programming by building four fully playable games of increasing complexity. You'll build clones of popular games such as Timberman, Pong, a Zombie survival shooter, and an endless runner.The book starts by covering the basics of programming. You'll study key C++ topics, such as object-oriented programming (OOP) and C++ pointers and get acquainted with the Standard Template Library (STL). The book helps you learn about collision detection techniques and game physics by building a Pong game. As you build games, you'll also learn exciting game programming concepts such as vertex arrays, directional sound (spatialization), OpenGL programmable shaders, spawning objects, and much more. You’ll dive deep into game mechanics and implement input handling, levelling up a character, and simple enemy AI. Finally, you'll explore game design patterns to enhance your C++ game programming skills.By the end of the book, you'll have gained the knowledge you need to build your own games with exciting features from scratch.
Beginning C++ Game Programming. Learn to program with C++ by building fun games - Second Edition
John Horton
The second edition of Beginning C++ Game Programming is updated and improved to include the latest features of Visual Studio 2019, SFML, and modern C++ programming techniques. With this book, you’ll get a fun introduction to game programming by building five fully playable games of increasing complexity. You’ll learn to build clones of popular games such as Timberman, Pong, a Zombie survival shooter, a coop puzzle platformer and Space Invaders.The book starts by covering the basics of programming. You’ll study key C++ topics, such as object-oriented programming (OOP) and C++ pointers, and get acquainted with the Standard Template Library (STL). The book helps you learn about collision detection techniques and game physics by building a Pong game. As you build games, you’ll also learn exciting game programming concepts such as particle effects, directional sound (spatialization), OpenGL programmable shaders, spawning objects, and much more. Finally, you’ll explore game design patterns to enhance your C++ game programming skills.By the end of the book, you’ll have gained the knowledge you need to build your own games with exciting features from scratch.
Beginning C++ Programming. Modern C++ at your fingertips!
Richard Grimes
C++ has come a long way and is now adopted in several contexts. Its key strengths are its software infrastructure and resource-constrained applications, including desktop applications, servers, and performance-critical applications, not to forget its importance in game programming. Despite its strengths in these areas, beginners usually tend to shy away from learning the language because of its steep learning curve. The main mission of this book is to make you familiar and comfortable with C++. You will finish the book not only being able to write your own code, but more importantly, you will be able to read other projects. It is only by being able to read others' code that you will progress from a beginner to an advanced programmer. This book is the first step in that progression.The first task is to familiarize you with the structure of C++ projects so you will know how to start reading a project. Next, you will be able to identify the main structures in the language, functions, and classes, and feel confident being able to identify the execution flow through the code. You will then become aware of the facilities of the standard library and be able to determine whether you need to write a routine yourself, or use an existing routine in the standard library. Throughout the book, there is a big emphasis on memory and pointers. You will understand memory usage, allocation, and access, and be able to write code that does not leak memory. Finally, you will learn about C++ classes and get an introduction to object orientation and polymorphism.
Beginning C++ Programming. Modern C++ at your fingertips!
Richard Grimes
C++ has come a long way and is now adopted in several contexts. Its key strengths are its software infrastructure and resource-constrained applications, including desktop applications, servers, and performance-critical applications, not to forget its importance in game programming. Despite its strengths in these areas, beginners usually tend to shy away from learning the language because of its steep learning curve. The main mission of this book is to make you familiar and comfortable with C++. You will finish the book not only being able to write your own code, but more importantly, you will be able to read other projects. It is only by being able to read others' code that you will progress from a beginner to an advanced programmer. This book is the first step in that progression.The first task is to familiarize you with the structure of C++ projects so you will know how to start reading a project. Next, you will be able to identify the main structures in the language, functions, and classes, and feel confident being able to identify the execution flow through the code. You will then become aware of the facilities of the standard library and be able to determine whether you need to write a routine yourself, or use an existing routine in the standard library. Throughout the book, there is a big emphasis on memory and pointers. You will understand memory usage, allocation, and access, and be able to write code that does not leak memory. Finally, you will learn about C++ classes and get an introduction to object orientation and polymorphism.
Alex Galea
Get to grips with the skills you need for entry-level data science in this hands-on Python and Jupyter course. You'll learn about some of the most commonly used libraries that are part of the Anaconda distribution, and then explore machine learning models with real datasets to give you the skills and exposure you need for the real world. We'll finish up by showing you how easy it can be to scrape and gather your own data from the open web, so that you can apply your new skills in an actionable context.
Joseph Muli
Making sure that your application runs across different systems as intended is quickly becoming a standard development requirement. With Docker, you can ensure that what you build will behave the way you expect it to, regardless of where it's deployed. By guiding you through Docker from start to finish (from installation, to the Docker Registry, all the way through to working with Docker Swarms), we’ll equip you with the skills you need to migrate your workflow to Docker with complete confidence.
James Cutajar
Learning about data structures and algorithms gives you a better insight on how to solve common programming problems. Most of the problems faced everyday by programmers have been solved, tried, and tested. By knowing how these solutions work, you can ensure that you choose the right tool when you face these problems.This book teaches you tools that you can use to build efficient applications. It starts with an introduction to algorithms and big O notation, later explains bubble, merge, quicksort, and other popular programming patterns. You’ll also learn about data structures such as binary trees, hash tables, and graphs. The book progresses to advanced concepts, such as algorithm design paradigms and graph theory. By the end of the book, you will know how to correctly implement common algorithms and data structures within your applications.
James Cutajar
Learning about data structures and algorithms gives you a better insight on how to solve common programming problems. Most of the problems faced everyday by programmers have been solved, tried, and tested. By knowing how these solutions work, you can ensure that you choose the right tool when you face these problems.This book teaches you tools that you can use to build efficient applications. It starts with an introduction to algorithms and big O notation, later explains bubble, merge, quicksort, and other popular programming patterns. You’ll also learn about data structures such as binary trees, hash tables, and graphs. The book progresses to advanced concepts, such as algorithm design paradigms and graph theory. By the end of the book, you will know how to correctly implement common algorithms and data structures within your applications.