Księgarnia naukowo-techniczna styczna.pl

Księgarnia naukowo-techniczna
styczna.pl

 


Zaawansowane wyszukiwanie
  Strona Główna » Sklep » Informatyka » Programowanie » Moje Konto  |  Zawartość Koszyka  |  Do Kasy   
 Wybierz kategorię
Albumy
Architektura
Beletrystyka
Biochemia
Biologia
Biznes
Budownictwo
Chemia
Design DTP
E-biznes
Ekologia i środowisko
Ekonometria
Ekonomia Finanse
Elektronika
Elektrotechnika
Encyklopedie
Energetyka
Fizyka
Fotografia
Geografia
Historia
Informatyka
  Bazy danych
  Bezpieczeństwo
  CAD
  Grafika komputerowa
  iPod Pocket PC
  Kursy
  Media społecznościowe
  Office
  Programowanie
  Programy graficzne
  Sieci bezprzewodowe
  Sieci komputerowe
  Systemy operacyjne
  Techniki programowania
  Webmasterstwo
Maszynoznawstwo
Matematyka
Medycyna
Motoryzacja
Polityka
Popularnonaukowe
Poradniki
Prawo
Sport
Sztuka
Słowniki
Technika
Telekomunikacja
Turystyka
Zarządzanie jakością

Zobacz pełny katalog »
 Wydawnictwo:
 WNT
Metody formalne w inżynierii oprogramowania systemów czasu rzeczywistego

Metody formalne w inżynierii oprogramowania systemów czasu rzeczywistego

89.00zł
Czysty kod w C++17. Oprogramowanie łatwe w utrzymaniu 59.00zł 44.25zł
Czysty kod w C++17. Oprogramowanie łatwe w utrzymaniu

Tytuł: Czysty kod w C++17. Oprogramowanie łatwe w utrzymaniu
Autor: Stephan Roth
ISBN: 978-83-283-4340-5
Ilość stron: 296
Data wydania: 07/2018
Format: 170x230
Wydawnictwo: HELION

Cena: 59.00zł 44.25zł


Wzorce i najlepsze praktyki rozwoju łatwego w utrzymaniu oprogramowania w C++17

Język C++ jest wszechstronnym, potężnym językiem programowania, który ma bardzo różne zastosowania. To klasyczne, wciąż udoskonalane i unowocześniane narzędzie. Problemem jednak jest to, że programiści piszący w C++ dość często mają złe nawyki. Nie przestrzegają zasad manifestu Software Craftsmanship, stosują okropną składnię, całkowicie ignorują podstawowe reguły prawidłowego projektowania i pisania oprogramowania, a tworzony przez nich kod, choć często wydajny i szybki, bywa niemal niemożliwy w utrzymaniu.

Jeśli chcesz, aby Twój kod C++ stał się optymalny i zyskał wyższą jakość, powinieneś uważnie przestudiować tę książkę. Pisanie dobrego kodu oznacza przyjemniejszą i wydajniejszą pracę. Niezależnie od tego, czy dopiero zaczynasz przygodę z C++, czy jesteś doświadczonym deweloperem, znajdziesz w tej publikacji cenne i przydatne informacje dotyczące zasad pisania kodu. Akronimy KISS, YAGNI czy DRY zyskają dla Ciebie nowe znaczenie! Otrzymasz też mnóstwo przydatnych wskazówek odnoszących się do pisania funkcji, prowadzenia testów, obsługi wyjątków i błędów, a nawet umieszczania komentarzy w kodzie. Na licznych przykładach pokazano, jak pisać zrozumiały, elastyczny, łatwy w konserwacji i wydajny kod w C++.

W książce między innymi:

  • Solidne wyjaśnienie zasad pisania czystego kodu w C++
  • Programowanie funkcyjne i obiektowe
  • Wskazówki dotyczące programowania sterowanego testami (Test Driven Development)
  • Wzorce projektowe i idiomy z C++
  • Praktyczne wykorzystanie wzorców projektowych podczas programowania

Czysty kod C++17: elegancja, prostota i moc

Rozdziały:

O autorze (9)

O recenzencie technicznym (11)

Podziękowania (13)

Rozdział 1. Wprowadzenie (15)

  • Entropia oprogramowania (16)
  • Czysty kod (17)
  • Dlaczego C++? (18)
  • C++11 - początek nowej ery (18)
  • Dla kogo przeznaczona jest ta książka? (19)
  • Konwencje stosowane w tej książce (19)
    • Ramki (20)
    • Uwagi, wskazówki i ostrzeżenia (20)
    • Przykładowy kod (20)
  • Witryna książki i repozytorium z kodem źródłowym (21)
  • Diagramy UML-a (21)

Rozdział 2. Tworzenie siatki bezpieczeństwa (23)

  • Konieczność przeprowadzania testów (23)
  • Wprowadzenie do testów (25)
  • Testy jednostkowe (26)
  • A co z kontrolą jakości? (28)
  • Reguły tworzenia dobrych testów jednostkowych (29)
    • Jakość kodu testów (29)
    • Nazwy testów jednostkowych (29)
    • Niezależność testów jednostkowych (31)
    • Jedna asercja na test (31)
    • Niezależne inicjowanie środowisk testów jednostkowych (32)
    • Pomijanie testów getterów i setterów (32)
    • Pomijanie testów kodu innych programistów (32)
    • Pomijanie testów zewnętrznych systemów (33)
    • A co zrobić z bazą danych? (33)
    • Nie łącz kodu testów z kodem produkcyjnym (33)
    • Testy muszą działać szybko (36)
    • Zaślepki (36)

Rozdział 3. Postępuj zgodnie z zasadami (39)

  • Czym są zasady? (39)
  • Zachowaj prostotę, głupku (KISS) (40)
  • Nie będziesz tego potrzebować (YAGNI) (40)
  • Nie powtarzaj się (DRY) (41)
  • Ukrywanie informacji (41)
  • Wysoka spójność (44)
  • Luźne powiązanie (46)
  • Nie przesadzaj z optymalizacją (49)
  • Zasada minimalizowania zaskoczenia (50)
  • Reguła harcerza (50)

Rozdział 4. Podstawy czystego C++ (53)

  • Dobre nazwy (54)
    • Nazwy powinny być oczywiste (55)
    • Stosuj nazwy z dziedziny (56)
    • Dobieraj nazwy na odpowiednim poziomie abstrakcji (57)
    • Unikaj nadmiarowości, gdy wymyślasz nazwę (58)
    • Unikaj zagadkowych skrótów (58)
    • Unikaj notacji węgierskiej i przedrostków (59)
    • Unikaj używania tej samej nazwy do różnych celów (60)
  • Komentarze (60)
    • Niech kod opowiada historię (60)
    • Nie komentuj oczywistych rzeczy (61)
    • Nie dezaktywuj kodu za pomocą komentarzy (61)
    • Nie pisz komentarzy blokowych (62)
    • Rzadkie scenariusze, w których komentarze są przydatne (64)
  • Funkcje (67)
    • Jedna rzecz - nie więcej! (70)
    • Twórz małe funkcje (70)
    • Nazwy funkcji (71)
    • Stosuj nazwy opisujące intencje (72)
    • Argumenty i zwracane wartości (72)
    • Liczba argumentów (73)
  • Projekty C++ w dawnym stylu specyficznym dla C (82)
    • Przedkładaj łańcuchy znaków i strumienie z C++ nad dawne łańcuchy char* w stylu języka C (82)
    • Unikaj instrukcji printf(), sprintf(), gets() itd. (84)
    • Przedkładaj kontenery z biblioteki standardowej nad proste tablice w stylu języka C (87)
    • Używanie rzutowania z języka C++ zamiast dawnego rzutowania w stylu języka C (89)
    • Unikaj makr (90)

Rozdział 5. Zaawansowane aspekty współczesnego C++ (93)

  • Zarządzanie zasobami (93)
    • Idiom RAII (95)
    • Inteligentne wskaźniki (95)
    • Unikanie bezpośrednich wywołań new i delete (100)
    • Zarządzanie niezależnymi zasobami (101)
  • Warto się czasem gdzieś przenieść (102)
    • Czym jest semantyka przenoszenia? (102)
    • Czym są l-wartości i r-wartości? (103)
    • Referencje do r-wartości (104)
    • Nie wymuszaj wszędzie semantyki przenoszenia (106)
    • Reguła zera (106)
  • Kompilator to Twój współpracownik (110)
    • Automatyczna dedukcja typów (110)
    • Obliczenia na etapie kompilacji (113)
    • Szablony zmiennych (115)
  • Nie dopuszczaj do niezdefiniowanych skutków (116)
  • Programowanie z użyciem typów semantycznych (117)
  • Poznaj używane biblioteki (123)
    • Korzystaj z pliku nagłówkowego (123)
    • Korzystaj z biblioteki Boost (128)
    • Inne biblioteki, które powinieneś znać (129)
  • Prawidłowa obsługa wyjątków i błędów (130)
    • Lepiej zapobiegać niż leczyć (130)
    • Wyjątek jest wyjątkiem - dosłownie (134)
    • Jeśli nie możesz przywrócić stanu, szybko zamknij program (135)
    • Definiuj specyficzne typy wyjątków (135)
    • Zgłaszanie przez wartość i przechwytywanie za pomocą stałej referencji (137)
    • Zwracaj uwagę na właściwą kolejność klauzul catch (137)

Rozdział 6. Podejście obiektowe (139)

  • Myślenie obiektowe (140)
  • Abstrakcja - klucz do opanowania złożoności (141)
  • Zasady poprawnego projektowania klas (141)
    • Twórz niewielkie klasy (141)
    • Zasada jednej odpowiedzialności (142)
    • Zasada otwarte - zamknięte (143)
    • Zasada podstawiania Liskov (144)
    • Zasada podziału interfejsu (154)
    • Zasada zależności acyklicznych (156)
    • Zasada odwracania zależności (158)
    • Nie rozmawiaj z nieznajomymi (prawo Demeter) (162)
    • Unikaj "anemicznych" klas (166)
    • Mów zamiast pytać (167)
    • Unikaj statycznych składowych klasy (169)

Rozdział 7. Programowanie funkcyjne (171)

  • Czym jest programowanie funkcyjne? (172)
    • Czym jest funkcja? (173)
    • Funkcje czyste i "nieczyste" (174)
  • Programowanie funkcyjne w nowoczesnym C++ (175)
    • Programowanie funkcyjne z użyciem szablonów języka C++ (175)
    • Obiekty podobne do funkcji (funktory) (177)
    • Mechanizm wiązania i nakładki na funkcje (183)
    • Wyrażenia lambda (185)
    • Generyczne wyrażenia lambda (C++14) (187)
  • Funkcje wyższego poziomu (187)
    • Mapowanie, filtrowanie i redukcja (189)
  • Czysty kod w programowaniu funkcyjnym (192)

Rozdział 8. Programowanie sterowane testami (195)

  • Wady zwykłych dawnych testów jednostkowych (196)
  • Podejście TDD jako rewolucja (197)
    • Proces pracy w TDD (197)
    • TDD na przykładzie - kata dotyczące liczb rzymskich (200)
  • Zalety TDD (216)
  • Kiedy nie stosować TDD? (217)

Rozdział 9. Wzorce projektowe i idiomy (219)

  • Zasady projektowe a wzorce projektowe (220)
  • Wybrane wzorce i sytuacje, w których warto je stosować (220)
    • Wstrzykiwanie zależności (221)
    • Adapter (231)
    • Strategia (233)
    • Polecenie (237)
    • Procesor poleceń (240)
    • Kompozyt (242)
    • Obserwator (245)
    • Fabryka (250)
    • Fasada (252)
    • Klasa Money (253)
    • Obiekt reprezentujący specjalny przypadek (obiekt NULL) (256)
  • Czym jest idiom? (260)
    • Przydatne idiomy języka C++ (260)

Dodatek A. Krótki przewodnik po UML-u (271)

  • Diagramy klas (271)
    • Klasa (271)
    • Interfejs (273)
    • Asocjacja (275)
    • Generalizacja (277)
    • Zależność (278)
  • Komponenty (279)
  • Stereotypy (279)

Bibliografia (281)


Najniższa cena z 30 dni przed obniżką 44,25zł

Tytuł książki: "Czysty kod w C++17. Oprogramowanie łatwe w utrzymaniu"
Autor: Stephan Roth
Wydawnictwo: HELION
Cena: 59.00zł 44.25zł
Klienci, którzy kupili tę książkę, kupili także
D3.js w akcji
D3.js w akcji
Elijah Meeks
HELION
Klan Kossaków
Klan Kossaków
Marek Sołtysik
Arkady
Słowa w ciemności Rozmowy z dziećmi
Słowa w ciemności Rozmowy z dziećmi
Juknaite Vanda
Wydawnictwo Pedagogiczne ZNP
Archiwum Wiktora Kulerskiego Dokumenty podziemnej „Solidarności” 1982–1986
Archiwum Wiktora Kulerskiego Dokumenty podziemnej „Solidarności” 1982–1986
Olaszek Jan, Friszke Andrzej
IPN
8 dogmatów wywierania wpływu
8 dogmatów wywierania wpływu
Josef Kirschner
Onepress
Policja na świecie
Policja na świecie
Brunon Hołyst
LexisNexis
 Koszyk
1 x Kościół Paulinów
1 x Aksjologia unijnego kodeksu proceduralnego
1 x Prawo autorskie Komentarz dla praktyków Wydanie 3
1 x Europejski nakaz aresztowania w teorii i praktyce państw członkowskich Unii Europejskiej
1 x Modele matematyki finansowej Instrumenty podstawowe
1 x Belki Siły wewnętrzne i linia ugięcia Przykłady obliczeń
1 x Aplikacja notarialna Pytania odpowiedzi tabele Wydanie 10
1 x Jawność procesu karnego
1 x Mikroekonometria Modele i metody analizy danych indywidualnych
793.75zł
Wydawnictwo
Tu można zobaczyć wszystkie książki z wydawnictwa:

Wydawnictwo Helion
 Kategoria:
 Energetyka
Stabilność systemu elektroenergetycznego

Stabilność systemu elektroenergetycznego

109.00zł
Informacje
Regulamin sklepu.
Koszty wysyłki.
Polityka prywatności.
Jak kupować?
Napisz do Nas.
 Wydawnictwa
 Polecamy
Windows Server 2008 R2 Usługi pulpitu zdalnego Resource Kit Christa Anderson, Kristin L. Griffin, Microsoft Remote Desktop Virtual Microsoft Press
Animacja komputerowa Algorytmy i techniki Rick Parent PWN
OpenGL Księga eksperta Wydanie V Richard S. Wright, Jr., Nicholas Haemel, Graham Sellers, Benjamin Lipc HELION
Chemia organiczna Część I-IV Komplet J. Clayden, N. Greeves, S. Warren, P. Wothers WNT
Encyklopedia zdrowia Tom 1-2 Wydanie 9 Witold S. Gumułka, Wojciech Rewerski PWN
Miejscowa wentylacja wywiewna Poradnik Optymalizacja parametrów powietrza w pomieszczeniach pracy Maciej Gliński DW Medium
Akademia sieci CISCO CCNA Exploration Semestr 1 - 4 Praca zbiorowa PWN
Anatomia zwierząt Tom 2 Narządy wewnętrzne i układ krążenia Wydanie 3 Kazimierz Krysiak, Krzysztof Świeżyński PWN
OpenGL w praktyce Janusz Ganczarski BTC