C#
Kategoria C# zawiera szereg publikacji omawiających język programowania C#, który łączy w sobie najlepsze cechy Javy i języka C++, a obecnie uważany jest za podstawowe narzędzie programistyczne dla platformy .NET.
Z podręczników tych poznacie składnię samego języka i komponenty platformy .NET oraz techniki komunikacji z bazami danych, korzystając z technologii ADO.NET i języka LINQ. Dowiecie się czym są instrukcje warunkowe, pętle, dziedziczenie lub hermetyzacja obiektów. Znajdziecie przydatne informacje jak przeprowadzić analizę ruchu w sieci oraz czym jest programowanie obiektowe a także przeczytacie jak sprawnie korzystać z protokołów sieciowych ICMP, HTTP i FTP.
Matt Eland
Termin dług techniczny oznacza zbiór skrótów, niedociągnięć i potworków projektowych, które powstają w trakcie ewolucyjnego rozwoju programu. Jeśli się ich nie zlikwiduje, mogą dramatycznie spowolnić pracę nad programem. Rozwiązywanie tego typu problemów jest nazywane refaktoryzacją i każdy programista powinien umieć ją przeprowadzać. Dzięki tej przystępnej, świetnie napisanej książce dowiesz się, czym jest dług techniczny, co prowadzi do jego powstawania i w jaki sposób można go bezpiecznie zrefaktoryzować przy użyciu nowoczesnych narzędzi dostępnych w środowisku Visual Studio, a także najnowszych składników języka C# 12 i platformy .NET 8. Nauczysz się też korzystać z zaawansowanych testów jednostkowych tworzonych przy użyciu xUnit i takich bibliotek jak Moq, Snapper czy Scientist.NET. Dowiesz się, jak stosować zasady SOLID, aby tworzyć łatwy w utrzymaniu kod, poznasz również techniki programowania defensywnego, które można stosować w nowszych wersjach C#. Ponadto nauczysz się przeprowadzać analizy kodu i pisać własne analizatory Roslyn do wykrywania i rozwiązywania problemów typowych dla Twojego projektu. Najciekawsze zagadnienia: najważniejsze informacje o długu technicznym różne sposoby refaktoryzacji klas, metod i wierszy kodu efektywne testy jednostkowe zasady SOLID i tworzenie kodu łatwego w utrzymaniu korzystanie ze sztucznej inteligencji GitHub Copilot standardy kodowania w zwinnych zespołach
Abhishek Kumar, Srinivasa Mahendrakar
With more enterprises adapting cloud-based and API-based solutions, application integration has become more relevant and significant than ever before. Parallelly, Serverless Integration has gained popularity, as it helps agile organizations to build integration solutions quickly without having to worry about infrastructure costs. With Microsoft Azure’s serverless offerings, such as Logic Apps, Azure Functions, API Management, Azure Event Grid and Service Bus, organizations can build powerful, secure, and scalable integration solutions with ease.The primary objective of this book is to help you to understand various serverless offerings included within Azure Integration Services, taking you through the basics and industry practices and patterns. This book starts by explaining the concepts of services such as Azure Functions, Logic Apps, and Service Bus with hands-on examples and use cases. After getting to grips with the basics, you will be introduced to API Management and building B2B solutions using Logic Apps Enterprise Integration Pack.This book will help readers to understand building hybrid integration solutions and touches upon Microsoft Cognitive Services and leveraging them in modern integration solutions. Industry practices and patterns are brought to light at appropriate opportunities while explaining various concepts.
Einar Ingebrigtsen, Einar Ingebrigtsen
Gabriel Baptista, Francesco Abbruzzese
Software architecture is the practice of implementing structures and systems that streamline the software development process and improve the quality of an app. This fully revised and expanded third edition, featuring the latest features of .NET 6 and C# 10, enables you to acquire the key skills, knowledge, and best practices required to become an effective software architect.Software Architecture with C# 10 and .NET 6, Third Edition features new chapters that describe the importance of the software architect, microservices with ASP.NET Core, and analyzing the architectural aspects of the front-end in the applications, including the new approach of .NET MAUI. It also includes a new chapter focused on providing a short introduction to artificial intelligence and machine learning using ML.NET, and updated chapters on Azure Kubernetes Service, EF Core, and Blazor.You will begin by understanding how to transform user requirements into architectural needs and exploring the differences between functional and non-functional requirements. Next, you will explore how to choose a cloud solution for your infrastructure, taking into account the factors that will help you manage a cloud-based app successfully. Finally, you will analyze and implement software design patterns that will allow you to solve common development problems.By the end of this book, you will be able to build and deliver highly scalable enterprise-ready apps that meet your business requirements.
Gabriel Baptista, Francesco Abbruzzese
Software architecture is the practice of implementing structures and systems that streamline the software development process and improve the quality of an app. This fully revised and expanded second edition, featuring the latest features of .NET 5 and C# 9, enables you to acquire the key skills, knowledge, and best practices required to become an effective software architect.This second edition features additional explanation of the principles of Software architecture, including new chapters on Azure Service Fabric, Kubernetes, and Blazor. It also includes more discussion on security, microservices, and DevOps, including GitHub deployments for the software development cycle.You will begin by understanding how to transform user requirements into architectural needs and exploring the differences between functional and non-functional requirements. Next, you will explore how to carefully choose a cloud solution for your infrastructure, along with the factors that will help you manage your app in a cloud-based environment.Finally, you will discover software design patterns and various software approaches that will allow you to solve common problems faced during development.By the end of this book, you will be able to build and deliver highly scalable enterprise-ready apps that meet your organization’s business requirements.
Struktury danych i algorytmy w języku C#. Projektowanie efektywnych aplikacji
Marcin Jamro
C# jest nowoczesnym i elastycznym językiem programowania. Aby w pełni skorzystać z jego zalet, trzeba płynnie posługiwać się dostępnymi w nim strukturami danych i algorytmami, pozwalają one bowiem na efektywnie organizowanie danych i mają znaczący wpływ na wydajność aplikacji. Z punktu widzenia programisty kluczowe jest ich właściwe zaimplementowanie: wybór właściwej struktury danych i związanego z nią algorytmu stanowi o jakości tworzonego kodu. Na przykład w celu wykonywania wysokowydajnych operacji na zbiorach warto użyć zbioru haszowanego. Inne konstrukcje umożliwiają rozwiązywanie kolejnych problemów. Dzięki tej książce nauczysz się używania struktur danych i implementacji najważniejszych algorytmów w języku C#. Najpierw zapoznasz się z najprostszymi strukturami danych o swobodnym dostępie - z tablicami oraz listami. Wyjaśniono tu również działanie struktur danych o dostępie sekwencyjnym, opartych na stosach i kolejkach. Przedstawiono zastosowanie słowników, dzięki którym można mapować klucze na wartości i prowadzić szybkie wyszukiwanie. Przystępnie opisano korzystanie z najbardziej zaawansowanych konstrukcji, takich jak drzewo binarne, binarne drzewo poszukiwań, drzewo samorównoważące się i kopiec. W końcowej części książki znajdziesz ciekawą analizę stosowania grafów i związanych z nimi algorytmów, takich jak przeszukiwanie grafu, minimalne drzewo rozpinające, kolorowanie węzłów oraz znajdowanie najkrótszej ścieżki. Najciekawsze zagadnienia ujęte w książce: różne typy danych w C#: wartościowe i referencyjne tablice i listy oraz algorytmy sortowania operacje na zbiorach oraz wbudowany typ HashSet struktury drzewiaste i kopce: binarne, dwumianowe oraz Fibonacciego algorytmy oparte na grafach, w tym algorytm Dijkstry C#. Liczy się algorytm i odpowiednia struktura danych!