Programowanie
Mitesh Soni, Alan Mark Berg
Jenkins 2.x is one of the most popular Continuous Integration servers in the market today. It was designed to maintain, secure, communicate, test, build, and improve the software development process.This book will begin by guiding you through steps for installing and configuring Jenkins 2.x on AWS and Azure. This is followed by steps that enable you to manage and monitor Jenkins 2.x. You will also explore the ways to enhance the overall security of Jenkins 2.x. You will then explore the steps involved in improving the code quality using SonarQube. Then, you will learn the ways to improve quality, followed by how to run performance and functional tests against a web application and web services. Finally, you will see what the available plugins are, concluding with best practices to improve quality.
Mitesh Soni, Alan Mark Berg
Jenkins 2.x is one of the most popular Continuous Integration servers in the market today. It was designed to maintain, secure, communicate, test, build, and improve the software development process.This book will begin by guiding you through steps for installing and configuring Jenkins 2.x on AWS and Azure. This is followed by steps that enable you to manage and monitor Jenkins 2.x. You will also explore the ways to enhance the overall security of Jenkins 2.x. You will then explore the steps involved in improving the code quality using SonarQube. Then, you will learn the ways to improve quality, followed by how to run performance and functional tests against a web application and web services. Finally, you will see what the available plugins are, concluding with best practices to improve quality.
Calvin Sangbin Park , Lalit Adithya, Sam...
Jenkins is a renowned name among build and release CI/CD DevOps engineers because of its usefulness in automating builds, releases, and even operations. Despite its capabilities and popularity, it's not easy to scale Jenkins in a production environment. Jenkins Administrator's Guide will not only teach you how to set up a production-grade Jenkins instance from scratch, but also cover management and scaling strategies. This book will guide you through the steps for setting up a Jenkins instance on AWS and inside a corporate firewall, while discussing design choices and configuration options, such as TLS termination points and security policies. You’ll create CI/CD pipelines that are triggered through GitHub pull request events, and also understand the various Jenkinsfile syntax types to help you develop a build and release process unique to your requirements. For readers who are new to Amazon Web Services, the book has a dedicated chapter on AWS with screenshots. You’ll also get to grips with Jenkins Configuration as Code, disaster recovery, upgrading plans, removing bottlenecks, and more to help you manage and scale your Jenkins instance. By the end of this book, you’ll not only have a production-grade Jenkins instance with CI/CD pipelines in place, but also knowledge of best practices by industry experts.
Język ANSI C. Programowanie. Wydanie II
Brian W. Kernighan, Dennis M. Ritchie
Drogi Czytelniku, właśnie trzymasz w rękach nowe wydanie książki zaliczanej do klasyki literatury informatycznej. Napisana przez autorów języka ANSI C w najlepszy możliwy sposób przedstawia arkana tego języka. A co można powiedzieć o samym języku? To też klasyka. To język wymagający systematyczności i skupienia, ale dający w zamian wiele możliwości i świetne wyniki. To najczęściej nauczany język programowania - jego znajomość stanowi znakomity fundament do poznania kolejnych, bardziej złożonych języków. Mimo swojego zaawansowanego wieku jest on ceniony i w wielu dziedzinach wciąż niezastąpiony. Dzięki tej książce zdobędziesz kompletną wiedzę na temat języka C. Poznasz wszystkie dostępne typy, operatory i wyrażenia. Nauczysz się sterować wykonywaniem programu oraz wykorzystywać funkcje. Ponadto dogłębnie poznasz coś, co sprawia początkującym programistom najwięcej problemów - wskaźniki. Następnie zapoznasz się także z funkcjami wejścia i wyjścia. Dowiesz się, jak uzyskać dostęp do plików, formatować dane wyjściowe oraz obsługiwać błędy. Książka ta jest bogata w przykłady, a każdy z nich został przetestowany przez autorów. Język ANSI C. Programowanie. Wydanie II to niezastąpiona pozycja na półce każdego studenta informatyki, pasjonata programowania i zawodowca. Wraz z książką został wydany zeszyt zawierający rozwiązania do wszystkich zawartych w niej ćwiczeń. Zmienne i wyrażenia arytmetyczne w języku C Kompilowanie kodu Wykorzystanie preprocesora języka C Typy i operatory Metody sterowania wykonywaniem programu Wykorzystanie funkcji Struktura programu Zasada działania wskaźników Struktury danych Operacje wejścia i wyjścia Zastosowanie rekurencji Poznaj tajniki języka C!
Język C dla małych urządzeń. Krótki kod o wielkich możliwościach
Marc Loy
Wydawałoby się, że język C najlepsze lata ma już za sobą. Opracowano w końcu mnóstwo łatwych w użyciu i efektywnych wysokopoziomowych języków programowania. W rzeczywistości język C wciąż okazuje się niezastąpiony do tak ważnych celów, jak programowanie sterowników, systemów operacyjnych, kart graficznych, a także niewielkich mikrokontrolerów o ograniczonych zasobach. Właśnie teraz, w czasach burzliwego rozwoju internetu rzeczy, język C udowadnia swoją przydatność. Wystarczy nauczyć się tworzyć w nim czysty kod o niewielkich rozmiarach. W tym podręczniku do praktycznej nauki programowania w języku C szczególną uwagę zwrócono na pisanie kodu umożliwiającego uzyskanie wysokiej wydajności w środowiskach o bardzo małych zasobach. Znalazło się tu gruntowne omówienie podstaw dobrego programowania w języku C. Opisano struktury kontrolne, operatory, funkcje i inne elementy składni C, a także zasady dobrego programowania i wzorce, dzięki którym można zmniejszać rozmiar skompilowanego programu. Przeanalizowano również środowisko Arduino, które jest świetną platformą docelową dla niewielkich programów napisanych w C. Zawarte tu informacje przydadzą się jednak każdemu, kto chce się zająć programowaniem dla systemów wbudowanych. W książce między innymi: podstawy języka C, w tym typy danych, przepływ sterowania i funkcje zarządzanie pamięcią i działanie programów w prostych urządzeniach tworzenie czytelnego i łatwego w utrzymaniu kodu w języku C optymalizacja kodu pod kątem wydajności testowanie istniejących bibliotek i tworzenie własnych Programowanie niskopoziomowe? Czysta radość z czystego C!
Język C dla małych urządzeń. Krótki kod o wielkich możliwościach
Marc Loy
Wydawałoby się, że język C najlepsze lata ma już za sobą. Opracowano w końcu mnóstwo łatwych w użyciu i efektywnych wysokopoziomowych języków programowania. W rzeczywistości język C wciąż okazuje się niezastąpiony do tak ważnych celów, jak programowanie sterowników, systemów operacyjnych, kart graficznych, a także niewielkich mikrokontrolerów o ograniczonych zasobach. Właśnie teraz, w czasach burzliwego rozwoju internetu rzeczy, język C udowadnia swoją przydatność. Wystarczy nauczyć się tworzyć w nim czysty kod o niewielkich rozmiarach. W tym podręczniku do praktycznej nauki programowania w języku C szczególną uwagę zwrócono na pisanie kodu umożliwiającego uzyskanie wysokiej wydajności w środowiskach o bardzo małych zasobach. Znalazło się tu gruntowne omówienie podstaw dobrego programowania w języku C. Opisano struktury kontrolne, operatory, funkcje i inne elementy składni C, a także zasady dobrego programowania i wzorce, dzięki którym można zmniejszać rozmiar skompilowanego programu. Przeanalizowano również środowisko Arduino, które jest świetną platformą docelową dla niewielkich programów napisanych w C. Zawarte tu informacje przydadzą się jednak każdemu, kto chce się zająć programowaniem dla systemów wbudowanych. W książce między innymi: podstawy języka C, w tym typy danych, przepływ sterowania i funkcje zarządzanie pamięcią i działanie programów w prostych urządzeniach tworzenie czytelnego i łatwego w utrzymaniu kodu w języku C optymalizacja kodu pod kątem wydajności testowanie istniejących bibliotek i tworzenie własnych Programowanie niskopoziomowe? Czysta radość z czystego C!
Język C dla mikrokontrolerów AVR. Od podstaw do zaawansowanych aplikacji
Tomasz Francuz
Sprawdź drugie i rozszerzone wydanie książki >> Przedstawiamy przebojowy duet — język C i mikrokontroler AVR! Poznaj budowę i podstawy programowania mikrokontrolerów Dowiedz się, jak do swoich celów wykorzystać język C Naucz się rozwiązywać rzeczywiste problemy i tworzyć praktyczne rozwiązania Mikrokontrolery AVR firmy Atmel stanowią dynamicznie rozwijającą się rodzinę układów. Dzięki niskiej cenie, dużym możliwościom i dostępności darmowych narzędzi od lat niezmiennie cieszą się dużą popularnością wśród hobbystów i osób profesjonalnie zajmujących się programowaniem mikrokontrolerów. Pewnym utrudnieniem dla polskich użytkowników AVR jest brak literatury na temat wykorzystania do ich programowania języków wysokiego poziomu, takich jak C. Niniejsza książka jest próbą wypełnienia tej luki. W sposób syntetyczny pokazuje różnice pomiędzy programowaniem w języku C komputerów klasy PC i mikrokontrolerów. Omawia programowanie peryferii dostępnych w mikrokontrolerach AVR w języku C, bibliotekę standardową oraz jej rozszerzenia znane jako AVR-libc. Dzięki temu nawet osoby w niewielkim stopniu znające podstawy języka C będą mogły bez problemów "przesiąść się" na programowanie mikrokontrolerów AVR. Z drugiej strony książka opisuje zaawansowane techniki programowania, związane z obsługą bootloadera, zabezpieczaniem i szyfrowaniem kodu aplikacji oraz realizacją najpowszechniej stosowanych protokołów wymiany danych pomiędzy urządzeniami opartymi na mikrokontrolerach i komputerami PC. Porusza także tematy związane ze specyfiką pisania aplikacji na mikrokontrolery oraz wyszukiwaniem i usuwaniem błędów. Podstawy programowania mikrokontrolerów AVR Warsztat pracy programisty AVR Wprowadzenie do języka C na AVR Budowa programu i jego części składowe Korzystanie z zasobów sprzętowych mikrokontrolera Używanie rejestrów i różnych rodzajów pamięci Zastosowania przetwornika ADC Obsługa wyświetlaczy LCD Korzystanie z interfejsów Zapewnianie bezpieczeństwa kodu Programowanie mikrokontrolerów jeszcze nigdy nie było tak proste!
Język C dla mikrokontrolerów AVR. Od podstaw do zaawansowanych aplikacji. Wydanie II
Tomasz Francuz
Mikrokontroler pod kontrolą! Podstawy budowy mikrokontrolerów, czyli jakie możliwości dają środowisko Atmel Studio i platforma Xplained z ATmega168/328 Architektura i zestaw instrukcji, czyli dlaczego mikrokontrolery warto programować w języku C Efektywne pisanie prostych i skomplikowanych programów na AVR, czyli jak wykorzystać różne triki Mikrokontrolery AVR to grupa układów oferujących ogromne możliwości. Każdy amator elektroniki i programowania wie, że można wykorzystać je na tysiąc sposobów, a prostota budowy, szybkość działania, bogactwo peryferii i wiele darmowych narzędzi czynią je tym bardziej atrakcyjnymi gadżetami. Jeśli chciałbyś zgłębić tajniki programowania mikrokontrolerów albo podszkolić własne umiejętności w tej dziedzinie, czas zajrzeć do tej książki! W nowym wydaniu uwzględniono zmiany, jakie zaszły w świecie AVR w ciągu ostatnich 3 lat, czyli np. zmianę AVR Studio na Atmel Studio. Znajdziesz tu podstawy posługiwania się nowym IDE, tworzenia oraz debugowania w nim projektów. Dowiesz się więcej o zmianach w kompilatorze avr-gcc, a szczególnie o tzw. nazwanych przestrzeniach adresowych, które ułatwiły dostęp do danych umieszczonych w pamięci FLASH mikrokontrolera. Odkryjesz, jak wykorzystać piloty telewizyjne do sterowania pisanym programem i jak połączyć program w C z asemblerem. Miłośnicy LED-ów zrozumieją, jak obsługiwać wielokolorowe matryce z wykorzystaniem peryferii dostępnych w AVR oraz jak sprzętowo realizować wymianę danych z popularnymi diodami ze sterownikiem WS2812B. Jeśli chcesz, by mikrokontroler stał się Twoim sprzymierzeńcem, musisz przeczytać tę książkę! Mikrokontroler i jego otoczenie, programatory Arytmetyka i operacje bitowe Zarządzanie projektem i preprocesor Kontrola rdzenia i zarządzanie poborem energii Dynamiczna alokacja pamięci i wbudowana pamięć EEPROM Dostęp do pamięci FLASH i portów IO mikrokontrolera Rejestry IO ogólnego przeznaczenia Przerwania i timery Komparator i przetwornik analogowo-cyfrowy Obsługa wyświetlaczy i interfejsy (USART, SPI, TWI, USI, 1-wire) Łączenie kodu C i asemblera Bootloader i debugowanie programu Mikrokontroler wielkich możliwości do Twoich usług!
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++!