- Obecnie brak na stanie
Produkty
Kategorie
- Kategorie główne
-
- ARDUINO
- AUTOMATYKA
- CYBERBEZPIECZEŃSTWO
- DRUK 3D
- EDUKACJA
- ELEKTRONIKA
- Akcesoria PC
- Chłodzenie
- Czujniki
- Czujniki 6DOF/9DOF/10DOF
- Czujniki ciśnienia
- Czujniki gazów
- Czujniki Halla
- Czujniki jakości cieczy
- Czujniki jakości powietrza
- Czujniki magnetyczne (kompasy)
- Czujniki medyczne
- Czujniki nacisku
- Czujniki odbiciowe
- Czujniki odległości
- Czujniki PH
- Czujniki podczerwieni
- Czujniki poziomu cieczy
- Czujniki położenia
- Czujniki prądu
- Czujniki przepływu
- Czujniki przyspieszenia (akcelerometry)
- Czujniki ruchu
- Czujniki światła i koloru
- Czujniki temperatury
- Czujniki wibracji
- Czujniki wilgotności gleby
- Czujniki wilgotności powietrza
- Żyroskopy
- Drukarki
- Elementy pasywne
- Gadżety
- GPS
- Inteligentne ubrania
- Kamery i akcesoria
- Karty pamięci i inne nośniki danych
- Komunikacja
- LED - diody, wyświetlacze, paski
- Materiały przewodzące
- Moduły elektroniczne
- Akcesoria JTAG
- Audio
- Czytniki kart pamięci
- Czytniki kodów paskowych
- Czytniki linii papilarnych
- Ekspandery linii I/O
- Enkodery
- Generatory DDS/PLL
- Klawiatury, przyciski
- Konwertery CAN
- Konwertery napięć
- Konwertery RS485
- Konwertery USB - I2C / 1-Wire / SPI
- Konwertery USB - UART / RS232
- Moduły HMI
- Moduły pamięci
- Moduły RTC
- Moduły z wyjściami mocy
- Moduły zasilające
- Obraz i wideo
- Odbiorniki podczerwieni TSOP
- Potencjometry cyfrowe
- Przetworniki A/C i C/A
- Rejestratory danych (data logger)
- Sterowniki LED
- Sterowniki serw
- Sterowniki silników
- Półprzewodniki
- Button
- Czujniki
- Czujniki dotykowe (Touch)
- Diody
- Energy harvesting
- Generatory PLL
- Inne
- Konwertery logiczne
- Liczniki energii
- Mikrokontrolery
- Mikroprocesory DSP
- Mostki prostownicze
- Optotriaki i transoptory
- Pamięci
- Przetworniki a/c (ADC)
- Przetworniki c/a (DAC)
- Sterowniki i mostki IGBT
- Sterowniki LED
- Sterowniki silników
- Syntezery DDS
- Timery
- Tranzystory
- Układy analogowe
- Układy audio
- Układy cyfrowe
- Układy interfejsowe
- Układy programowalne
- Układy RF
- Układy RTC
- Układy SoC
- Układy zasilające
- Układy zerujące
- Zabezpieczenia ESD
- Przekaźniki
- Przetworniki dźwięku
- Przewody
- Przewody świecące i akcesoria
- Przełączniki i przyciski
- Płytki prototypowe
- Wyświetlacze
- Złącza
- Adaptery USB PD do laptopów
- Gniazda do kart pamięci
- Gniazdka RJ-45
- Igły testowe (pogo pin)
- Konektory
- Podstawki
- Szybkozłącza
- Zworki
- Złącza ARK (Terminal Block)
- Złącza FFC / FPC ZIF
- Złącza goldpin
- Złącza IDC
- Złącza inne
- Złącza Jack
- Złącza JST
- Złącza koncentryczne (RF)
- Złącza krokodylkowe
- Złącza obrotowe
- Złącza szufladowe D-Sub
- Złącza USB
- Złącza zasilania DC
- Akcesoria PC
- KSIĄŻKI
- MECHANIKA
- MINIKOMPUTERY (SBC)
- PRZYRZĄDY POMIAROWE
- RASPBERRY PI
- Akcesoria do Raspberry Pi
- Chłodzenie do Raspberry Pi
- Kamery do Raspberry Pi
- Karty pamięci do Raspberry Pi
- Moduły rozszerzające do Raspberry Pi
- Obudowy do Raspberry Pi
- Prototypowanie Raspberry Pi
- Przewody audio-wideo do Raspberry Pi
- Raspberry Pi 3 model A+
- Raspberry Pi 3 model B
- Raspberry Pi 3 model B+
- Raspberry Pi 4 model B
- Raspberry Pi 400
- Raspberry Pi 5
- Raspberry Pi Compute Module
- Raspberry Pi model A/B+/2
- Raspberry Pi Pico
- Raspberry Pi Zero
- Raspberry Pi Zero 2 W
- Wyświetlacze do Raspberry Pi
- Zasilanie do Raspberry Pi
- WARSZTAT
- Chemia
- Elektronarzędzia
- Igły dozownicze
- Imadła
- Kleje i klejarki
- Listwy zasilające
- Lutowanie
- Akcesoria do lutowania
- Akcesoria SMD
- Chemia lutownicza
- Cyna
- Gąbki i czyściki
- Groty do lutownic
- Grzałki oraz kolby lutownicze
- Kulki BGA
- Laminaty
- Lutownice kolbowe
- Lutownice przenośne
- Maty i akcesoria antystatyczne (ESD)
- Myjki ultradźwiękowe
- Odsysacze do usuwania cyny
- Opalarki
- Pasty lutownicze
- Pędzle i szczotki ESD
- Plecionki do usuwania cyny
- Podgrzewacze
- Podstawki pod lutownice
- Silikonowe maty do lutowania
- Stacje lutownicze
- Tygle lutownicze
- Uchwyty, lupy
- Mikroskopy
- Miniwiertarki, miniszlifierki
- Narzędzia
- Noże i nożyczki
- Okulary ochronne
- Organizery
- Pęsety
- Plotery i Frezarki CNC
- Rurki termokurczliwe
- Ściągacze izolacji
- Taśmy
- Zaciskarki
- Zasilacze laboratoryjne
- Chemia
- WYCOFANE Z OFERTY
- WYPRZEDAŻ
- ZASILANIE
- ZESTAWY URUCHOMIENIOWE
- Atmel SAM
- Atmel Xplain
- AVR
- DFRobot FireBeetle
- ESP32
- ESP8266
- Feather / Thing Plus
- Freedom (Kinetis)
- Google Coral
- Inne zestawy uruchomieniowe
- M5Stack
- micro:bit
- Moduły peryferyjne
- Nordic nRF
- OPROGRAMOWANIE
- Particle Photon
- PIC
- Programatory Segger
- Programatory uniwersalne
- Raspberry Pi RP2040
- RFID
- RISC-V
- Seeed Studio LinkIt
- Sparkfun MicroMod
- STM32
- STM32 Discovery
- STM32 MP1
- STM32 Nucleo
- STM8
- Teensy
- WRTNode
- XIAO/Qt PY
- Atmel SAM
- ZESTAWY URUCHOMIENIOWE FPGA
- ARDUINO
Nowości
Nowości
Nowoczesne projektowanie w C++
Wysyłka gratis
darmowa wysyłka na terenie Polski dla wszystkich zamówień powyżej 500 PLN
Wysyłka tego samego dnia
Jeśli Twoja wpłata zostanie zaksięgowana na naszym koncie do godz. 11:00
14 dni na zwrot
Każdy konsument może zwrócić zakupiony towar w ciągu 14 dni bez zbędnych pytań
Autor: Andrei Alexandrescu ISBN: 83-204-3052-6 Format: B5, 362 str. Wydawnictwo: WNT |
O książce |
Książka jest poświęcona wzorcom projektowym, programowaniu generycznemu i językowi programowania C++. Właściwe połączenie tych trzech elementów ułatwia programistom tworzenie zwartego i elastycznego kodu, nadającego się do wielokrotnego użycia. Autor wprowadza pojęcie komponentów genetycznych - szablonów projektowych przeznaczonych do generowania powtarzalnych kawałków kodu. Umożliwiają one proste i łagodne przejście od projektowania do implementacji oraz tworzenie kodu lepiej oddającego pierwotny zamysł projektowy. Ułatwiają ponowne użycie struktur projektowych, często bez potrzeby wprowadzania w nich jakichkolwiek zmian. Autor opisuje wybrane mechanizmy i właściwości języka C++, wykorzystywane do tworzenia komponentów generycznych. Analizuje problemy pojawiające się w codziennej pracy programisty. Przedstawia nowatorską technikę projektowania klas, a mianowicie projektowanie na podstawie wytycznych, a także nowe i bardzo silne narzędzie metaprogramowania, jakim są listy typów. Zajmuje się implementacjami wzorców projektowych, takich jak Odwiedzający, Singleton, Polecenie i Fabryka Abstrakcyjna, oraz realizacją mechanizmu wywołania wielowirtualnego. Łącząc niezwykłą pomysłowość z techniczną wirtuozerią, przedstawia nowatorskie podejście do projektowania programów. Oto adres utworzonej przez tłumacza strony internetowej tej książki: http://www.nowoczesne-cplusplus.com/ Spis treści Przedmowa Scotta Meyersa Przedmowa Johna Ylissidesa Wstęp Podziękowania Część I. Techniki 1. Klasy parametryzowane wytycznymi 1.1. Zagadnienie wielości w projektowaniu oprogramowania 1.2. Porażka uniwersalnych interfejsów 1.3. Wielodziedziczenie rusza na ratunek? 1.4. W szablonach nadzieja 1.5. Wytyczne i klasy wytycznych 1.6. Wytyczne wzbogacone 1.7. Destruktory wytycznych 1.8. Opcjonalna funkcjonalność przez niepełną specjalizację 1.9. Łączenie wytycznych 1.10. Modyfikowanie struktury klasy za pomocą wytycznych 1.11. Zgodność wytycznych 1.12. Rozkład klasy na wytyczne 1.13. Podsumowanie 2. Techniki 2.1. Asercje statyczne 2.2. Częściowa specjalizacja szablonów 2.3. Klasy lokalne 2.4. Odwzorowanie stałych całkowitych w typy 2.5. Odwzorowanie typu w typ 2.6. Wybór typu 2.7. Statyczne wykrywanie dziedziczenia i możliwości konwersji 2.8. Opakowanie dla type_info 2.9. NullType i EmptyType 2.10. Cechowanie typów 2.11. Podsumowanie 3. Listy typów 3.1. Potrzeba 3.2. Definiowanie listy typów 3.3. Tworzenie listy typów przez wyliczenie elementów 3.4. Obliczanie długości 3.5. Intermezzo 3.6. Indeksowanie 3.7. Wyszukiwanie w listach typów 3.8. Łączenie list typów 3.9. Usuwanie elementu z listy typów 3.10. Usuwanie powtórzeń 3.11. Zastępowanie elementu w liście typów 3.12. Sortowanie list typów według porządku częściowego 3.13. Generowanie klas za pomocą list typów 3.14. Podsumowanie 3.15. Listy typów w skrócie 4. Przydzielacz małych obiektów 4.1. Domyślny przydzielacz sterty 4.2. Działanie przydziełacza pamięci 4.3. Przydzielacz małych obiektów 4.4. Kawałki pamięci (chunks) 4.5. Przydzielacz bloków o stałym rozmiarze 4.6. Klasa SmallObjAllocator 4.7. Udajemy twórcę kompilatora 4.8. Proste, skomplikowane, a jednak w końcu proste 4.9. Sprawy administracyjne 4.10. Podsumowanie 4.11. Przydzielacz małych obiektów w skrócie Część II. Komponenty 5. Funktory uogólnione 5.1. Wzorzec projektowy Polecenie 5.2. Polecenie w praktyce 5.3. Twory wywoływame w C++ 5.4. Szkielet szablonu Functor 5.5. Przekazujący Functor::operator ( ) 5.6. Obsługa funktorów 5.7. Zbuduj jeden, drugi otrzymasz w prezencie 5.8. Konwersje typów argumentów i wyniku 5.9. Wskaźniki do funkcji składowych 5.10. Wiązanie 5.11. Makropolecenia 5.12. Brutalna rzeczywistość I: koszt funkcji przekazujących 5.13. Brutalna rzeczywistość II: przydział pamięci na stercie 5.14. Implementacja „powtórz" i „cofnij" za pomocą szablonu Functor 5.15. Podsumowanie 5.16. Functor w skrócie 6. Implementacja singletonów 6.1. Dane statyczne + funkcje statyczne != singleton 6.2. Podstawowe idiomy języka C++ związane z singletonami 6.3. Zapewnienie jedyności singletonu 6.4. Niszczenie singletonu 6.5. Problem martwej referencji 6.6. Rozwiązanie problemu martwych referencji (I): Singleton Feniksowy 6.7. Rozwiązanie problemu martwych referencji (II): Singletony z długowiecznością 6.8. Implementacja singletonów z długowiecznością 6.9. Wielowątkowość 6.10. Składamy wszystko razem 6.11. Praca z szablonem SingletonHolder 6.12. Podsumowanie 6.13. SingletonHolder w skrócie 7. Inteligente wskaźniki 7.1. 1001 drobiazgów na temat inteligentnych wskaźników 7.2. Zysk 7.3. Dowiązanie 7.4. Funkcje składowe inteligentnych wskaźników 7.5. Strategie zarządzania własnością 7.6. Operator pobrania adresu 7.7. Niejawna konwersja do wskaźnika 7.8. Równość i nierówność 7.9. Porównania porządkujące 7.10. Kontrola i zgłaszanie błędów 7.11. Stałe inteligentne wskaźniki i inteligentne wskaźniki do stałych 7.12. Tablice 7.13. Inteligentne wskaźniki i wielowątkowość 7.14. Składamy generyczny inteligentny wskaźnik 7.15. Podsumowanie 7.16. SmartPtr w skrócie 8. Fabryki obiektów 8.1. Zapotrzebowanie na fabryki obiektów 8.2. Fabryki obiektów w C++: klasy i obiekty 8.3. Implementacja fabryki obiektów 8.4. Identyfikatory typów 8.5. Uogólnienie 8.6. Szczególiki 8.7. Fabryki klonów 8.8. Korzystanie z fabryk obiektów w połączeniu z innymi komponentami generycznymi 8.9. Podsumowanie 8.10. Szablon Factory w skrócie 8.11. Szablon CloneFactory w skrócie 9. Fabryka Abstrakcyjna 9.1. Rola abstrakcyjnych fabryk w architekturze systemu 9.2. Interfejs generycznej fabryki abstrakcyjnej 9.3. Implementacja interfejsu AbstractFactory 9.4. Implementacja fabryki abstrakcyjnej opartej na prototypach 9.5. Podsumowanie 9.6. AbstractFactory i ConcreteFactory w skrócie 10. Odwiedzający 10.1. Podstawy 10.2. Przeciążanie: funkcja uniwersalna 10.3. Ulepszenie implementacji: Odwiedzający acykliczny 10.4. Generyczna implementacja wzorca Odwiedzający 10.5. Powrót do wersji „cyklicznej" 10.6. Odmiany wzorca Odwiedzający 10.7. Podsumowanie 10.8. Wzorzec Odwiedzający w skrócie 11. Wielometody 11.1. Czym są wielometody? 11.2. Kiedy wielometody są rzeczywiście potrzebne? 11.3. Rozwiązanie siłowe: dwa zapytania o typ 11.4. Zautomatyzowane rozwiązanie siłowe 11.5. Symetria w rozwiązaniu siłowym 11.6. Rozwiązanie logarytmiczne 11.7. FnDispatcher i symetria 11.8. Funktory jako wielometody 11.9. Konwersja argumentów: static_cast czy dynamic_cast? 11.10. Rozwiązanie w czasie stałym: szybkość ponad wszystko 11.11. BasicDispatcher i BasicFastDispatcher jako wytyczne 11.12. Co dalej? 11.13. odsumowanie 11.14. Wielometody w skrócie Dodatek. Minimalistyczna biblioteka wielowątkowa D.l. Krytyka wielowątkowości D.2. Podejście zastosowane w bibliotece Loki D.3. Operacje atomowe na typach całkowitoliczbowych D.4. Muteksy D.5. Semantyka blokowania w programowaniu obiektowym D.6. Opcjonalny modyfikator volatile D.7. Semafory, zdarzenia i inne luksusy D.8. Podsumowanie Literatura Skorowidz |
Produkty z tej samej kategorii (16)
Brak towaru
SUPERLUMISCENCYJNY MODUŁOWY OŚWIETLACZ 3x3LED CZERWONE 20mA - ZESTAW DO SAMODZIELNEGO MONTAŻU
Brak towaru
Moduł DIP z mikrokontrolerem ATmega128A, kwarc 16 MHz. Idealnie pasuje do zestawu ZL8AVR
Brak towaru
Listwa montażowa ARK 8-pinowa o rastrze 2,54 mm, nierozłączalna. 308-2.54-08P-14-00AH
Brak towaru
HK HKPilot Mega 2.7 Flight Controller USB/GYRO/ACC/MAG/BARO (56052)
Brak towaru
Brak towaru
Brak towaru
Brak towaru
ABC16002C35-YHY-R-04 - Wyświetlacz LCD 2x16, 122x44mm, podświetlanie LED (yellow-green), rozszerzony zakres temperatury, RoHS
Brak towaru
Brak towaru
Płytka z otworami prototypowymi przeznaczona do minikomputerów BeagleBone Black. SparkFun DEV-12774
Brak towaru
Brak towaru
Brak towaru
Brak towaru
Płytka GPIO Expander umożliwia rozszerzenie projektu o dodatkowe 16 linii sygnałowych I/O, wyposażona w układ MCP23017 z interfejsem I2C. MOD-67
Brak towaru
Brak towaru