Andere - Programmierung

409
E-book

Poznaj TypeScript

Josh Goldberg

Rozwiń swoje umiejętności programistyczne korzystając z bezpiecznego typologicznie JavaScriptu TypeScript podbił świat JavaScriptu. Badania prowadzone wśród programistów dowodzą, że TypeScript jest najszyb­ciej rozwijającym się i najpopularniejszym językiem wykorzystywanym w przedsiębiorstwach na całym świecie. Często przypisuje się mu zasługi za możliwość skalowania ogromnych aplikacji internetowych. Czym jednak jest TypeScript? Jak i dlaczego działa? I jak możemy z niego korzystać? Ta praktyczna książka poprowadzi początkujących i zaawansowanych programistów JavaScriptu, którzy nie znają jeszcze koncepcji „typów” i „systemów typowania”, ku doskonałej znajomości podstaw języka TypeScript. Z tej książki dowiesz się: •  Jakie korzyści płyną z korzystania z języka TypeScript, a także jakie są ogólne zasady systemu typowania, wzbogacającego podstawową składnię JavaScriptu •  Jak korzystać z systemu typowania TypeScriptu za pomocą adnotacji typów podczas tworzenia programu •  Jak TypeScript analizuje i przetwarza kod, dzięki czemu rozwiniesz swoje dotychczasowe wzorce programistyczne •  Jak TypeScript ułatwia korzystanie z tablic, klas, funkcji, obiektów i innych istotnych wbudowanych elementów składni JavaScriptu •  Jak skutecznie wykorzystać ogrom opcji konfiguracyjnych TypeScriptu, aby dopasować kompilator tego języka do potrzeb swojego zespołu i projektów •  Jak korzystać z różnorodnych dodatków środowiska IDE, umożliwiających np. automatyczną refaktoryzację oraz inteligentne wyszukiwanie kodu TypeScript, ułatwiających szybkie rozwijanie kodu zawierającego mniejszą liczbę błędów   „Poznaj TypeScript jest doskonałą, przyjazną dla czytelnika książką. Josh omawia kluczowe aspekty TypeScriptu bez zagłębiania się w niepotrzebne szczegóły.” —Ryan Cavanaugh Główny kierownik ds. inżynierii oprogramowania w firmie Microsoft; kierownik ds. rozwoju, TypeScript „Na stronach tej książki od razu dostrzega się doświadczenie Josha. Treść jest nie tylko pełna cennych informacji, ale również ciekawa i wciągająca.” —Cassidy Williams Developer Experience Engineer, doradca startupów i inwestor Josh Goldberg zajmuje się utrzymaniem oprogramowania open source, a także jest konsultantem oprogramowania i przyczynia się do rozwoju TypeScriptu oraz związanych z nim projektów, takich jak typescript-eslint i TypeStat. Wcześniej Josh pracował na stanowisku staff frontend dewelopera w zespole rozwijającym platformę internetową Codecademy, gdzie był orędownikiem używania TypeScriptu i pomógł w utworzeniu firmowego kursu poświęconego nauce tego języka.

410
E-book

Praca z zastanym kodem. Najlepsze techniki

Michael Feathers

Naucz się pracować na gotowych projektach! Programiści uwielbiają brać udział w nowych projektach, być świadkami ewolucji kodu, mieć wpływ na wybór narzędzi i projektować ich architekturę. Niestety, w ogromnej większości przypadków muszą pracować z kodem mającym wiele lat i pisanym przez wiele osób. Jak sobie poradzić w takim środowisku? Jak dobrać techniki pracy do gotowego kodu? Na te i wiele innych podobnych pytań odpowiada ten wyjątkowy podręcznik. Dzięki niemu dowiesz się, jak wprowadzać zmiany w zastanym kodzie, tworzyć testy automatyczne oraz modyfikować architekturę rozwiązania. Ponadto poznasz najlepsze techniki pracy z projektami niezorientowanymi obiektowo oraz przekonasz się, że można skutecznie poradzić sobie z przerośniętymi klasami i metodami. Ostatnia część książki została poświęcona technikom usuwania zależności. Ten podręcznik to lektura obowiązkowa każdego programisty. Dzięki niemu Twoja praca z zastanym kodem nabierze nowego sensu. Musisz ją mieć! Dzięki tej książce: poradzisz sobie z zastanym kodem nauczysz się wprowadzać w nim zmiany zastosujesz testy automatyczne przeprowadzisz skuteczną refaktoryzację Praca z zastanym kodem nie musi być nużąca! Inżynieria oprogramowania Wydobądź więcej z zastanych systemów: Lepsza wydajność, większa niezawodność, więcej funkcjonalności i łatwiejsze zarządzanie Czy Twój kod łatwo poddaje się zmianom? Czy dostajesz niemal bezzwłoczne informacje zwrotne, gdy go zmieniasz? Czy go rozumiesz? Jeśli odpowiedź na dowolne z tych pytań brzmi nie, masz do czynienia z cudzym kodem, który wysysa czas i pieniądze z nakładów, które przeznaczasz na jego rozwój. W książce tej Michael Feathers oferuje całościowe strategie dotyczące efektywniejszej pracy z dużymi i nieprzetestowanymi cudzymi bazami kodu. Książka jest oparta na materiałach przygotowanych na potrzeby słynnych seminariów Object Mentor - technik, z których Michael korzystał, aby pomóc setkom programistów, kierowników technicznych i testerów w uzyskaniu kontroli nad zastanymi systemami. Tematyka książki obejmuje: Zrozumienie mechaniki zmian w oprogramowaniu: dodawanie funkcjonalności, naprawiania błędów, poprawianie projektu oraz optymalizacja wydajności. Umieszczanie cudzego kodu w jarzmie testowym. Pisanie testów, które zabezpieczą Cię przed wprowadzaniem do kodu nowych problemów. Techniki, które można wykorzystać w dowolnym języku i na dowolnej platformie, z przykładami w Javie, C++, C i C#. Dokładne określanie miejsc, w których należy zmienić kod. Zmaganie się z cudzymi systemami, które nie są zorientowane obiektowo. Radzenie sobie z aplikacjami, które zdają się nie mieć żadnej struktury. Książka ta zawiera również katalog dwudziestu czterech technik usuwania zależności, które pomogą Ci w pracy z odizolowanymi elementami programu oraz spowodują, że wprowadzanie w nim zmian będzie bezpieczniejsze.

411
E-book

Pracownia Urządzeń Techniki Komputerowej dla ucznia i studenta

Jerzy Kluczewski

PRACOWNIA URZĄDZEŃ TECHNIKI KOMPUTEROWEJ DLA UCZNIÓW I STUDENTÓW – Część 1 to zbiór przykładów i zadań opracowany pod kątem praktycznych zagadnień laboratoryjnych. Znajdziemy tu symulacje obwodów pomagających zrozumieć świat elektroniki analogowej i cyfrowej. Przedstawiono sposoby badań układów i parametrów podzespołów komputerowych jak i całych urządzeń. Napisanie idealnego zbioru ćwiczeń laboratoryjnych jest bardzo trudne. Dlatego autor nie zawarł wszystkich możliwych zagadnień związanych z zasadą działania komputera i jego budowy, ale zostawił sobie furtkę do kontynuowania tematyki, co ma zamiar przedstawić w kolejnych częściach książki. Książka dedykowana jest uczniom, studentom i nauczycielom. Zawiera materiały pomocnicze dla przedmiotów związanych z urządzeniami techniki komputerowej. Może być wykorzystana w laboratoriach studenckich jak i na kursach branżowych IT Essentials dostępnych w Akademiach Cisco oraz kursach zawodowych KKZ. Zagadnienia omawiane w książce mogą być poruszane na przedmiotach o różnych nazwach jak i różnych formach (teoretyczny przedmiot zawodowy, praktyczny przedmiot zawodowy). Zakres tematyczny i jego podział na zawody i semestry dla poszczególnych szkół może być także różny, lecz generalnie jest on nauczany w zawodzie technik informatyk i technik teleinformatyk oraz technik programista. Autorem książki jest Jerzy Kluczewski, długoletni instruktor Akademii CISCO CCNA. W swoim dorobku autorskim posiada już wiele publikacji książkowych i zbiory zadań o tematyce związanej z sieciami komputerowymi. Swoje doświadczenie zdobywał podczas pracy w przemyśle, obecnie jest wykładowcą w Wyższej Szkole Bankowej w Gdańsku.

412
E-book

Pracownia Urządzeń Techniki Komputerowej dla uczniów i studentów Część-2

Jerzy Kluczewski

PRACOWNIA URZĄDZEŃ TECHNIKI KOMPUTEROWEJ DLA UCZNIÓW I STUDENTÓW – Część 2 to zbiór przykładów, ćwiczeń i zadań opracowany pod kątem praktycznych zagadnień laboratoryjnych bazujących na symulacjach. Znajdziemy tu symulacje obwodów pomagających zrozumieć świat elektroniki cyfrowej i zasad na podstawie których działają komputery. Przedstawiono zasady projektowania, badania i programowania układów cyfrowych. Książka dedykowana jest uczniom, studentom i nauczycielom. Zawiera materiały pomocnicze dla przedmiotów związanych z elektroniką cyfrową i urządzeniami techniki komputerowej. Może być wykorzystana w laboratoriach studenckich jak i na kursach branżowych. Omawia podstawy algebry Boole’a, minimalizację funkcji logicznych i zagadnienia związane z programowaniem. Omówione zostały układy kombinacyjne, sekwencyjne i pamięci w postaci konkretnych układów scalonych. Cennym dodatkiem do książki jest możliwość pobrania plików ćwiczeń, przykładów i prezentacji przygotowanych przez autora.

413
E-book

Practical Ansible 2. Automate infrastructure, manage configuration, and deploy applications with Ansible 2.9

Daniel Oh, James Freeman, Fabio Alessandro Locati

Ansible enables you to automate software provisioning, configuration management, and application roll-outs, and can be used as a deployment and orchestration tool. While Ansible provides simple yet powerful features to automate multi-layer environments using agentless communication, it can also solve other critical IT challenges, such as ensuring continuous integration and continuous deployment (CI/CD) with zero downtime.In this book, you'll work with Ansible 2.9 and learn to solve complex issues quickly with the help of task-oriented scenarios. You'll start by installing and configuring Ansible on Linux and macOS to automate monotonous and repetitive IT tasks and get to grips with concepts such as playbooks, inventories, and network modules. As you progress, you'll gain insight into the YAML syntax and learn how to port between Ansible versions. In addition to this, you'll also understand how Ansible enables you to orchestrate multi-layer environments such as networks, containers, and the cloud.By the end of this Ansible book, you'll be well - versed in writing playbooks and other related Ansible code to overcome just about all of your IT challenges, from infrastructure-as-code provisioning to application deployments, and even handling the mundane day-to-day maintenance tasks that take up so much valuable time.

414
E-book

Practical Discrete Mathematics. Discover math principles that fuel algorithms for computer science and machine learning with Python

Ryan T. White, Archana Tikayat Ray

Discrete mathematics deals with studying countable, distinct elements, and its principles are widely used in building algorithms for computer science and data science. The knowledge of discrete math concepts will help you understand the algorithms, binary, and general mathematics that sit at the core of data-driven tasks.Practical Discrete Mathematics is a comprehensive introduction for those who are new to the mathematics of countable objects. This book will help you get up to speed with using discrete math principles to take your computer science skills to a more advanced level.As you learn the language of discrete mathematics, you’ll also cover methods crucial to studying and describing computer science and machine learning objects and algorithms. The chapters that follow will guide you through how memory and CPUs work. In addition to this, you’ll understand how to analyze data for useful patterns, before finally exploring how to apply math concepts in network routing, web searching, and data science.By the end of this book, you’ll have a deeper understanding of discrete math and its applications in computer science, and be ready to work on real-world algorithm development and machine learning.

415
E-book

Practical Node-RED Programming. Learn powerful visual programming techniques and best practices for the web and IoT

Taiji Hagino, Nick O'Leary

Node-RED is a free and open source flow-based programming tool used to handle IoT data that allows programmers of any level to interconnect physical I/O, cloud-based systems, databases, and APIs to build web applications without code.Practical Node-RED Programming is a comprehensive introduction for anyone looking to get up to speed with the Node-RED ecosystem in no time. Complete with hands-on tutorials, projects, and self-assessment questions, this easy-to-follow guide will help you to become well versed in the foundations of Node-RED. You’ll learn how to use Node-RED to handle IoT data and build web applications without having to write complex code. Once you’ve covered the basics, you’ll explore various visual programming techniques and find out how to make sample flows as you cover web development, IoT development, and cloud service connections, and finally build useful real-world applications.By the end of this book, you’ll have learned how to use Node-RED to develop a real-world application from scratch, which can then be implemented in your business.

416
E-book

Practical Security Automation and Testing. Tools and techniques for automated security scanning and testing in DevSecOps

Tony Hsiang-Chih Hsu

Security automation is the automatic handling of software security assessments tasks. This book helps you to build your security automation framework to scan for vulnerabilities without human intervention.This book will teach you to adopt security automation techniques to continuously improve your entire software development and security testing. You will learn to use open source tools and techniques to integrate security testing tools directly into your CI/CD framework. With this book, you will see how to implement security inspection at every layer, such as secure code inspection, fuzz testing, Rest API, privacy, infrastructure security, and web UI testing. With the help of practical examples, this book will teach you to implement the combination of automation and Security in DevOps. You will learn about the integration of security testing results for an overall security status for projects.By the end of this book, you will be confident implementing automation security in all layers of your software development stages and will be able to build your own in-house security automation platform throughout your mobile and cloud releases.