0 POZYCJI
KOSZYK PUSTY
Pobierz fragment
Wybierz format pliku:
Pobierz

Programowanie w języku C++

(eBook)

Wprowadzenie dla inżynierów

0.00  (0 ocen)
 Dodaj recenzję
Rozwiń szczegóły
  • Druk: Warszawa, 2023

  • Wydanie/Copyright: wyd. 1

  • Autor: Bogusław Cyganek

  • Tłumacz: Krzysztof Kapustka, Wojciech Fenrich

  • Wydawca: Wydawnictwo Naukowe PWN

  • Formaty:
    ePub mobi (Watermark)
    Watermark
    Znak wodny czyli Watermark to zaszyfrowana informacja o użytkowniku, który zakupił produkt. Dzięki temu łatwo jest zidentyfikować użytkownika, który rozpowszechnił produkt w sposób niezgodny z prawem. Ten rodzaj zabezpieczenia jest zdecydowanie najbardziej przyjazny dla użytkownika, ponieważ aby otworzyć książkę zabezpieczoną Watermarkiem nie jest potrzebne konto Adobe ID oraz autoryzacja urządzenia.

Zwiń szczegóły
Cena katalogowa: 139,00 zł
Najniższa cena z 30 dni: 97,30 zł
Cena produktu

Cena katalogowa – rynkowa cena produktu, często jest drukowana przez wydawcę na książce.

Najniższa cena z 30 dni – najniższa cena sprzedaży produktu w księgarni z ostatnich 30 dni, obowiązująca przed zmianą ceny.

Wszystkie ceny, łącznie z ceną sprzedaży, zawierają podatek VAT.

97,30 zł
Dostępność:
online po opłaceniu
Dodaj do schowka

Programowanie w języku C++

Wyjątkowy podręcznik omawiający podstawy nowoczesnego języka C++.
Profesor Bogusław Cyganek, ceniony ekspert w dziedzinach widzenia komputerowego, sztucznej inteligencji oraz programowania systemów mikroprocesorowych, prezentuje obszerne lekcje programowania obiektowego w języku C++ i koncentruje się na dostarczeniu szybkiej i łatwej do opanowania wiedzy dla osób początkujących, jak również średniozaawansowanych. Publikacja jest przeznaczona studentów kierunków technicznych. Będzie ona również przydatna dla specjalistów oraz osób już programujących, ale pragnących poznać nowoczesną wersję języka C++.
Książka uczy programowania poprzez: prowadzenie czytelników od prostych technik z nowoczesnym C++ i Biblioteką Standardową do bardziej zaawansowanych metod obiektowych i funkcji językowych, diagramów UML oraz wzorców projektowych, jak również metodyk projektowania oprogramowania, dostarczanie praktycznych przykładów ułatwiających zrozumienie technik programowania i konstrukcji języka C++ wspieranie dobrych praktyk programistycznych i rozwoju osobistego, ograniczenie opisów tekstowych na rzecz rysunków, tabel, diagramów i innych materiałów objaśniających, omówienie zagadnień pokrewnych, jak podstawy języka C, narzędzia CMake oraz git, jak również metody testowania oprogramowania i inne użyteczne biblioteki, dostęp do strony internetowej zawierającej przykładowy kod i przydatne linki do zasobów edukacyjnych, pytania testowe i egzaminacyjne na końcu każdego rozdziału. Jest to niezbędna publikacja dla wszystkich, którzy stawiają pierwsze kroki w nauce programowania z użyciem nowoczesnego języka C++.

  • Kategorie:
    1. Ebooki i Audiobooki »
    2. Informatyka
    1. Ebooki i Audiobooki »
    2. Technika
  • Język wydania: polski
  • ISBN: 978-83-01-22906-1
  • ISBN druku: 978-83-01-22651-0
  • Liczba stron: 732
  • Sposób dostarczenia produktu elektronicznego
    Produkty elektroniczne takie jak Ebooki czy Audiobooki są udostępniane online po uprzednim opłaceniu (PayU, BLIK) na stronie Twoje konto > Biblioteka.
    Pliki można pobrać zazwyczaj w ciągu kilku-kilkunastu minut po uzyskaniu poprawnej autoryzacji płatności, choć w przypadku niektórych publikacji elektronicznych czas oczekiwania może być nieco dłuższy.
    Sprzedaż terytorialna towarów elektronicznych jest regulowana wyłącznie ograniczeniami terytorialnymi licencji konkretnych produktów.
  • Ważne informacje techniczne
  • Minimalne wymagania sprzętowe:
    • procesor: architektura x86 1GHz lub odpowiedniki w pozostałych architekturach
    • Pamięć operacyjna: 512MB
    • Monitor i karta graficzna: zgodny ze standardem XGA, minimalna rozdzielczość 1024x768 16bit
    • Dysk twardy: dowolny obsługujący system operacyjny z minimalnie 100MB wolnego miejsca
    • Mysz lub inny manipulator + klawiatura
    • Karta sieciowa/modem: umożliwiająca dostęp do sieci Internet z prędkością 512kb/s
  • Minimalne wymagania oprogramowania:
    • System Operacyjny: System MS Windows 95 i wyżej, Linux z X.ORG, MacOS 9 lub wyżej, najnowsze systemy mobilne: Android, iPhone, SymbianOS, Windows Mobile
    • Przeglądarka internetowa: Internet Explorer 7 lub wyżej, Opera 9 i wyżej, FireFox 2 i wyżej, Chrome 1.0 i wyżej, Safari 5
    • Przeglądarka z obsługą ciasteczek i włączoną obsługą JavaScript
    • Zalecany plugin Flash Player w wersji 10.0 lub wyżej.
  • Informacja o formatach plików:
    • PDF - format polecany do czytania na laptopach oraz komputerach stacjonarnych.
    • EPUB - format pliku, który umożliwia czytanie książek elektronicznych na urządzeniach z mniejszymi ekranami (np. e-czytnik lub smartfon), dając możliwość dopasowania tekstu do wielkości urządzenia i preferencji użytkownika.
    • MOBI - format zapisu firmy Mobipocket, który można pobrać na dowolne urządzenie elektroniczne (np.e-czytnik Kindle) z zainstalowanym programem (np. MobiPocket Reader) pozwalającym czytać pliki MOBI.
    • Audiobooki w formacie MP3 - format pliku, przeznaczony do odsłuchu nagrań audio.
  • Rodzaje zabezpieczeń plików:
    • Watermark - (znak wodny) to zaszyfrowana informacja o użytkowniku, który zakupił produkt. Dzięki temu łatwo jest zidentyfikować użytkownika, który rozpowszechnił produkt w sposób niezgodny z prawem.
    • Brak zabezpieczenia - część oferowanych w naszym sklepie plików nie posiada zabezpieczeń. Zazwyczaj tego typu pliki można pobierać ograniczoną ilość razy, określaną przez dostawcę publikacji elektronicznych. W przypadku zbyt dużej ilości pobrań plików na stronie WWW pojawia się stosowny komunikat.
    Więcej informacji o publikacjach elektronicznych
Przedmowa     13
Podziękowania     15
Podziękowania do wydania polskiego     17
Wykaz skrótów     19
1. Wprowadzenie     21
1.1. Struktura książki     27
1.2. Konwencje formatowania     30
1.3. O kodzie i projektach     32
2. Wprowadzenie do programowania     35
2.1. Model sprzętowy     35
2.2. Ekosystem tworzenia oprogramowania     39
2.3. Etapy tworzenia oprogramowania     42
2.4. Reprezentacja i uruchamianie algorytmów     44
2.4.1. Reprezentowanie algorytmów     44
2.4.2. Korzystanie z kompilatorów dostępnych w Internecie     46
2.4.3. Struktura programu w C++     48
2.4.4. Analiza kodu     49
2.4.5. (🛠) Budowa linuksowej postaci wykonywalnej     50
2.5. Przykładowy projekt – kalkulator procentu składanego     53
2.5.1. Analiza procentu składanego     54
2.5.2. Implementacja kalkulatora procentu składanego     55
2.5.3. Budowanie i uruchamianie oprogramowania     58
2.6. Przykładowy projekt – zliczanie wystąpień znaków w tekście     59
2.6.1. Analiza problemu i implementacja     59
2.6.2. Uruchomienie kodu C++ za pomocą kompilatora dostępnego w Internecie     61
2.6.3. Kod histogramu – wyjaśnienie     62
2.7. Podsumowanie     65
Pytania i ćwiczenia     65
3. Podstawy C++     69
3.1. Stałe i zmienne – wbudowane typy danych, ich zakres oraz inicjalizacja     69
3.2. Przykładowy projekt – zbieranie ocen studentów     80
3.3. Nasz przyjaciel debugger     84
3.4. Podstawowa struktura danych – std::vector     87
3.5. Przykładowy projekt – implementowanie macierzy w postaci wektora wektorów     93
3.6. Specjalny wektor do przechowywania tekstu – std::string     95
3.7. Słowo kluczowe auto oraz decltype do automatycznej dedukcji typu     101
3.8. Popularne algorytmy standardowe     104
3.9. Struktury: zbieranie obiektów różnego typu     108
3.10. (🛠) Tablice o stałym rozmiarze     113
3.10.1. Wielowymiarowe tablice o stałym rozmiarze     115
3.11. Referencje     117
3.12. (🛠) Wskaźniki     121
3.12.1. Dostęp do obiektów za pomocą wskaźników     121
3.13. Instrukcje     126
3.13.1. Bloki instrukcji oraz dostęp do zmiennych – rola nawiasów klamrowych     127
3.13.2. Instrukcje C++     129
3.13.2.1. Instrukcje warunkowe     129
3.13.2.2. Instrukcje pętli     135
3.13.2.3. Instrukcje pomocnicze – continue oraz break     140
3.13.2.4. Instrukcja goto     142
3.13.2.5. Strukturalna obsługa wyjątków – instrukcja try-catch     142
3.14. Funkcje     144
3.14.1. Anatomia funkcji w C++     145
3.14.2. Przekazywanie argumentów do i z funkcji     150
3.14.2.1. Przekazywanie argumentów przez kopię (semantyka wartości)     151
3.14.2.2. Pośrednie przekazywanie argumentów przez referencję     153
3.14.2.3. (🛠) Przekazywanie przez wskaźnik     155
3.14.3. Mechanizm wywoływania funkcji i funkcje wbudowane     157
3.14.4. Funkcje rekurencyjne i stos wywołań     159
3.14.5. Przeciążanie funkcji – rozwiązywanie widoczności za pomocą przestrzeni nazw     160
3.14.6. Funkcje lambda     163
3.14.7. (🛠) Więcej na temat funkcji lambda     168
3.14.8. (🛠) Wskaźniki do funkcji     174
3.14.9. (🛠) Funkcje w środowisku obiektowym     176
3.15. Przykładowy projekt – opakowywanie obiektów strukturą z konstruktorem     178
3.15.1. EMatrix w środowisku obiektowym     181
3.15.2. Podstawowe operacje z użyciem EMatrix     182
3.15.3. Operacje wejścia i wyjścia na EMatrix     184
3.15.4. Proste operacje matematyczne na macierzy EMatrix     186
3.15.5. Organizowanie plików projektu i uruchamianie aplikacji     188
3.15.6. Rozszerzanie inicjalizacji macierzy za pomocą prostego generatora liczb losowych     191
3.16. Przykładowy projekt – reprezentowanie równań kwadratowych     193
3.16.1. Definicja klasy do reprezentowania wielomianów kwadratowych     194
3.16.2. Implementacja składowych TQuadEq     194
3.16.3. TQuadEq w akcji     205
3.17. Przykładowy projekt – krotki i powiązania strukturalne do konwertowania liczb rzymskich     206
3.17.1. Więcej o std::tuple i powiązaniu strukturalnym     210
3.17.2. Jak napisać test jednostkowy oprogramowania     212
3.17.3. Automatyzowanie testów jednostkowych – z użyciem standardowej biblioteki liczb losowych     213
3.18. Projekt przykładowy – tworzenie komponentu kalkulatora walutowego     216
3.18.1. Analiza problemu wymiany walut     216
3.18.2. Projekt oprogramowania CurrencyCalc     219
3.18.3. Klasa TCurrency reprezentująca rekordy walut     220
3.18.3.1. Manipulatory wejścia/wyjścia C++     223
3.18.4. Klasa TCurrencyExchanger do wymiany walut     225
3.18.5. Łączenie wszystkiego w całość – kompletny program wymiany walut     230
3.19. Operatory     236
3.19.1. Podsumowanie operatorów C++     239
3.19.2. Dalsze uwagi na temat operatorów     263
3.20. Podsumowanie     264
Pytania i ćwiczenia     265
4. Zgłębianie programowania obiektowego     269
4.1. Podstawowe reguły oraz filozofia projektowania i programowania obiektowego     270
4.2. Anatomia klasy     274
4.2.1. Konwencja nazewnictwa i samodokumentujący się kod     277
4.3. Reguły uzyskiwania dostępu do składowych klasy     277
4.4. Przykładowy projekt – klasa TComplex do przeciążania operatorów     280
4.4.1. Definicja klasy TComplex     281
4.4.2. Definicja składowych klasy TComplex     287
4.4.3. Funkcje testujące dla klasy TComplex     289
4.5. Więcej o referencjach     293
4.5.1. Referencje prawostronne i przekazywania     293
4.5.2. Referencje kontra wskaźniki     298
4.5.3. Pułapki z referencjami     299
4.6. Przykładowy projekt – opanowywanie składowych klasy z użyciem klasy TheCube     301
4.6.1. Automatyczna kontra jawna definicja konstruktorów     302
4.6.2. Układ i semantyka obiektu TheCube     312
4.6.3. Semantyka kopiowania płytkiego i głębokiego     313
4.6.4. Semantyka konstruktora przenoszącego i przypisania przenoszącego     314
4.6.5. Implementacja operatorów strumieniowania dla TheCube     316
4.6.6. Sprawdzanie TheCube     318
4.7. Projekt przykładowy – przenoszenie EMatrix do klasy     321
4.7.1. Definicja klasy EMatrix     322
4.7.2. Implementacja operatorów strumieniowania klasy     324
4.7.3. Implementacja operatorów arytmetycznych     328
4.7.4. Testowanie operacji na macierzach     330
4.8. Wprowadzenie do szablonów i programowania uogólnionego     332
4.8.1. Uogólnianie klasy przy użyciu szablonów     332
4.8.2. (🛠) Specjalizacje szablonów     337
4.8.3. Funkcje szablonowe i sprawdzanie typu     338
4.8.4. Przykładowy projekt – projektowanie klas szablonowych przy użyciu TStack     340
4.8.4.1. Projekt i implementacja klasy TStackFor     342
4.8.4.2. Testowanie TStack     345
4.8.5. Szablonowe funkcje składowe     347
4.9. Relacje między klasami – „zna”, „ma” oraz „jest”     350
4.10. Przykładowy projekt – rozszerzanie funkcjonalności poprzez dziedziczenie klas z użyciem TComplexQuadEq     357
4.11. Funkcje wirtualne i polimorfizm     363
4.12. (🛠) Więcej na temat mechanizmu wirtualnego     370
4.13. (🛠) Ciekawie rekurencyjny wzorzec szablonu i statyczny polimorfizm     373
4.14. (🛠) Klasy domieszki     377
4.15. Przykładowy projekt – klasa TLongNumberFor do wydajnego przechowywania liczb o dowolnej długości     379
4.15.1. Reprezentacja Binary-Coded Decimal     381
4.15.2. Kolejność bajtów     381
4.15.3. Definicja klasy TLongNumberFor     382
4.15.3.1. Operacje konwersji typu     385
4.15.3.2. Funkcja testująca TLongNumberFor     391
4.15.4. Projektowanie klas dla numeru PESEL     392
4.15.4.1. Agregowanie klasy PESEL     393
4.15.4.2. Odziedziczona klasa PESEL     395
4.15.4.3. Organizacja projektu LongNumber     396
4.15.5. (🛠) Rozszerzanie funkcjonalności klasy TLongNumberFor z użyciem wzorca pełnomocnika     398
4.15.5.1. Definicja klasy Proxy     399
4.15.5.2. Testowanie funkcjonalności klasy TLongNumberFor z użyciem wzorca pełnomocnika     402
4.16. Silne typy     403
4.17. Podsumowanie     405
Pytania i ćwiczenia     405
5. Zarządzanie pamięcią     409
5.1. Rodzaje magazynów danych     409
5.2. Dynamiczny przydział pamięci – jak unikać wycieków pamięci     416
5.2.1. Wprowadzenie do inteligentnych wskaźników i zarządzania zasobami     419
5.2.1.1. RAII i odwijanie stosu     420
5.3. Inteligentne wskaźniki – omówienie z przykładami     421
5.3.1. (🛠) Więcej o std::unique_ptr     421
5.3.1.1. Kontekst użycia std::unique_ptr     421
5.3.1.2. Wzorzec projektowy metody wytwórczej     435
5.3.1.3. Niestandardowe usuwanie unique_ptr     438
5.3.1.4. Konstrukcje do unikania podczas korzystania z unique_ptr     439
5.3.2. (🛠) Więcej o shared_ptr i weak_ptr     440
5.4. Podsumowanie     443
Pytania i ćwiczenia     443
6. Zaawansowane programowanie obiektowe     445
6.1. Obiekty funkcyjne     445
6.2. Projekt przykładowy – rozszerzanie o wyszukiwanie walut w plikach XML oraz korzystanie z maszyny stanów i wyrażeń regularnych za pomocą biblioteki regex     452
6.2.1. Dopasowywanie do wzorca za pomocą biblioteki wyrażeń regularnych     453
6.2.2. Wzorzec maszyny stanów     455
6.2.3. Implementowanie klasy rozszerzonej     456
6.2.4. Rozszerzenie projektu – wczytywanie informacji o walutach z internetu     463
6.2.5. Uruchamianie rozszerzonej wersji CurrencyCalc     469
6.2.6. Tworzenie biblioteki statycznej     474
6.2.7. System plików C++     475
6.2.8. Interfejs użytkownika     484
6.2.8.1. Definicja klasy CC_GUI     485
6.2.8.2. Definicje składowych klasy CC_GUI i mechanizm wywołania zwrotnego     489
6.2.8.3. Uruchamianie aplikacji z GUI     497
6.3. Zegary systemowe i pomiar czasu     498
6.4. (🛠) Mierzenie czasu wykonywania funkcji     502
6.5. Klasa Range     505
6.5.1. Programowanie funkcyjne i biblioteka std::ranges     510
6.6. Przykładowy projekt – parsowanie wyrażeń     511
6.6.1. Definiowanie wyrażeń języka i zasad gramatyki formalnej     512
6.6.2. Projektowanie biblioteki przetwarzania wyrażeń     515
6.6.3. Pierwszy interpreter poleceń     516
6.6.4. Budowanie drzewa składniowego z użyciem wzorca projektowego kompozytu     520
6.6.4.1. Wzorzec projektowy kompozytu do definiowania węzłów drzewa     521
6.6.4.2. Implementacja hierarchii TNode i współpraca z wizytatorami     522
6.6.4.3. Implementacja klasy ValueLeafNode     525
6.6.4.4. Implementacja klasy BinOperator     526
6.6.4.5. Implementacja klasy PlusOperator     528
6.6.4.6. Głębokie kopiowanie obiektów węzła – mechanizm prototypowania     529
6.6.5. Interpreter do budowy drzew składniowych     531
6.6.6. Stos dla inteligentnych wskaźników     536
6.6.7. Przechodzenie po drzewach za pomocą wzorca projektowego wizytatora     540
6.6.7.1. Wizytator ewaluujący wyrażenie     543
6.6.7.2. Wizytator wypisujący wyrażenie     545
6.6.8. Testowanie interpreterów     547
6.6.9. Reprezentowanie wyrażeń na stosie w odwrotnej notacji polskiej     551
6.6.9.1. Odwrócona notacja polska     551
6.6.9.2. Algorytm do ewaluowania wyrażenia RPN     552
6.7. Podsumowanie     558
Pytania i ćwiczenia     558
7. Arytmetyka komputerowa     563
7.1. Reprezentacja wartości całkowitej     563
7.1.1. Algorytm konwersji podstawy     565
7.1.2. Reprezentacje szesnastkowe i ósemkowe     566
7.1.3. Dodawanie binarne     567
7.1.4. Wartości ujemne i odejmowanie     568
7.2. Operacje przesunięcia binarnego     569
7.1.5. Flagi kontroli arytmetycznej     570
7.1.6. Reprezentowanie ułamków     573
7.2. Operacje przesunięcia binarnego     577
7.3. (🛠) Przykładowy projekt – model programowy dla reprezentacji stałoprzecinkowej     578
7.3.1. Liczby stałoprzecinkowe i ich arytmetyka     579
7.3.2. Definicja klasy FxFor     579
7.3.3. Wybrane metody klasy FxFor     587
7.3.4. Zastosowania dla FxFor     593
7.4. Reprezentacje liczb zmiennoprzecinkowych     596
7.4.1. Reprezentacja liczb w formacie zmiennoprzecinkowym     598
7.4.2. Rozkład liczb zmiennoprzecinkowych i konsekwencje obliczeniowe     602
7.4.3. (🛠) Błąd przybliżenia wartości rzeczywistej przy użyciu reprezentacji zmiennoprzecinkowej     606
7.4.4. Standard IEEE     754 dla arytmetyki zmiennoprzecinkowej     608
7.4.5. Standardowy model operacji zmiennoprzecinkowych     611
7.4.6. Obliczenia ze świadomością o błędach numerycznych     611
7.4.7. Przykładowy projekt – ewaluacja algorytmów sumujących     617
7.4.8. Przykładowy projekt – metoda Newtona do znajdywania miejsc zerowych funkcji     623
7.4.8.1. Funkcja do obliczania pierwiastka kwadratowego na podstawie iteracji Newtona     627
7.5. Podsumowanie     629
Pytania i ćwiczenia     630
8. Podstawy programowania równoległego     633
8.1. Podstawowe zagadnienia związane z obliczeniami równoległymi     633
8.2. Dodawanie równoległości do algorytmów standardowych     637
8.3. Uruchamianie zadań asynchronicznych     640
8.4. Zrównoleglanie za pomocą biblioteki OpenMP     643
8.4.1. Uruchamianie zespołu wątków i zapewnianie ochrony wyłącznego dostępu     644
8.4.2. Równoległa pętla for i operacje redukcji     646
8.4.3. Równoległość dla dużych ilości danych     649
8.5. Podsumowanie     658
Pytania i ćwiczenia     658
Dodatek     661
A.1. Dyrektywy preprocesora     661
A.2. Krótkie wprowadzenie do języka C     666
A.2.1. Tablice wbudowane     667
A.2.1.1. Wielowymiarowe tablice o stałym rozmiarze     670
A.2.2. Przekazywanie tablic do funkcji – funkcja main     671
A.2.3. Struktury C     676
A.2.4. Funkcje i operacje wejścia/wyjścia w C     677
A.2.5. Unie     678
A.2.6. Operacje wykonywane na pamięci i ciągach znaków     680
A.2.7. Łączenie kodu C i C++     686
A.3. Łączenie i organizacja binarna obiektów C/C++     686
A.4. Graficzny interfejs użytkownika i interfejs sieci Web dla projektów C++     689
A.5. Konwertowanie wartości bin, oct, dec i hex za pomocą FixBinCalc     691
A.6. Zestaw narzędzi programistycznych     692
A.6.1. Narzędzie do generowania projektów (CMake)     692
A.6.2. Systemy kontroli wersji i repozytoria     697
A.6.3. Profiler     698
A.7. Testowanie oprogramowania     699
A.8. Podsumowanie     706
Pytania i ćwiczenia     706
Bibliografia     709
Indeks     713

Inni Klienci oglądali również

48,30 zł 69,00 zł
Do koszyka

Nauka programowania z Minecraftem

Dla dzieci od 10 lat i ich rodziców.„Blokowe” wprowadzenie do programowania.Pokonaliście pnącza, podróżowaliście do głębokich jaskiń, a może nawet dotarliście na sam Koniec i z powrotem, ale czy kiedyś udało Wam si...
35,91 zł 39,90 zł
Do koszyka

Wiedza o języku i kompetencje językowe uczniów

Zawartość tomu zainteresuje wszystkich, których troską napawają problemy, jakie rosnąca wciąż grupa uczniów ma z werbalizowaniem swych myśli, uczuć, spostrzeżeń, z posługiwaniem się językiem ogólnopolskim. Opracowania zamieszczone ...
18,90 zł 21,00 zł
Do koszyka

Kuchnia w języku i kulturze dawniej i dziś

Książka Kuchnia w języku i kulturze dawniej i dziś powstała z inspiracji światem kuchni, dostarczającym nieustannych wrażeń zmysłowych. Większość opublikowanych artykułów, zamieszczonych w monografii, została wygłoszona podczas konferencji nauko...
58,80 zł 84,00 zł
Do koszyka

Programowanie funkcyjne

Programowanie funkcyjne jest jednym z głównych paradygmatów programowania. W rozmowach o programowaniu funkcyjnym zawsze pojawiają się określone pojęcia i zagadnienia. Rekurencja. Leniwe obliczenia. Przezroczystość odwołań. Eliminowanie e...
90,30 zł 129,00 zł
Do koszyka

Mikroserwisy. Wzorce z przykładami w języku Java

Skuteczne tworzenie aplikacji opartych na mikroserwisach wymaga opanowania nowej wiedzy i praktyk architektonicznych. W tej wyjątkowej książce pionier architektury mikroserwisowej i posiadacz tytułu Java Champion – Chris Richardson – zgroma...
20,79 zł 23,10 zł
Do koszyka

Eufemizmy we współczesnym języku słowackim

Monografia pt. Eufemizmy we współczesnym języku słowackim stanowi opracowanie zjawisk związanych z szeroko pojętą eufemizacją. Autorka na materiale słowackim omawia eufemizmy funkcjonujące w języku słowackim, wypełniając tym samym lukę w badania...

Recenzje

Dodaj recenzję
Nikt nie dodał jeszcze recenzji. Bądź pierwszy!