Inne - Programowanie
W kategorii Inne zgromadzone zostały publikacje blisko związane zarówno z programowaniem jak i innymi aspektami dotyczącymi twórczości programistycznej. Znajdziecie tutaj porady jak poprawnie i skutecznie napisać program, co zrobić aby był bardziej przyjazny użytkownikom, oraz z jakich metod numerycznych i struktur danych przy tych działaniach skorzystać.
Ważnym aspektem tworzenia oprogramowania jest jego testowanie. Znajdziecie tutaj publikacje, omawiające w przystępny sposób proces testowania aplikacji i wyjaśniające czemu właściwie jest to konieczne. Skoro napisaliście już znakomity program, warto byłoby go dobrze sprzedać - w działaniach marketingowych pomogą Wam książki z tego działu.
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!
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++ 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.
Bezpieczeństwo kontenerów w DevOps. Zabezpieczanie i monitorowanie kontenerów Docker
Jose Manuel Ortega Candel
DevOps jest innowacyjną metodyką prowadzenia projektów, w której wyjątkowe znaczenie ma integracja zespołów programistów i administratorów systemów. Taki sposób rozwijania aplikacji wydaje się szczególnie atrakcyjny w odniesieniu do aplikacji kontenerowych. Technologia kontenerów i orkiestracji jest uważana za bardzo nowoczesną, jednak nawet w przypadku kontenerów Docker i klastrów Kubernetes kwestii bezpieczeństwa nie wolno lekceważyć. Podobnie jak w innych aplikacjach, zabezpieczanie zaczyna się podczas projektowania. O czym więc powinny pamiętać zespoły pracujące zgodnie z DevOps, aby zapewnić bezpieczeństwo swoich kontenerów? W tej książce pokazano związek między metodyką DevOps a praktyką dotyczącą kontenerów Docker i klastrów Kubernetes z perspektywy bezpieczeństwa, monitoringu i zarządzania. Przedstawiono dobre praktyki tworzenia obrazów kontenerów Docker, a także zasady bezpieczeństwa hostów, na których są uruchamiane kontenery, i wszystkich komponentów. Poruszono takie zagadnienia jak statyczna analiza zagrożeń obrazów Docker, podpisywanie obrazów za pomocą Docker Content Trust oraz umieszczanie ich w rejestrze Docker. Opisano też techniki zabezpieczania platformy Kubernetes. Ponadto znalazł się tutaj opis narzędzi do zarządzania kontenerami i aplikacjami, jak również monitorowania aplikacji kontenerowych i tworzenia sieci w platformie Docker. Najciekawsze zagadnienia: gruntowne wprowadzenie do metodyki DevOps czym są platformy kontenerowe: Docker, Kubernetes, Swarm, OpenShift zagrożenia kontenerów i obrazów narzędzia do audytu bezpieczeństwa i zabezpieczania aplikacji kontenerowych zarządzanie kontenerami i ich monitorowanie za pomocą narzędzi: cAdvisor, Sysdig, Portainer i Rancher Niezawodność DevOps to także bezpieczne wdrażanie kontenerów Docker!
Bezpieczne programowanie. Aplikacje hakeroodporne
Jacek Ross
Wyjdź zwycięsko z pojedynku z krakerami! Jak zabezpieczyć aplikację przed krakerami? Jak stworzyć bezpieczne rozwiązania w PHP? Jak utrudnić debugowanie Twojego kodu? Wyobraź sobie sytuację, w której poświęcasz mnóstwo czasu na stworzenie nowego, ciekawego rozwiązania w świecie informatyki. Kosztuje Cię to wiele dni i nocy ogromnego wysiłku. Dokładnie w momencie opuszczenia Twojego bezpiecznego komputera, udostępniony światu, Twój pomysł zostaje wystawiony na ciężką próbę — w sieci działają krakerzy, którzy za wszelką cenę będę próbowali złamać Twoje zabezpieczenia lub wykorzystać luki w Twojej aplikacji. Jak tego uniknąć? Jak tworzyć oprogramowanie odporne na ich ataki? Proste i przejrzyste odpowiedzi na podobnie skomplikowane pytania znajdziesz właśnie w tej książce! Podczas lektury poznasz zagrożenia, na jakie narażony jest programista, oraz proste sposoby utrudniania krakerom zadania. Dodatkowo zdobędziesz wiedzę na temat metod szyfrowania danych i wyznaczania sygnatur. Jednak, co najważniejsze, zobaczysz, jak wykorzystać tę wiedzę w praktyce! W publikacji "Bezpieczne programowanie. Aplikacje hakeroodporne " znajdziesz również sporo ciekawych informacji na temat zabezpieczania aplikacji sieciowych oraz zaawansowane metody, gwarantujące podniesienie bezpieczeństwa Twojego produktu do wysokiego poziomu. To jeszcze nie wszystko! W kolejnych rozdziałach autor prezentuje sposoby ochrony przed debugerami, patenty na bezpieczne tworzenie kodu na platformie .NET oraz psychologiczne aspekty tworzenia hakeroodpornych aplikacji! Przegląd zagrożeń, rodzaje oszustw i naruszeń bezpieczeństwa Zabezpieczenie programu przy użyciu numeru seryjnego Dostępne na rynku systemy zabezpieczania aplikacji Algorytmy szyfrujące Tworzenie skrótów wiadomości Wykorzystanie szyfrowania przy zabezpieczaniu oprogramowania Zabezpieczenia aplikacji wykorzystujących PHP i .NET Ochrona przed atakami typu: wstrzykiwanie SQL, XSS, DOS i DDOS Używanie zaawansowanych metod ochrony oprogramowania Sposoby zaciemniania programu Ochrona kodu przed debugerami Zastosowanie kluczy sprzętowych i technik biometrycznych Psychologiczne aspekty ochrony oprogramowania Dowiedz się, jak tworzyć aplikacje odporne na ataki!
Biblioteki Qt. Zaawansowane programowanie przy użyciu C++
Mark Summerfield
Odkryj tajemnice biblioteki Qt! Qt to popularny zestaw bibliotek pozwalający na tworzenie atrakcyjnego interfejsu użytkownika dla różnych platform, w tym dla systemów: Windows, Mac OS X i Linux. Pierwsza wersja ukazała się w 1992 roku i od tego czasu jest intensywnie rozwijana. Za pomocą najnowszej wersji Qt można tworzyć aplikacje internetowe i mobilne. Zakres jej możliwości jest tak szeroki, że nawet doświadczeni programiści wykorzystują zaledwie ich ułamek. To może się zmienić dzięki tej książce! W trakcie lektury odkryjesz funkcje i możliwości, z których istnienia nie zdawałeś sobie sprawy. Ponadto nauczysz się pisać wydajne programy wielowątkowe, korzystać z silnika WebKit oraz współpracować z biblioteką Phonon. Dowiesz się również, jak sprawnie przy użyciu Qt tworzyć sformatowane dokumenty, a następnie eksportować je do różnych formatów (między innymi PDF, HTML i SVG). W książce znajdziesz wiele przykładów kodu, który został przetestowany przy użyciu Qt 4.6 zarówno na platformie Windows, jak i MacOS X oraz Linux. Wstęp do książki został napisany przez samego współtwórcę Qt - Eirika ChambeEnga. Sięgnij po doskonałe źródło informacji dla programistów! Dzięki tej książce: poznasz zaawansowane zastosowania biblioteki Qt wykorzystasz możliwości silnika WebKit przygotujesz atrakcyjny wizualnie dokument i wyeksportujesz go do popularnych formatów zgłębisz tajniki biblioteki Qt Wykorzystaj zaawansowane funkcje Qt!
Oscar Baechler, Xury Greer
Blender is a powerful 3D creation package that supports every aspect of the 3D pipeline. With this book, you'll learn about modeling, rigging, animation, rendering, and much more with the help of some interesting projects.This practical guide, based on the Blender 2.83 LTS version, starts by helping you brush up on your basic Blender skills and getting you acquainted with the software toolset. You’ll use basic modeling tools to understand the simplest 3D workflow by customizing a Viking themed scene. You'll get a chance to see the 3D modeling process from start to finish by building a time machine based on provided concept art. You will design your first 2D character while exploring the capabilities of the new Grease Pencil tools. The book then guides you in creating a sleek modern kitchen scene using EEVEE, Blender’s new state-of-the-art rendering engine. As you advance, you'll explore a variety of 3D design techniques, such as sculpting, retopologizing, unwrapping, baking, painting, rigging, and animating to bring a baby dragon to life.By the end of this book, you'll have learned how to work with Blender to create impressive computer graphics, art, design, and architecture, and you'll be able to use robust Blender tools for your design projects and video games.
Blender Quick Start Guide. 3D Modeling, Animation, and Render with Eevee in Blender 2.8
Allan Brito
Blender is open source 3D creation software. With a long history and an enthusiastic community of users, it is the ideal choice for almost any kind of work with 3D modeling or animation. However, for new users, its power and ?exibillity can sometimes be daunting, and that’s when you need this book!The book starts by showing you round the all-new Blender 2.8 user interface. You'll look at the most commonly-used options and tools, such as navigating in 3D and selecting objects. You will then use and manipulate one of the most important windows of the interface, the 3D View.You'll learn how to use essential tools for working with 3D modeling. To give your models the feel of real-world objects, you'll learn how to create materials and set up surfaces. You'll see how to use Physically-Based Rendering (PBR), which allows you to craft realistic surfaces such as wood, stone, and metal. You will also work with Eevee, a new real-time render engine in Blender. You will see how to add motion to objects, making use of Blender's impressive 3D animation features. Finally, you'll learn how to create scenes and organize them for rendering, and later add titles and effects using built-in Blender tools.By the end of the book, you will be able to use Blender 2.8 new UI, Create 3D Models with textures, Animations, and Render them in real-time using Eevee.
Brenden Sewell
Blueprints Visual Scripting for Unreal Engine is a step-by-step approach to building a fully functional game, one system at a time. Starting with a basic First Person Shooter template, each chapter will extend the prototype to create an increasingly complex and robust game experience. You will progress from creating basic shooting mechanics to gradually more complex systems that will generate user interface elements and intelligent enemy behavior. Focusing on universally applicable skills, the expertise you will develop in utilizing Blueprints can translate to other types of genres.By the time you finish the book, you will have a fully functional First Person Shooter game and the skills necessary to expand on the game to develop an entertaining, memorable experience for your players.From making customizations to player movement to creating new AI and game mechanics from scratch, you will discover everything you need to know to get started with game development using Blueprints and Unreal Engine 4.
Rohit Bhat
Creating delightful web-based applications backed by complex business logic and intricate workflows is just one of the many things you can easily achieve by leveraging Bonita Open Solution. It is a highly customizable and efficient tool for business process modeling. Bonita Open Solution is a one-stop solution for developing scalable applications with a nifty user management system and easy deployment.This pragmatic, hands-on guide to developing complex applications is packed with succinct tips and demonstrations of the various aspects of Bonita Open Solution. This book will show you how to make the best use of the Bonita BPM tool, leverage its powerful backend engine, and design business application workflows with ease. By the end of this book, you will be able to develop a complete business process application.Right from designing web forms to integrating business logic to finally deploying the application on a server, this book takes you through the entire development cycle of an application created using Bonita Open Solution. You will learn about modeling business processes in Bonita, creating customizable web forms, and using connectors, contingencies, and transitions to move forward in the workflow. It also highlights the various page flows available, as well as the ease of use of the drag-and-drop, widget-based modular design of Bonita Studio. After developing the application, you will also learn about the various options for deployment, and the different environments on which it can be deployed.
Anton Polukhin Alekseevic
If you want to take advantage of the real power of Boost and C++ and avoid the confusion about which library to use in which situation, then this book is for you. Beginning with the basics of Boost C++, you will move on to learn how the Boost libraries simplify application development. You will learn to convert data such as string to numbers, numbers to string, numbers to numbers and more. Managing resources will become a piece of cake. You’ll see what kind of work can be done at compile time and what Boost containers can do. You will learn everything for the development of high quality fast and portable applications. Write a program once and then you can use it on Linux, Windows, MacOS, Android operating systems. From manipulating images to graphs, directories, timers, files, networking – everyone will find an interesting topic.Be sure that knowledge from this book won’t get outdated, as more and more Boost libraries become part of the C++ Standard.
Clinton L. Jeffery
The need for different types of computer languages is growing rapidly and developers prefer creating domain-specific languages for solving specific application domain problems. Building your own programming language has its advantages. It can be your antidote to the ever-increasing size and complexity of software.In this book, you’ll start with implementing the frontend of a compiler for your language, including a lexical analyzer and parser. The book covers a series of traversals of syntax trees, culminating with code generation for a bytecode virtual machine. Moving ahead, you’ll learn how domain-specific language features are often best represented by operators and functions that are built into the language, rather than library functions. We’ll conclude with how to implement garbage collection, including reference counting and mark-and-sweep garbage collection. Throughout the book, Dr. Jeffery weaves in his experience of building the Unicon programming language to give better context to the concepts where relevant examples are provided in both Unicon and Java so that you can follow the code of your choice of either a very high-level language with advanced features, or a mainstream language.By the end of this book, you’ll be able to build and deploy your own domain-specific languages, capable of compiling and running programs.
Raimon Rafols Montane
To build great user interfaces for your Android apps that go beyond the standard UI elements, you need to use custom Android views. With these, you can give your app a distinctive look and ensure that it functions properly across multiple devices. This book will help you construct a great UI for your apps by teaching you how to create custom Android views. You will start by creating your first Android custom view and go through the design considerations. You will then see how the right choices will enable your custom view to perform seamlessly across multiple platforms and Android versions. You will create custom styleable attributes that work with Android XML layouts, learn to process touch events, define custom attributes, and add properties and events to them. By the end of this book, you will be able to create apps with custom views that are responsive and adaptable to make your app distinctive and an instant hit with its users.
Bryan Kenneweg, Imran Kasam, Micah McMullen
Low-code is a visual approach to application development. It enables developers of varying experience levels to create web and mobile apps using drag-and-drop components and model-driven logic through a graphic user interface. Mendix is among the fastest-growing platforms that enable low-code enthusiasts to put their software ideas into practice without having to write much code, and Building Low-Code Applications with Mendix will help you get up and running with the process using examples and practice projects.The book starts with an introduction to Mendix, along with the reasons for using this platform and its tools for creating your first app. As you progress, you’ll explore Mendix Studio Pro, the visual environment that will help you learn Mendix app creation. Once you have your working app ready, you’ll understand how to enhance it with custom business logic and rules. Next, you’ll find out how to defend your app against bad data, troubleshoot and debug it, and finally, connect it with real-world business platforms. You’ll build practical skills as the book is filled with examples, real-world scenarios, and explanations of the tools needed to help you build low-code apps successfully.By the end of this book, you’ll have understood the concept of low-code development, learned how to use Mendix effectively, and developed a working app.
Erik Westra
If you are an experienced Python developer who wants to create your own geospatial applications with minimum fuss, this is the book for you. While some familiarity with mapping applications would be an advantage, no prior knowledge of geospatial concepts is required. Even if you've never used QGIS before, this book will quickly get you up to speed.
Gaurav Aroraa
The microservices architectural style promotes the development of complex applications as a suite of small services based on business capabilities. This book will help you identify the appropriate service boundaries within your business. We'll start by looking at what microservices are and their main characteristics. Moving forward, you will be introduced to real-life application scenarios; after assessing the current issues, we will begin the journey of transforming this application by splitting it into a suite of microservices using C# 7.0 with .NET Core 2.0. You will identify service boundaries, split the application into multiple microservices, and define service contracts. You will find out how to configure, deploy, and monitor microservices, and configure scaling to allow the application to quickly adapt to increased demand in the future.With an introduction to reactive microservices, you’ll strategically gain further value to keep your code base simple, focusing on what is more important rather than on messy asynchronous calls.
Mario-Leander Reimer
Java Enterprise Edition is one of the leading application programming platforms for enterprise Java development. With Java EE 8 finally released and the first application servers now available, it is time to take a closer look at how to develop modern and lightweight web services with the latest API additions and improvements.Building RESTful Web Services with Java EE 8 is a comprehensive guide that will show you how to develop state-of-the-art RESTful web services with the latest Java EE 8 APIs. You will begin with an overview of Java EE 8 and the latest API additions and improvements. You will then delve into the details of implementing synchronous RESTful web services and clients with JAX-RS. Next up, you will learn about the specifics of data binding and content marshalling using the JSON-B 1.0 and JSON-P 1.1 APIs. This book also guides you in leveraging the power of asynchronous APIs on the server and client side, and you will learn to use server-sent events (SSEs) for push communication. The final section covers advanced web service topics such as validation, JWT security, and diagnosability.By the end of this book, you will have implemented several working web services and have a thorough understanding of the Java EE 8 APIs required for lightweight web service development.
Richard Takashi Freeman
Over the last few years, there has been a massive shift from monolithic architecture to microservices, thanks to their small and independent deployments that allow increased flexibility and agile delivery. Traditionally, virtual machines and containers were the principal mediums for deploying microservices, but they involved a lot of operational effort, configuration, and maintenance. More recently, serverless computing has gained popularity due to its built-in autoscaling abilities, reduced operational costs, and increased productivity.Building Serverless Microservices in Python begins by introducing you to serverless microservice structures. You will then learn how to create your first serverless data API and test your microservice. Moving on, you'll delve into data management and work with serverless patterns. Finally, the book introduces you to the importance of securing microservices.By the end of the book, you will have gained the skills you need to combine microservices with serverless computing, making their deployment much easier thanks to the cloud provider managing the servers and capacity planning.
Ovais Mehboob Ahmed Khan
While writing an application, performance is paramount. Performance tuning for realworld applications often involves activities geared toward fnding bottlenecks; however, this cannot solve the dreaded problem of slower code. If you want to improve the speed of your code and optimize an application's performance, then this book is for you. C# 7 and .NET Core 2.0 High Performance begins with an introduction to the new features of what?explaining how they help in improving an application's performance. Learn to identify the bottlenecks in writing programs and highlight common performance pitfalls, and learn strategies to detect and resolve these issues early. You will explore multithreading and asynchronous programming with .NET Core and learn the importance and effcient use of data structures. This is followed with memory management techniques and design guidelines to increase an application’s performance. Gradually, the book will show you the importance of microservices architecture for building highly performant applications and implementing resiliency and security in .NET Core. After reading this book, you will learn how to structure and build scalable, optimized, and robust applications in C#7 and .NET.
Mark J. Price
If you want to build powerful cross-platform applications with C# 7 and .NET Core, then this book is for you.First, we’ll run you through the basics of C#, as well as object-oriented programming, before taking a quick tour through the latest features of C# 7 such as tuples, pattern matching, out variables, and so on.After quickly taking you through C# and how .NET works, we’ll dive into the .NET Standard 1.6 class libraries, covering topics such as performance, monitoring, debugging, serialization and encryption.The final section will demonstrate the major types of application that you can build and deploy cross-device and cross-platform. In this section, we’ll cover Universal Windows Platform (UWP) apps, web applications, mobile apps, and web services. Lastly, we’ll look at how you can package and deploy your applications so that they can be hosted on all of today’s most popular platforms, including Linux and Docker.By the end of the book, you’ll be armed with all the knowledge you need to build modern, cross-platform applications using C# and .NET Core.
Mark J. Price, Dustin Heffron, Efraim Kyriakidis
C# 7.1 and .NET Core 2.0 – Modern Cross-Platform Development, Third Edition, is a practical guide to creating powerful cross-platform applications with C# 7.1 and .NET Core 2.0. It gives readers of any experience level a solid foundation in C# and .NET. The first part of the book runs you through the basics of C#, as well as debugging functions and object-oriented programming, before taking a quick tour through the latest features of C# 7.1 such as default literals, tuples, inferred tuple names, pattern matching, out variables, and more.After quickly taking you through C# and how .NET works, this book dives into the .NET Standard 2.0 class libraries, covering topics such as packaging and deploying your own libraries, and using common libraries for working with collections, performance, monitoring, serialization, files, databases, and encryption. The final section of the book demonstrates the major types of application that you can build and deploy cross-device and cross-platform. In this section, you'll learn about websites, web applications, web services, Universal Windows Platform (UWP) apps, and mobile apps. By the end of the book, you'll be armed with all the knowledge you need to build modern, cross-platform applications using C# and .NET.
Ayobami Adewole
This book guides developers to create robust, production-ready C# 7 and .NET Core applications through the practice of test-driven development process. In C# and .NET Core Test-Driven Development, you will learn the different stages of the TDD life cycle, basics of TDD, best practices, and anti-patterns. It will teach you how to create an ASP.NET Core MVC sample application, write testable code with SOLID principles and set up a dependency injection for your sample application. Next, you will learn the xUnit testing framework and learn how to use its attributes and assertions. You’ll see how to create data-driven unit tests and mock dependencies in your code. You will understand the difference between running and debugging your tests on .NET Core on LINUX versus Windows and Visual Studio. As you move forward, you will be able to create a healthy continuous integration process for your sample application using GitHub, TeamCity, Cake, and Microsoft VSTS.By the end of this book, you will have learned how to write clean and robust code through the effective practice of TDD, set up CI build steps to test and build applications as well as how to package application for deployment on NuGet.
Wisnu Anggoro
C++ is a general-purpose programming language which has evolved over the years and is used to develop software for many different sectors. This book will be your companion as it takes you through implementing classic data structures and algorithms to help you get up and running as a confident C++ programmer.We begin with an introduction to C++ data structures and algorithms while also covering essential language constructs. Next, we will see how to store data using linked lists, arrays, stacks, and queues. Then, we will learn how to implement different sorting algorithms, such as quick sort and heap sort. Along with these, we will dive into searching algorithms such as linear search, binary search and more. Our next mission will be to attain high performance by implementing algorithms to string datatypes and implementing hash structures in algorithm design. We'll also analyze Brute Force algorithms, Greedy algorithms, and more.By the end of the book, you'll know how to build components that are easy to understand, debug, and use in different applications.