C++
Język C++ i przetwarzanie współbieżne w akcji
Anthony Williams
Odkryj wszystkie tajemnice wielowątkowych aplikacji! Współbieżne przetwarzanie danych to największe wyzwanie dla programisty. Na każdym kroku czyhają na niego najbardziej wymyślne pułapki, a wykrycie pomyłki stanowi nie lada wyzwanie. Każdy programista wzdryga się na samą myśl o implementacji wielowątkowych rozwiązań. Nie musi tak być! Dzięki tej książce poradzisz sobie z większością zadań i zwinnie ominiesz zastawione pułapki. W trakcie lektury dowiesz się, jak zidentyfikować zadania, w których zastosowanie współbieżności ma sens, oraz jak zarządzać wątkami. Ponadto nauczysz się chronić współdzielone dane oraz synchronizować współbieżne operacje. Duży nacisk został tu położony na zagadnienia związane z projektowaniem współbieżnych struktur danych oraz kodu. Osobny rozdział poświęcono debugowaniu aplikacji wielowątkowych. Książka ta jest długo oczekiwaną pozycją, która ułatwi codzienne życie programistom C++. Dzięki tej książce: zaprojektujesz współbieżny kod oraz struktury ochronisz współdzielone dane poznasz zaawansowane metody zarządzania wątkami bez problemu przeprowadzisz debugowanie Twojej wielowątkowej aplikacji Sprawdź, jak tworzyć niezawodne oprogramowanie wielowątkowe!
Język C++ i przetwarzanie współbieżne w akcji. Wydanie II
Anthony Williams
Jeśli aplikacja ma działać szybko i niezawodnie, najlepiej wybrać C++, dojrzały i wszechstronny język programowania, konsekwentnie rozwijany przez mistrzów kodowania. Wymaga on zachowania pewnej dyscypliny podczas pracy, jednak pozwala na uzyskanie kodu o znakomitej wydajności. Nowy standard C++17 zapewnia doskonałą obsługę wielowątkowości oraz programowania wieloprocesorowego wymaganego podczas szybkiego przetwarzania grafiki, uczenia maszynowego czy też wykonywania innych zadań, w których kluczową sprawą okazuje się wydajność. Ta książka jest drugim, zaktualizowanym i uzupełnionym wydaniem doskonałego podręcznika dla profesjonalistów. Szczegółowo opisano w niej wszystkie etapy programowania współbieżnego: od utworzenia wątków po projektowanie wielowątkowych algorytmów i struktur danych. Przedstawiono zastosowania klas std::thread i std::mutex oraz funkcji std::async, a także złożone zagadnienia związane z operacjami atomowymi i modelem pamięci. Sporo miejsca poświęcono diagnozowaniu kodu i analizie rodzajów błędów. Opisano techniki lokalizowania błędów oraz metody testowania kodu. Prezentowany materiał został uzupełniony przykładami kodu i praktycznymi ćwiczeniami. Znalazły się tu również porady i wskazówki, które docenią wszyscy programiści C++. W tej książce między innymi: nowości w standardzie C++17 zagadnienia niskiego poziomu: model pamięci i operacje atomowe zagadnienia wyższego poziomu: złożone struktury danych zagadnienia wysokiego poziomu: kod wielowątkowy i zarządzanie wątkami obsługa równoległości za pomocą funkcji dodanych w standardzie C++17 debugowanie kodu wielowątkowego Programuj elegancko, twórz wydajny i czysty kod. Oto współbieżność w C++!
Język C++. Kompendium wiedzy. Wydanie IV
Bjarne Stroustrup
Twój przewodnik po C++! C++ dzielnie broni swojej pozycji na rynku języków programowania. Pomimo silnego naporu języka Java oraz platformy .NET wciąż jest niezastąpiony w wielu dziedzinach. Jeżeli tylko wymagana jest najwyższa wydajność, dostęp do sprzętu oraz przewidywalny czas wykonania, programiści najczęściej wybierają właśnie język C++. Ostatnia wersja standardu - oznaczona numerem 11 - pozwala na jeszcze łatwiejsze pisanie kodu oraz tworzenie szybszych i wydajniejszych programów. Najnowsze wydanie tej cenionej książki zostało poprawione i uzupełnione o nowości z tej właśnie wersji standardu języka C++. Dowiesz się, jak korzystać ze wskaźników, liczb losowych oraz udoskonalonych kontenerów. Ponadto poznasz najlepsze zastosowanie wyrażeń lambda czy szablonów. Oprócz omówienia nowości znajdziesz tu również szczegółowy przegląd klasycznych elementów języka C++. Pętle, zmienne, tablice, instrukcje warunkowe - to tylko niektóre z omawianych zagadnień. Książka stanowi doskonały podręcznik dla początkujących programistów i świetne rozwinięcie dla programujących w języku C++ na co dzień. Przekonaj się, jak łatwo i przyjemnie możesz opanować ten popularny język oprogramowania. Dzięki tej książce: poznasz nowości wprowadzone w C++ 11 zaznajomisz się z elementami biblioteki standardowej opanujesz podstawowy model pamięci języka C++ zrozumiesz model pamięci języka C++ Poznaj nowości C++ 11! podstawowe narzędzia, np. typy, obiekty, zakresy, pamięć, wykonywanie obliczeń i wiele więcej modularność oparta na przestrzeniach nazw, plikach źródłowych oraz obsłudze wyjątków abstrakcja w C++, tj. wykorzystanie klas, hierarchii klas oraz szablonów w programowaniu tradycyjnym, obiektowym oraz ogólnym biblioteka standardowa: kontenery, algorytmy, iteratory, narzędzia dodatkowe, łańcuchy, strumienia wejścia i wyjścia, lokacje, biblioteki liczbowe i wiele więcej szczegółowy opis podstawowego modelu pamięci języka C++ Czwarte wydanie książki pozwala na łatwe przejście na C++11 programistom, którzy do tej pory programowali przy użyciu C++98 lub w innych językach. Ponadto w książce znajduje się wiele cennych informacji nawet dla znawców standardu C++11.
Język C++. Owoce programowania. Wydanie IX
Tony Gaddis
C++ powstał w 1979 roku. Od tej pory cały czas się rozwija. Mimo że wymaga od programisty pewnej dyscypliny i staranności w pracy, jest chętnie wykorzystywany, daje bowiem ogromne możliwości i cechuje się elastycznością. W języku tym zaimplementowano mechanizmy programowania obiektowego. Opanowanie C++ nie tylko pozwala programistom tworzyć aplikacje dla praktycznie wszystkich platform, komputerów, serwerów i urządzeń mobilnych, ale również ułatwia naukę innych języków programowania. Aby w pełni skorzystać z tych zalet, trzeba od początku przykładać się do nauki pisania kodu z poszanowaniem dobrych praktyk. To kolejne wydanie lubianego podręcznika programowania w języku C++; książka przeznaczona dla osób, które dopiero rozpoczynają naukę kodowania, i tych, które mają już doświadczenie z innymi językami. Znalazło się tu przystępne wyjaśnienie podstaw działania komputera oraz wprowadzenie do samego języka, a także mnóstwo pożytecznych wskazówek dla początkujących. Bardziej zaawansowani programiści docenią szczegółowe opisy niuansów, zawiłości i źródeł możliwych problemów. Książka jest napisana prostym, zrozumiałym językiem i zawiera wiele świetnie dobranych przykładów ilustrujących nie tylko funkcje i konstrukcje języka C++, ale również przypadki i sposoby ich użycia. Najważniejsze zagadnienia: przystępne wprowadzenie do C++ funkcje i klasy, tablice i wektory wyrażenia lambda, wskaźniki i przeciążanie operatorów dziedziczenie i polimorfizm stosy, kolejki i rekurencja - drzewa binarne: tworzenie i operacje na drzewach Idź i programuj w C++!
Zbigniew Koza
Poznaj tajniki programowania w C++ Jak skonstruowany jest program w języku C++? Na czym polega programowanie obiektowe? Jak korzystać z bibliotek? C++ to jeden z najpopularniejszych języków programowania. Stosowany jest zarówno przez profesjonalistów, jak i hobbystów. Wszyscy jego użytkownicy doceniają elastyczność, ogromne możliwości i szybkość działania napisanych w nim programów. Ogromną zaletą C++ jest to, że nie wymusza na programistach stosowania określonego stylu programowania. Z racji swoich możliwości jest to język bardzo złożony, a efektywne programowanie w nim wymaga poznania wielu technik i pojęć oraz umiejętności wykorzystania tej wiedzy w praktyce. Książka "C++. Pierwsze starcie" to podręcznik, dzięki któremu opanujesz zasady programowania w tym języku i zdobędziesz solidne podstawy do dalszego rozwijania swoich umiejętności. Znajdziesz w niej opis aktualnego standardu C++ oraz omówienia narzędzi programistycznych i bibliotek. Poznasz elementy języka, zasady programowania obiektowego i tworzenia złożonych aplikacji. Przeczytasz o szablonach, bibliotece STL i obsłudze błędów. Dowiesz się, jak stosować biblioteki przy tworzeniu aplikacji dla systemów Windows i Linux. Struktura programu w C++ Elementy języka Korzystanie z funkcji Programowanie obiektowe Dynamiczne struktury danych Stosowanie bibliotek Szablony Biblioteka STL Obsługa błędów Zrób pierwszy krok na drodze do profesjonalnego tworzenia oprogramowania.
Język C. Solidna wiedza w praktyce. Wydanie VIII
Paul J. Deitel, Harvey Deitel
Początki programowania bywają trudne, jednak jest to bardzo ważny czas dla programisty. Od tego, jakich nabierze nawyków, w jakim stopniu opanuje zasady tworzenia bezpiecznego kodu i na ile będzie przestrzegał dobrych praktyk, naprawdę wiele zależy. Konieczne jest również dogłębne zrozumienie takich podstaw informatyki jak działanie procesora, zarządzanie pamięcią, wątki czy działanie kompilatora. Okazuje się, że skuteczne przyswojenie podstaw jest zadaniem bardzo trudnym, ale wyjątkowo ważnym i odpowiedzialnym - zarówno dla ucznia, jak i nauczyciela. To ósme, zaktualizowane i uzupełnione wydanie znakomitego podręcznika przeznaczonego dla adeptów języka C i ich nauczycieli. Zawiera doskonałe wprowadzenie do C oraz inżynierii oprogramowania. Materiał zamieszczony w książce jest aktualny i zgodny z nowoczesnymi zasadami pracy. Obszernie wyjaśniono tu zasady tworzenia i działania kodu, a także zagadnienia związane z typami danych, funkcjami, tablicami, operacjami na bitach, wyliczeniami, pracą na plikach i innymi kwestiami ważnymi z punktu widzenia funkcjonalności, wydajności i bezpieczeństwa kodu. To pozycja oparta na zasadach nowoczesnej dydaktyki - zawiera mnóstwo przydatnych przykładów, ćwiczeń, wskazówek i podsumowań. Poszczególne koncepcje wyjaśniono z użyciem pseudokodu, algorytmów i schematów, dzięki czemu zrozumienie języka C staje się dużo łatwiejsze. W tej książce między innymi: obszerne omówienie języka C funkcje wprowadzone w standardach C99 i C11 zasady bezpiecznego programowania testy i debugowanie kodu kwestie wydajności a wielowątkowość i systemy wielordzeniowe zasady programowania zorientowanego obiektowo: wprowadzenie do C++ C: ucz się od najlepszych i programuj jak mistrz!
Język C/C++ i obliczenia numeryczne. Krótkie wprowadzenie
Michał Matlak
Poznaj zalety języka C/C++! Początki programowania, czyli jak zacząć działać bez dogłębnej znajomości tematu Struktura prostych programów, czyli czego na pewno nie wolno Ci pominąć Obliczenia numeryczne, czyli jak możesz zastosować w praktyce swoją świeżo zdobytą wiedzę Język C i jego następca C++ towarzyszą programistom komputerowym już od dawna. Mimo to zainteresowanie tymi językami wcale nie maleje, lecz rośnie — i język C++ nadal się rozwija. Przyczyna jest prosta: nie ma on sobie równych, jeśli chodzi o szybkość działania kodu wynikowego i wszechstronne możliwości zastosowania w różnych dziedzinach. Jednak do nauki tego języka trzeba się trochę przyłożyć. Jeśli przerażają Cię opasłe tomy opisujące C/C++ w najdrobniejszych szczegółach, sięgnij po książkę, która pomoże Ci szybko nauczyć się podstaw programowania w tym języku. W tym krótkim, treściwym podręczniku pokazano sposób konstruowania programów obliczeniowych na prostych, przejrzystych przykładach. Dzięki temu także i Ty możesz szybko napisać swój pierwszy program, który ułatwi Ci pracę i odpowie na Twoje konkretne potrzeby. Dowiesz się stąd, jak używać poszczególnych elementów programowania w C/C++ jako przygotowania do pracy z gotowymi bibliotekami numerycznymi. Zobaczysz, jak powinna wyglądać struktura Twojego programu i jak zaimplementować w nim różne funkcje. Sprawdzisz, jak efektywnie uczyć się programowania i na co koniecznie należy zwracać uwagę. Zobacz sam! Szybki start Rodzaje wielkości w języku C/C++ i ich deklaracja Deklaracja tablic Operacje na zadeklarowanych wielkościach Instrukcje warunkowe i sterowanie pracą komputera Automatyzacja obliczeń Architektura programu i pierwsze programy Operacje wyprowadzania wyników Opis programów przykładowych do nauki programowania Wskaźniki, tablice, funkcje, struktury i liczby zespolone Cztery programy przykładowe C/C++ to przepustka do programowania dla każdego!
Ivo Balbaert
The release of Julia 1.0 is now ready to change the technical world by combining the high productivity and ease of use of Python and R with the lightning-fast speed of C++. Julia 1.0 programming gives you a head start in tackling your numerical and data problems. You will begin by learning how to set up a running Julia platform, before exploring its various built-in types. With the help of practical examples, this book walks you through two important collection types: arrays and matrices. In addition to this, you will be taken through how type conversions and promotions work. In the course of the book, you will be introduced to the homo-iconicity and metaprogramming concepts in Julia. You will understand how Julia provides different ways to interact with an operating system, as well as other languages, and then you'll discover what macros are. Once you have grasped the basics, you’ll study what makes Julia suitable for numerical and scientific computing, and learn about the features provided by Julia. By the end of this book, you will also have learned how to run external programs. This book covers all you need to know about Julia in order to leverage its high speed and efficiency for your applications.