C++

Książki z kategorii C++ przedstawiają szereg zasad programowania obiektowego z użyciem języka C++, poparte interesującymi przykładami i ćwiczeniami.

Poznacie pochodzenie i konstrukcję samego języka oraz jego elementy. Dowiecie się czym są instrukcje warunkowe, jak działają mechanizmy dziedziczenia oraz jak poprawnie zdefiniować obiekty i klasy. Odkryjecie tajniki kluczowych składników standardu ANSI/ISO, przeczytacie jak sprawnie dopasować wyrażenia regularne, a pojęcia jak kontenery, iteratory, wektory czy poliformizm staną się mniej abstrakcyjne.

41
Ładowanie...
EBOOK

C++ i Qt. Wprowadzenie do wzorców projektowych. Wydanie II

Alan Ezust, Paul Ezust

Najlepsze wzorce dla C++ i Qt! Język C++ przez długie lata był liderem wśród języków programowania i wciąż jest rozwijany. Qt to zestaw bibliotek pozwalający na tworzenie atrakcyjnego interfejsu użytkownika, działającego w różnych systemach operacyjnych — Windows, Mac OS X oraz Linux. Projekt jest intensywnie rozwijany od 1992 roku, a najnowsza wersja daje nawet możliwość tworzenia aplikacji internetowych czy mobilnych. Wykorzystanie możliwości C++ oraz potencjału Qt może dać niezwykłe efekty! W trakcie lektury nauczysz się podstaw języka C++ i zgłębisz tajniki bibliotek Qt. Zdobędziesz interesujące informacje na temat wykorzystania kontenerów, metaobiektów, metawłaściwości i mechanizmu refleksji. Dowiesz się, jak wykorzystać wzorzec MVC (ang. Model-View-Controller) oraz w jaki sposób opanować problemy związane z programowaniem współbieżnym. Ponadto nauczysz się panować nad wskaźnikami i unikać typowych problemów związanych z dostępem do pamięci. Książka ta jest doskonałą pozycją dla wszystkich programistów C++, którzy chcą wzbogacić swój warsztat o bibliotekę Qt. Dzięki tej książce: - poznasz podstawy C++ oraz Qt - opanujesz programowanie współbieżne - zrozumiesz wzorzec MVC - zbudujesz interesującą aplikację przy użyciu C++ i Qt Wykorzystaj moc duetu: C++ i Qt!

42
Ładowanie...
EBOOK

C++ in Embedded Systems. A practical transition from C to modern C++

Amar Mahmutbegović, Steve Branam

Transitioning from C can be daunting, with concerns about performance overhead, added complexity, and unfamiliar tooling. Addressing these challenges, Amar Mahmutbegovic, an advocate for modern C++ in embedded development, shows how to harness zero-cost abstractions, compile-time checks, and modern C++ capabilities to preserve performance while achieving safer, cleaner code. This book bridges the gap between traditional C and advanced C++, helping you retain the efficiency C developers expect while unlocking safety and expressiveness of modern C++.Starting with a modern development environment setup, including a Docker container for seamless example replication, you’ll overcome challenges of using the C++ standard library in memory-constrained settings and explore the Embedded Template Library (ETL) as an alternative. The book walks through essential C++ concepts before exploring advanced topics such as templates, strong typing, error handling, compile-time computation, and RAII. Through practical examples, you'll implement a sequencer, write a type-safe HAL, and apply patterns like Command, State, and Observer to solve embedded problems.By the end, you’ll be able to apply modern C++ to develop robust, modular firmware with performance matching or exceeding hand-coded C solutions.*Email sign-up and proof of purchase required

43
Ładowanie...
EBOOK

C++ Memory Management. Write leaner and safer C++ code using proven memory-management techniques

Patrice Roy, Michael Wong

C++ programmers often face challenges in allocating and managing memory efficiently, especially given the diverse needs of real-time systems, embedded systems, games, and conventional desktop applications. This book offers a targeted approach to address the unique memory constraints of each domain.Written by an ISO C++ Standards Committee member, Patrice Roy, this guide covers fundamental concepts of object lifetime and memory organization to help you write simpler and safer programs. You’ll learn how to control memory allocation mechanisms, create custom containers and allocators, and adapt allocation operators to suit your specific requirements, making your programs smaller, faster, safer, and more predictable.Starting with core principles of memory management, this book introduces modern facilities that simplify your work and then dives into memory management mechanics, building solutions for specific application needs, and measuring their impact on your program’s behavior.By the end of this book, you’ll be able to write secure programs that handle memory optimally for your application domain. You will also have a strong grasp of both high-level abstractions for safer programs and low-level abstractions that allow detailed customization.

44
Ładowanie...
EBOOK

C++ Optymalizacja kodu

Kurt Guntheroth

We współczesnym świecie, pełnym pośpiechu i rywalizacji, wydajność programu jest równie istotna dla klientów, jak oferowane przez niego funkcje. Ten praktyczny podręcznik wyjaśnia podstawowe zasady podnoszenia wydajności, które pomagają w optymalizacji kodu C++. Uczy, jak dostosowywać poprawny kod C++ tak, aby działał on szybciej i zużywał mniej zasobów na każdym komputerze, począwszy od zegarka, poprzez telefon, stację roboczą, superkomputer, aż po globalną sieć serwerów. Autor Kurt Guntheroth prezentuje szereg przykładów demonstrujących, w jaki sposób można, stopniowo wdrażając przedstawione zasady, osiągnąć kod spełniający wymagania klientów dotyczące reaktywności i przepustowości. O przydatności porad zamieszczonych w tej książce będzie się można przekonać, gdy kolega z zespołu zawoła: Zaczęło działać niesamowicie szybko. Kto coś naprawił? Dowiedz się jak: Wyznaczać kandydatów do optymalizacji przy użyciu programu profilującego oraz czasomierzy programowych Przeprowadzać powtarzalne eksperymenty w celu mierzenia wydajności zmodyfikowanych wersji kodu Optymalizować użycie zmiennych dynamicznych Podnieść wydajność kosztownych pętli i funkcji Przyspieszyć działanie funkcji przetwarzających ciągi Rozpoznawać efektywne algorytmy i wzorce optymalizacyjne Identyfikować mocne i słabe strony klas kontenerów w C++ Analizować wyszukiwanie i sortowanie z perspektywy optymalizatora W efektywny sposób używać funkcji przesyłania strumieniowego we/wy w języku C++ W wydajny sposób stosować w kodzie C++ funkcje równoległe bazujące na wątkach Cenne źródło praktycznych porad aktualnych, trafnych i osadzonych w rzeczywistości. Solidne kompendium wiedzy o nowym obliczu języka C++. Jerry Tan Starszy programista, The Depository Trust and Clearing Corporation Kurt Guntheroth, programista z ponad 35-letnim doświadczeniem, od ćwierćwiecza zajmuje się opracowywaniem wydajnego kodu C++. Rozwija programy dla platform Windows, Linux oraz systemów wbudowanych. Kurt mieszka w Seattle w stanie Waszyngton.

45
Ładowanie...
EBOOK

C++. Podróż po języku dla zaawansowanych. Wydanie II

Bjarne Stroustrup

Żadnego programisty nie trzeba przekonywać o zaletach C++. To język dojrzały, wszechstronny, pozwalający uzyskiwać maksymalną wydajność kodu. Do tego wciąż konsekwentnie rozwijany - współczesny C++ wygląda zupełnie inaczej niż dwadzieścia lat temu. Oznacza to, że profesjonalny programista, który chce w pełni wykorzystać zalety nowoczesnego C++, musi bardzo dobrze orientować się w nowościach przynoszonych przez kolejne specyfikacje języka. Warto również wiedzieć, jak zmieniają się dostępne narzędzia językowe i biblioteki, a także które paradygmaty programowania są przez nie wspierane i w jakim zakresie. Ta książka jest idealnym wyborem dla programisty C lub C++, który chce lepiej zapoznać się z nowościami w języku C++. Jest to zwięzły i dokładny przewodnik po najważniejszych elementach języka i komponentach biblioteki standardowej z uwzględnieniem niedawno wprowadzonych udoskonaleń i udogodnień. Znalazły się tu również liczne przykłady i praktyczne wskazówki, które szczególnie istotne okażą się w kontekście paradygmatów programowania, takich jak programowanie generyczne i zorientowane obiektowo. Poza dość podstawowymi zagadnieniami omówiono tu tematykę semantyki przenoszenia, jednolitej inicjalizacji, wyrażeń lambda, kontenerów i współbieżności. Książka kończy się interesującym opisem projektu i ewolucji języka C++. Najciekawsze zagadnienia: podstawy działania kodu C++ operacje standardowe oraz operacje wejścia-wyjścia szablony, w tym szablony funkcji i szablony zmienne algorytmy w C++ i narzędzia pomocnicze zadania, wątki, komunikacja między procesami niektóre nowości planowane dla przyszłych implementacji C++ Na pewno znasz C++. Ale czy sprawnie się nim posługujesz?

46
Ładowanie...
EBOOK

C++. Podróż po języku dla zaawansowanych. Wydanie III

Bjarne Stroustrup

C++ zmienił się nie do poznania: jest nowocześniejszy, bardziej precyzyjny, pozwala też na pisanie zwięzłego i efektywnego kodu. Programista ma dokładniejszą kontrolę nad działaniem programu, co przekłada się na szybkość pracy i lepsze wykorzystywanie zasobów sprzętowych. Dodatkowo ekosystem C++ oferuje mnóstwo bibliotek, narzędzi czy środowisk programistycznych. Aby jednak pisać w nim dobry kod, trzeba sprawnie poruszać się po świecie C++. To drugie wydanie zwięzłego przewodnika po C++ dla doświadczonych programistów, zaktualizowane do standardu C++20. Dzięki niemu zaznajomisz się z najważniejszymi elementami języka i biblioteki standardowej, koniecznymi do efektywnej pracy w takich stylach programowania jak programowanie zorientowane obiektowo czy generyczne. W tym wydaniu opisano wiele nowych elementów dodanych w C++20, w tym moduły, koncepcje, współprocedury i zakresy. Omówiono też wybrane komponenty biblioteki, które pojawią się dopiero w standardzie C++23. Jeśli jesteś programistą C lub C++ i zależy Ci, by lepiej poznać najnowsze możliwości języka C++, albo biegle posługujesz się innym językiem programowania i chcesz ogólnie zaznajomić się z zaletami nowoczesnego C++ ― nie znajdziesz bardziej zwięzłego i prostszego przewodnika niż ten. W książce między innymi: nowe możliwości języka w standardzie C++20 moduły, klasy i obsługa błędów operacje, zarządzanie zasobami i wejście-wyjście generatory, potoki, kontenery współbieżność i wielozadaniowość Oto nowoczesny C++: poznaj jego ukryte możliwości!

47
Ładowanie...
EBOOK

C++ Programming for Linux Systems. Create robust enterprise software for Linux and Unix-based operating systems

Desislav Andreev, Stanimir Lukanov

Around 35 million Linux and almost 2 billion Android users rely on C++ for everything from the simplest embedded and IoT devices to cloud services, supercomputing, and space exploration. To help you produce high-quality software, two industry experts have transformed their knowledge and experience into practical examples in system programming with C++ Programming for Linux Systems.In this book, you'll explore the latest C++20 features, while working on multiple specific use cases. You’ll get familiar with the coroutines and modern approaches in concurrent and multithreaded programming. You'll also learn to reshape your thinking when analyzing system behavior in Linux (POSIX) environments. Additionally, you'll discover advanced discussions and novel solutions for complex challenges, while approaching trivial system operations with a new outlook and learning to choose the best design for your particular case.You can use this workbook as an introduction to system programming and software design in Linux or any Unix-based environment. You’ll also find it useful as a guideline or a supplement to any C++ book.By the end of this book, you’ll have gained advanced knowledge and skills for working with Linux or any Unix-based environment.

48
Ładowanie...
EBOOK

C++. Projektowanie oprogramowania. Zasady i wzorce projektowe

Klaus Iglberger

Większość dobrych książek o C++ koncentruje się na cechach tego języka, niuansach działania czy też szczegółach i specyfice implementacji. Tymczasem o jakości oprogramowania decyduje jego projekt. To właśnie dzięki projektowi można tworzyć oprogramowanie, które będzie łatwe do utrzymania, modyfikowania, rozszerzania i testowania. Problem polega na tym, że projektowanie oprogramowania jest trudnym i wymagającym zadaniem. Ta książka jest doskonałym uzupełnieniem podręcznej biblioteczki każdego programisty C++. Opisano w niej znaczenie dobrego projektu oprogramowania oraz zasady tworzenia takich projektów. Omówiono szereg przydatnych wzorców projektowych, dzięki którym łatwiej można zrozumieć, jak zarządzać zależnościami i abstrakcjami, zwiększać możliwości modyfikowania i rozszerzania tworzonego kodu oraz stosować nowoczesne wzorce projektowe. Zaprezentowano wzorce wykorzystujące wiele różnych paradygmatów, w tym programowanie: obiektowe, uogólnione oraz funkcyjne. Pokazano też największą zaletę nowoczesnego języka C++: możliwość łączenia różnych paradygmatów oraz tworzenia oprogramowania, które przetrwa dziesięciolecia. W tej książce między innymi: ocena kodu pod kątem projektowania oprogramowania sposoby realizacji takich celów projektowych jak np. łatwość modyfikowania i rozszerzania kodu zalety i wady różnych koncepcji projektowania przydatność wzorców projektowych w rozwiązywaniu problemów zasady wyboru form wzorców projektowych Z tej książki nauczyłem się znacznie więcej, niż mógłbym oczekiwać. Mark Summerfield, właściciel Qtrac Ltd. Bez dobrego projektu nie będzie dobrej aplikacji!