C++

25
26
Ebook

C++. Biblioteka standardowa. Podręcznik programisty. Wydanie II

Nicolai M. Josuttis

Lektura obowiązkowa dla każdego programisty C++! Pomimo olbrzymiej konkurencji ze strony platformy .NET oraz języka Java język C++ wciąż jest niezastąpiony w wielu dziedzinach. Wszędzie tam, gdzie wymagane są najwyższa wydajność, pełna kontrola nad sprzętem oraz przewidywalność, C++ jest bezkonkurencyjny. Biblioteka standardowa C++ to zestaw klas i interfejsów, które w znaczny sposób zwiększają możliwości tego języka. Warto wykorzystać jej potencjał! Biblioteka standardowa C++ poza wieloma niewątpliwymi zaletami ma jedną poważną wadę - jest trudna do opanowania. Właśnie dlatego potrzebny Ci jest ten podręcznik! W trakcie lektury poznasz nowe elementy języka C++ w wersji 11. Następnie dowiesz się, czym jest standardowa biblioteka szablonów (STL), oraz zobaczysz, jak wykorzystać w codziennej pracy: mapy, multimapy, iteratory, listy oraz wiele innych elementów. Na sam koniec nauczysz się poprawnie korzystać ze współbieżności oraz tworzyć aplikacje obsługujące różne wersje językowe. Każdy z komponentów biblioteki został dokładnie przedstawiony: z opisem przeznaczenia, przykładami oraz problemami, których może przysporzyć. Książka ta jest obowiązkową lekturą każdego programisty C++! Dzięki tej książce: poznasz nowości języka C++ w wersji 11 wykorzystasz możliwości kontenerów STL zrozumiesz zastosowanie iteratorów zobaczysz na praktycznych przykładach, jak działają komponenty błyskawicznie opanujesz możliwości biblioteki standardowej C++ Odkryj potęgę C++!

27
Ebook

C++. Ćwiczenia praktyczne. Wydanie III

Andrzej Stasiewicz

Poznaj nowoczesny warsztat pracy programisty Naucz się tworzyć funkcje i używać typów danych Dowiedz się, na czym polega programowanie obiektowe w C++ Przekonaj się, że programowanie w C++ to nic trudnego! C++ stanowi obecnie najbardziej rozpowszechniony język programowania. Choć nie każdy o tym wie, dał on początek wielu innym, wyspecjalizowanym językom, zaś dla tysięcy studentów kierunków informatycznych niezmiennie pozostaje jednym z najważniejszych przedmiotów na studiach. Napisane w nim aplikacje można spotkać dosłownie na każdym kroku i w każdym systemie operacyjnym, a sprawnie posługujący się nim programiści mogą liczyć na dobre oferty pracy. Mimo upływu lat C++ wciąż jest językiem bardzo nowoczesnym, a dzięki długiej historii stanowi narzędzie bardzo dojrzałe i doskonale sprawdzone. Jedynym problemem wydaje się to, że tak wiele osób uważa go za język skomplikowany i trudny do opanowania. O tym, że wcale tak być nie musi, możesz przekonać się dzięki książce "C++. Ćwiczenia praktyczne. Wydanie III ". Zgromadzone w niej informacje i ćwiczenia w prosty i niezwykle pragmatyczny sposób wprowadzą Cię w podstawy "tajemnej" wiedzy programistycznej. Dowiesz się między innymi, jak posługiwać się plikami źródłowymi tworzącymi program C++, zapewniać sobie dostęp do bibliotek i używać funkcji standardowych, wykonywać operacje wejścia-wyjścia, korzystać z różnych instrukcji warunkowych oraz deklarować czy definiować własne funkcje. Poznasz też standardowe typy danych dostępne w języku C++, nauczysz się deklarować zmienne i przeprowadzać na nich rozmaite operacje. Zrozumiesz, jak tworzyć własne typy danych i do czego może Ci się to przydać. Warsztat programisty C++ Podstawowe informacje o języku i narzędziach Organizacja plików źródłowych Obsługa strumieni wejścia i wyjścia Dołączanie bibliotek i korzystanie z funkcji bibliotecznych Implementowanie algorytmów przy użyciu instrukcji warunkowych Deklarowanie i definiowanie własnych funkcji Tworzenie i używanie zmiennych różnych typów Definiowanie własnych typów danych w postaci klas Podstawowe informacje o kontenerach Przećwicz C++ w praktyce!

28
Ebook

C++ Data Structures and Algorithm Design Principles. Leverage the power of modern C++ to build robust and scalable applications

John Carey, Shreyans Doshi, Payas Rajan

C++ is a mature multi-paradigm programming language that enables you to write high-level code with a high degree of control over the hardware. Today, significant parts of software infrastructure, including databases, browsers, multimedia frameworks, and GUI toolkits, are written in C++.This book starts by introducing C++ data structures and how to store data using linked lists, arrays, stacks, and queues. In later chapters, the book explains the basic algorithm design paradigms, such as the greedy approach and the divide-and-conquer approach, which are used to solve a large variety of computational problems. Finally, you will learn the advanced technique of dynamic programming to develop optimized implementations of several algorithms discussed in the book.By the end of this book, you will have learned how to implement standard data structures and algorithms in efficient and scalable C++ 14 code.

29
Ebook

C++ Data Structures and Algorithms. Learn how to write efficient code to build scalable and robust applications in C++

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.

30
Ebook

C++ dla bystrzaków. Wydanie VII

Stephen R. Davis

Wprowadzenie do języka C++ Programowanie funkcjonalne Używanie klas nadrzędnych i dziedziczenia Programowanie w języku C++ od podstaw Bez względu na to, czy jesteś początkującym czy średnio zaawansowanym programistą, który chce doszlifować swoje umiejętności, dzięki C++ dla bystrzaków możesz zostać sprawnym programistą. Ten podręcznik, zaktualizowany, uwzględniający zmiany z rozszerzenia do języka C++ z 2014 roku, pomoże Ci zrozumieć klasy, dziedziczenie, pokaże, jak sprawić, by Twój program wykonywał się w sposób bezpieczny - i wiele więcej. W książce: Twój pierwszy program Operatory matematyczne i logiczne Programowanie obiektowe Obsługa błędów i obrona przed hakerami

31
Ebook

C++. Dla każdego. Wydanie VII

Siddhartha Rao

Programowanie w Twoim zasięgu! Pomimo swojego wieku C++ wciąż zajmuje wysoką lokatę na liście najpopularniejszych języków programowania. Przez lata dzięki wydajności oraz dostępności zdobył sobie licznych wielbicieli i wciąż jest niezastąpiony w wielu zadaniach, choć w branży przewagę nad nim mają język Java i platforma .NET. Jeżeli jednak oczekujesz najwyższej wydajności i przewidywalnego czasu wykonania zadania, język C++ może okazać się jedynym słusznym wyborem. Z tą książką opanujesz język C++ bez trudu, poświęcając na to tylko godzinę dziennie! W trakcie lektury zgłębisz jego tajniki, poznasz zalety oraz wady. Każda kolejna godzina to coraz bardziej zaawansowana, a przy tym ciekawsza dawka wiedzy. Opanowanie materiału zawartego w podręczniku pozwoli Ci na pisanie programów o różnym stopniu złożoności oraz swobodne poruszanie się w świecie języka C++. W trakcie lektury opanujesz składnię i elementy języka - tablice, instrukcje warunkowe, pętle czy stałe nie będą miały przed Tobą żadnych tajemnic. W kolejnych rozdziałach dowiesz się, jak wykorzystać wskaźniki i dyrektywy kompilatora. Ponadto zaznajomisz się z zasadami programowania obiektowego oraz poznasz nowości zawarte w wersji 11. Książka ta jest doskonałym źródłem wiedzy dla każdego adepta języka C++! Dzięki tej książce: poznasz składnię języka C++ opanujesz nowości wersji 11 języka C++ poznasz zasady programowania obiektowego napiszesz program o dowolnym stopniu skomplikowania Poznaj i wykorzystaj potencjał języka C++!

32
Ebook

C++ Fundamentals. Hit the ground running with C++, the language that supports tech giants globally

Antonio Mallia, Francesco Zoffoli

C++ Fundamentals begins by introducing you to the C++ compilation model and syntax. You will then study data types, variable declaration, scope, and control flow statements. With the help of this book, you'll be able to compile fully working C++ code and understand how variables, references, and pointers can be used to manipulate the state of the program. Next, you will explore functions and classes — the features that C++ offers to organize a program — and use them to solve more complex problems. You will also understand common pitfalls and modern best practices, especially the ones that diverge from the C++98 guidelines.As you advance through the chapters, you'll study the advantages of generic programming and write your own templates to make generic algorithms that work with any type. This C++ book will guide you in fully exploiting standard containers and algorithms, understanding how to pick the appropriate one for each problem. By the end of this book, you will not only be able to write efficient code but also be equipped to improve the readability, performance, and maintainability of your programs.

33
Ebook

C++ Game Development By Example. Learn to build games and graphics with SFML, OpenGL, and Vulkan using C++ programming

Siddharth Shekar

Although numerous languages are currently being used to develop games, C++ remains the standard for fabricating expert libraries and tool chains for game development. This book introduces you to the world of game development with C++.C++ Game Development By Example starts by touching upon the basic concepts of math, programming, and computer graphics and creating a simple side-scrolling action 2D game. You'll build a solid foundation by studying basic game concepts such as creating game loops, rendering 2D game scenes using SFML, 2D sprite creation and animation, and collision detection. The book will help you advance to creating a 3D physics puzzle game using modern OpenGL and the Bullet physics engine. You'll understand the graphics pipeline, which entails creating 3D objects using vertex and index buffers and rendering them to the scene using vertex and fragment shaders. Finally, you'll create a basic project using the Vulkan library that'll help you get to grips with creating swap chains, image views, render passes, and frame buffers for building high-performance graphics in your games.By the end of this book, you’ll be ready with 3 compelling projects created with SFML, the Vulkan API, and OpenGL, and you'll be able take your game and graphics programming skills to the next level.

34
Ebook

C++ High Performance. Boost and optimize the performance of your C++17 code

Björn Andrist, Viktor Sehr

C++ is a highly portable language and can be used to write both large-scale applications and performance-critical code. It has evolved over the last few years to become a modern and expressive language. This book will guide you through optimizing the performance of your C++ apps by allowing them to run faster and consume fewer resources on the device they're running on without compromising the readability of your code base.The book begins by helping you measure and identify bottlenecks in a C++ code base. It then moves on by teaching you how to use modern C++ constructs and techniques. You'll see how this affects the way you write code. Next, you'll see the importance of data structure optimization and memory management, and how it can be used efficiently with respect to CPU caches. After that, you'll see how STL algorithm and composable Range V3 should be used to both achieve faster execution and more readable code, followed by how to use STL containers and how to write your own specialized iterators.Moving on, you’ll get hands-on experience in making use of modern C++ metaprogramming and reflection to reduce boilerplate code as well as in working with proxy objects to perform optimizations under the hood. After that, you’ll learn concurrent programming and understand lock-free data structures. The book ends with an overview of parallel algorithms using STL execution policies, Boost Compute, and OpenCL to utilize both the CPU and the GPU.

35
Ebook

C++ High Performance. Master the art of optimizing the functioning of your C++ code - Second Edition

Björn Andrist, Viktor Sehr, Ben Garney

C++ High Performance, Second Edition guides you through optimizing the performance of your C++ apps. This allows them to run faster and consume fewer resources on the device they're running on without compromising the readability of your codebase.The book begins by introducing the C++ language and some of its modern concepts in brief. Once you are familiar with the fundamentals, you will be ready to measure, identify, and eradicate bottlenecks in your C++ codebase. By following this process, you will gradually improve your style of writing code. The book then explores data structure optimization, memory management, and how it can be used efficiently concerning CPU caches.After laying the foundation, the book trains you to leverage algorithms, ranges, and containers from the standard library to achieve faster execution, write readable code, and use customized iterators. It provides hands-on examples of C++ metaprogramming, coroutines, reflection to reduce boilerplate code, proxy objects to perform optimizations under the hood, concurrent programming, and lock-free data structures. The book concludes with an overview of parallel algorithms.By the end of this book, you will have the ability to use every tool as needed to boost the efficiency of your C++ projects.

36
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!

37
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.

38
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?

39
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!

40
Ebook

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

Desislav Andreev, Stanimir Lukanov, Milena Lazarova

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.

41
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!

42
Ebook

C++ Reactive Programming. Design concurrent and asynchronous applications using the RxCpp library and Modern C++17

Praseed Pai, Peter Abraham

Reactive programming is an effective way to build highly responsive applications with an easy-to-maintain code base. This book covers the essential functional reactive concepts that will help you build highly concurrent, event-driven, and asynchronous applications in a simpler and less error-prone way.C++ Reactive Programming begins with a discussion on how event processing was undertaken by different programming systems earlier. After a brisk introduction to modern C++ (C++17), you’ll be taken through language-level concurrency and the lock-free programming model to set the stage for our foray into the Functional Programming model. Following this, you’ll be introduced to RxCpp and its programming model. You’ll be able to gain deep insights into the RxCpp library, which facilitates reactive programming. You’ll learn how to deal with reactive programming using Qt/C++ (for the desktop) and C++ microservices for the Web.By the end of the book, you will be well versed with advanced reactive programming concepts in modern C++ (C++17).

43
Ebook

C++. Struktury danych i algorytmy

Wisnu Anggoro

C++ to dojrzały język programowania o wielu różnych zastosowaniach. Inżynier oprogramowania, który chce w pełni skorzystać z jego zalet, powinien płynnie posługiwać się dostępnymi w tym języku strukturami danych i algorytmami. W ten sposób łatwiej można rozwiązywać konkretne problemy. Zastosowanie odpowiedniej struktury danych oraz algorytmu jest również ważne z punktu widzenia wydajności działania kodu, co bezpośrednio przekłada się na szybkość pracy aplikacji. Bez dogłębnego zrozumienia tych zagadnień bardzo trudno nauczyć się biegle programować w C++. Dzięki tej książce dowiesz się, na czym polega implementacja klasycznych struktur danych i algorytmów w C++. Znajdziesz tu również przystępne wprowadzenie do podstawowych konstrukcji językowych oraz do korzystania z zintegrowanego środowiska programistycznego (IDE). Ponadto dowiesz się, w jaki sposób przechowywać dane za pomocą list wiązanych, tablic, stosów i kolejek, a także jak zaimplementować algorytmy sortowania, takie jak sortowanie szybkie i sortowanie przez kopcowanie, oraz algorytmy wyszukiwania, takie jak wyszukiwanie liniowe czy binarne. Kolejnym ważnym zagadnieniem ujętym w książce jest wysoka wydajność algorytmów operujących na ciągach znakowych i strukturach mieszających, jak również analiza algorytmów siłowych, zachłannych i wielu innych. Najciekawsze zagadnienia ujęte w książce: podstawy C++, w tym kontrola przepływu kodu i abstrakcyjne typy danych listy, listy wiązane, stosy i kolejki algorytmy sortowania, w tym bąbelkowe, przez selekcję, wstawianie, scalanie tworzenie hierarchicznej struktury drzewa praktyczne aspekty implementacji algorytmów C++. O jakości kodu decyduje algorytm i odpowiednia struktura danych!

44
Ebook

C++ System Programming Cookbook. Practical recipes for Linux system-level programming using the latest C++ features

Onorato Vaticone

C++ is the preferred language for system programming due to its efficient low-level computation, data abstraction, and object-oriented features. System programming is about designing and writing computer programs that interact closely with the underlying operating system and allow computer hardware to interface with the programmer and the user. The C++ System Programming Cookbook will serve as a reference for developers who want to have ready-to-use solutions for the essential aspects of system programming using the latest C++ standards wherever possible.This C++ book starts out by giving you an overview of system programming and refreshing your C++ knowledge. Moving ahead, you will learn how to deal with threads and processes, before going on to discover recipes for how to manage memory. The concluding chapters will then help you understand how processes communicate and how to interact with the console (console I/O). Finally, you will learn how to deal with time interfaces, signals, and CPU scheduling.By the end of the book, you will become adept at developing robust systems applications using C++.

45
Ebook

C++ w 24 godziny. Wydanie VI

Rogers Cadenhead, Jesse Liberty

C++ powstał w 1979 roku i doskonale przetrwał próbę czasu, a dziś oferuje programistom potężne możliwości i ogromną elastyczność. Co więcej, istnieją języki programowania, których twórcy inspirowali się właśnie C++; jednym z nich jest Java. Oznacza to, że opanowanie C++ daje wiele korzyści: ułatwia zrozumienie innych języków programowania, a przede wszystkim pozwala na tworzenie aplikacji praktycznie dla wszystkich platform, począwszy od komputerów i serwerów, przez urządzenia mobilne i konsole do gier, aż po komputery typu mainframe. Dzięki tej książce w ciągu 24 godzinnych lekcji poznasz podstawy programowania w C++ i szybko zaczniesz tworzyć w pełni funkcjonalne aplikacje. Najpierw zapoznasz się z instalacją i użyciem kompilatora, później dowiesz się, jak debugować tworzony kod, aż wreszcie poznasz nowości wprowadzone w standardzie C++14. Dowiesz się, jak zarządzać wejściem i wyjściem oraz jak pracować z pętlami i tablicami. Nauczysz się programowania zorientowanego obiektowo i zobaczysz, jak wykorzystywać szablony. Każda lekcja kończy się zestawem pytań i odpowiedzi, warsztatami oraz ćwiczeniami do samodzielnego wykonania. Najważniejsze zagadnienia: instalacja i korzystanie z kompilatora C++ na platformach Windows, MacOS i Linux podstawowe koncepcje C++, takie jak funkcje i klasy wyrażenia lambda, wskaźniki i przeciążanie operatorów dziedziczenie i polimorfizm nowe funkcje języka wprowadzone w standardzie C++14 C++. Programowanie na miarę wyobraźni!

46
Ebook

C++. Wykorzystaj potęgę aplikacji graficznych

Janusz Ganczarski, Mariusz Owczarek

Napisz wieloplatformowe programy w C++ Jak korzystać z bibliotek wxWidgets oraz Qt? W jaki sposób implementować obsługę zdarzeń w aplikacjach? Jak budować aplikacje sieciowe i bazodanowe? Okres dominacji jednego systemu operacyjnego i przeznaczonych dla niego rozwiązań powoli odchodzi do historii. Fenomen popularności różnych dystrybucji Linuksa i coraz mocniejsza pozycja komputerów Mac sprawiają, że wiele firm produkujących oprogramowanie decyduje się na tworzenie rozwiązań wieloplatformowych. W przypadku ogromnych korporacji stworzenie zespołów programistycznych pracujących równolegle nad kilkoma wersjami jednej aplikacji dla różnych systemów operacyjnych nie stanowi problemu, ale w mniejszych firmach jest to niemożliwe. Tu z pomocą przychodzą biblioteki pozwalające na tworzenie kodu źródłowego prawidłowo kompilującego się na każdej platformie, na której je zainstalowano. Książka "C++. Wykorzystaj potęgę aplikacji graficznych" opisuje tworzenie oprogramowania z wykorzystaniem dwóch takich właśnie bibliotek - wxWidgets oraz Qt. Czytając ją, dowiesz się, jak wykorzystać język C++ i środowisko Dev-C++ do pisania programów, z których korzystać będą mogli użytkownicy systemu Windows, Linuksa i Mac OS. Nauczysz się stosować kontrolki i komponenty, budować menu i interfejsy użytkownika, obsługiwać zdarzenia i implementować operacje graficzne. Przeczytasz także o aplikacjach bazodanowych i sieciowych. Każde z zagadnień omówiono zarówno w kontekście biblioteki wxWidgets, jak i biblioteki Qt, dzięki czemu poznasz dwie metody rozwiązywania tych samych zadań programistycznych - by wybrać sobie tę, która bardziej Ci odpowiada. Instalacja środowiska programistycznego i bibliotek Struktura aplikacji i podstawowe komponenty Stosowanie komponentów Obsługa zdarzeń myszy i klawiatury Budowanie menu aplikacji Komunikacja sieciowa Operacje graficzne Połączenia z bazami danych Drukowanie z poziomu aplikacji Dzięki tej książce stworzysz aplikacje, które docenią użytkownicy wszystkich systemów operacyjnych.

47
Ebook

C++. Zadania z programowania z przykładowymi rozwiązaniami

Mirosław J. Kubiak

C++ w analizie konkretnych przykładów Proste operacje wejścia/wyjścia Tablice, iteracje oraz podprogramy Programowanie obiektowe i pliki tekstowe Odrobinę zapomniany już język C++ wciąż ma ogromną wartość; w wielu miejscach i zastosowaniach nadal sprawdza się znakomicie. Dobry programista, student lub nauczyciel informatyki, a także każdy człowiek zainteresowany programowaniem powinien znać podstawy tego języka i umieć rozwiązywać konkretne zadania. Podobnie zresztą powinien opanować najważniejsze zagadnienia dotyczące programowania w językach Java i Turbo Pascal - i stosować je w praktyce. Trzyczęściowy zbiór, w którym zamieszczono te same lub bardzo zbliżone zadania wraz z rozwiązaniami w każdym z wyżej wymienionych języków, pozwala sprawdzić i uzupełnić wiedzę poprzez analizę podanego kodu we wszystkich tych językach. Książka "C++. Zadania z programowania z przykładowymi rozwiązaniami" to jedna z trzech części zbioru zadań programistycznych, zawierająca zadania w języku C++. Znajdziesz tu ćwiczenia w zakresie komunikowania się komputera z użytkownikiem (standardowe operacje wejścia/wyjścia), wykorzystania instrukcji warunkowych oraz iteracji, używania tablic jedno i dwuwymiarowych. Kolejne zadania dotyczyć będą podprogramów, programowania obiektowego oraz zastosowania plików tekstowych. Taki układ książki ułatwi Ci przyswojenie sobie najważniejszych zagadnień z języka C++ w najlepszy możliwy sposób - na prostych, konkretnych przykładach. Operacje wejścia/wyjścia Instrukcje warunkowe Iteracje Tablice jedno- i dwuwymiarowe Podprogramy Programowanie obiektowe Pliki tekstowe Praktycznie opanuj podstawy języka C++. Zajrzyj także do: Zbiór zadań adresowany jest do maturzystów, studentów, nauczycieli informatyki oraz osób zainteresowanych programowaniem lub rozpoczynających naukę programowania w języku C++. Uczniowie techników informatycznych mogą zbiory zadań wykorzystać do szybkiej powtórki przed egzaminem zawodowym. W trakcie pisania tej książki Autor korzystał z tzw. aplikacji konsolowych (ang. console application) i kompilatora firmy Borland (C++).

48
Ebook

C++. Zadania z programowania z przykładowymi rozwiązaniami. Wydanie II

Mirosław J. Kubiak

Zostań specem od C++! C++ wciąż pozostaje jednym z podstawowych, najważniejszych i najbardziej potrzebnych języków programowania. Dobry programista powinien go znać i umiejętnie wykorzystywać do tworzenia najróżniejszych projektów. Jak najłatwiej porządnie opanować taki język? Jak przeskoczyć z poziomu podstawowego na zaawansowany? Jak nauczyć się wychwytywać niuanse decydujące o jakości proponowanych rozwiązań? Odpowiedź jest jedna: trzeba ćwiczyć, rozwiązywać kolejne zadania, mierzyć się z coraz większymi wyzwaniami, pisać kod i porównywać go z kodem pisanym przez mistrzów. Drugie zaktualizowane wydanie tej popularnej pozycji powstało w odpowiedzi na potrzeby czytelników. Pomoże Ci doskonalić swój warsztat w zorganizowany, przejrzysty i niebanalny sposób. Na początek wystarczy znajomość podstawowych elementów C++ oraz podstaw nawigacji w bezpłatnym środowisku Microsoft Visual Studio Community 2015 with Updates. A potem czeka Cię kilkadziesiąt zadań, po których żaden problem programistyczny nie wyda Ci się zbyt trudny. Proste operacje wejścia–wyjścia Podejmujemy decyzje w programie Iteracje Tablice Podprogramy Programowanie obiektowe Pliki tekstowe Wskaźniki, zmienne dynamiczne i struktury danych Szablony C++ — praktyka czyni mistrza!