Continuous Delivery in Java. Essential Tools and Best Practices for Deploying Code to Production
- Autorzy:
- Daniel Bryant, Abraham MarĂn-PĂŠrez
- Ocena:
- Bądź pierwszym, który oceni tę książkę
- Stron:
- 482
- Dostępne formaty:
-
ePubMobi
Opis ebooka: Continuous Delivery in Java. Essential Tools and Best Practices for Deploying Code to Production
Continuous delivery adds enormous value to the business and the entire software delivery lifecycle, but adopting this practice means mastering new skills typically outside of a developer’s comfort zone. In this practical book, Daniel Bryant and Abraham Marín-Pérez provide guidance to help experienced Java developers master skills such as architectural design, automated quality assurance, and application packaging and deployment on a variety of platforms.
Not only will you learn how to create a comprehensive build pipeline for continually delivering effective software, but you’ll also explore how Java application architecture and deployment platforms have affected the way we rapidly and safely deliver new software to production environments.
- Get advice for beginning or completing your migration to continuous delivery
- Design architecture to enable the continuous delivery of Java applications
- Build application artifacts including fat JARs, virtual machine images, and operating system container (Docker) images
- Use continuous integration tooling like Jenkins, PMD, and find-sec-bugs to automate code quality checks
- Create a comprehensive build pipeline and design software to separate the deploy and release processes
- Explore why functional and system quality attribute testing is vital from development to delivery
- Learn how to effectively build and test applications locally and observe your system while it runs in production
Wybrane bestsellery
-
Ta książka jest praktycznym przewodnikiem, dzięki któremu programiści Javy opanują techniki potrzebne do pomyślnego zastosowania metody ciągłego dostarczania. Opisano tu najlepsze zasady budowy architektury oprogramowania, automatycznej kontroli jakości, pakowania aplikacji i wdrażania ich w różn...
Ciągłe dostarczanie oprogramowania w języku Java. Najlepsze narzędzia i praktyki wdrażania kodu Ciągłe dostarczanie oprogramowania w języku Java. Najlepsze narzędzia i praktyki wdrażania kodu
(34.50 zł najniższa cena z 30 dni)37.95 zł
69.00 zł(-45%) -
Ten przewodnik, który docenią programiści i architekci, zawiera wyczerpujące omówienie zagadnień projektowania, funkcjonowania i modyfikowania architektury API. Od strony praktycznej przedstawia strategie budowania i testowania API REST umożliwiającego połączenie oferowanej funkcjonalności na poz...
Architektura API. Projektowanie, używanie i rozwijanie systemów opartych na API Architektura API. Projektowanie, używanie i rozwijanie systemów opartych na API
(44.85 zł najniższa cena z 30 dni)48.30 zł
69.00 zł(-30%) -
Most organizations with a web presence build and operate APIs; the doorway for customers to interact with the company's services. Designing, building, and managing these critical programs affect everyone in the organization, from engineers and product owners to C-suite executives. But the real ch...(186.15 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%) -
To dziewiąte wydanie znakomitego podręcznika programowania dla początkujących, starannie zaktualizowane i uzupełnione o informacje dotyczące Java Platform, Standard Edition 17. Książka rozpoczyna się od solidnej dawki wiedzy o kompilacji i uruchamianiu programu w Javie, słowach kluczowych i istot...(83.85 zł najniższa cena z 30 dni)
90.30 zł
129.00 zł(-30%) -
Dzięki tej książce zrozumiesz bazowe koncepcje programowania funkcyjnego i przekonasz się, że możesz włączać je do kodu bez rezygnacji z paradygmatu obiektowego. Dowiesz się również, kiedy w swojej codziennej pracy używać takich opcji jak niemutowalność i funkcje czyste i dlaczego warto to robić....
Java. Podejście funkcyjne. Rozszerzanie obiektowego kodu Javy o zasady programowania funkcyjnego Java. Podejście funkcyjne. Rozszerzanie obiektowego kodu Javy o zasady programowania funkcyjnego
(56.55 zł najniższa cena z 30 dni)60.90 zł
87.00 zł(-30%) -
Oto kolejne wydanie zwięzłego podręcznika dla programistów Javy, który ma ułatwić maksymalne wykorzystanie technologii tego języka w wersji 17. Treść została skrupulatnie przejrzana i uzupełniona o materiał dotyczący nowości w obiektowym modelu Javy. Pierwsza część książki obejmuje wprowadzenie d...(57.84 zł najniższa cena z 30 dni)
62.30 zł
89.00 zł(-30%) -
Oto zaktualizowane i uzupełnione wydanie zwięzłego wprowadzenia do Javy SE 17, przeznaczonego dla profesjonalnych programistów Javy. Przedstawiono w nim wszystkie istotne zagadnienia, łącznie z takimi koncepcjami jak wyrażenia lambda i strumienie, nowoczesnymi konstrukcjami, jak rekordy i klasy z...
Java. Przewodnik doświadczonego programisty. Wydanie III Java. Przewodnik doświadczonego programisty. Wydanie III
(57.84 zł najniższa cena z 30 dni)62.30 zł
89.00 zł(-30%) -
Oto dwunaste wydanie wyczerpującego kompendium, w pełni zaktualizowane, uzupełnione o nowości wprowadzone w Java SE 17. Opisano w nim cały język Java: jego składnię, słowa kluczowe i najistotniejsze zasady programowania. Znalazły się tu także informacje dotyczące biblioteki Java API, takie jak op...(129.35 zł najniższa cena z 30 dni)
139.30 zł
199.00 zł(-30%) -
Architect robust solutions like a pro with real-world insights and cutting-edge design techniques. Delve into advanced analytics, machine learning, generative AI, cloud-native architecture, and the key soft skills to excel as a solutions architect.
Solutions Architect's Handbook. Kick-start your career with architecture design principles, strategies, and generative AI techniques - Third Edition Solutions Architect's Handbook. Kick-start your career with architecture design principles, strategies, and generative AI techniques - Third Edition
Saurabh Shrivastava, Neelanjali Srivastav, Rajesh Sheth, Kamal Arora, Rohan Karmarkar
-
Build Your Own Programming Language provides a hands-on approach to designing and implementing programming language features in a simple compiler and programming environment. This book will help you create new or domain-specific languages.
Build Your Own Programming Language. A developer's comprehensive guide to crafting, compiling, and implementing programming languages - Second Edition Build Your Own Programming Language. A developer's comprehensive guide to crafting, compiling, and implementing programming languages - Second Edition
O autorze ebooka
Daniel Bryant specjalizuje się we wdrażaniu procesów ciągłego dostarczania, w identyfikowaniu strumieni wartości, tworzeniu procesów kompilacyjnych i implementowaniu strategii testowania. Jest znawcą narzędzi DevOps, platform chmurowych i kontenerowych, mikrousług, a także ekspertem Javy.
Kup polskie wydanie:
Ciągłe dostarczanie oprogramowania w języku Java. Najlepsze narzędzia i praktyki wdrażania kodu
- Autor:
- Daniel Bryant, Abraham Marín-Pérez
37,95 zł
69,00 zł
(34.50 zł najniższa cena z 30 dni)
Ebooka "Continuous Delivery in Java. Essential Tools and Best Practices for Deploying Code to Production" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Continuous Delivery in Java. Essential Tools and Best Practices for Deploying Code to Production" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Continuous Delivery in Java. Essential Tools and Best Practices for Deploying Code to Production" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- ISBN Ebooka:
- 978-14-919-8597-7, 9781491985977
- Data wydania ebooka:
- 2018-11-09 Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Język publikacji:
- angielski
- Rozmiar pliku ePub:
- 10.9MB
- Rozmiar pliku Mobi:
- 26.7MB
Spis treści ebooka
- Forewords
- Preface
- Why Did We Write This Book?
- Why You Should Read This Book
- What This Book Is Not
- Conventions Used in This Book
- Using Code Examples
- OReilly Safari
- How to Contact Us
- Acknowledgments
- 1. Continuous Delivery: Why and What
- Setting the Scene
- Enabling Developers: The Why
- Rapid Feedback Reduces Context Switching
- Automatic, Repeatable, and Reliable Releases
- Codifying the Definition of Done
- Exploring a Typical Build Pipeline: The What
- Core Build Pipeline Stages
- Local development
- Commit
- Continuous integration
- Acceptance tests
- User acceptance tests
- Staging
- Production
- Observing and maintenance
- Core Build Pipeline Stages
- Impact of Container Technology
- Changes with Contemporary Architectures
- Summary
- 2. Evolution of Java Development
- Requirements of Modern Java Applications
- Need for Business Speed and Stability
- Rise of the API Economy
- Opportunities and Costs of the Cloud
- Modularity Redux: Embracing Small Services
- Impact on Continuous Delivery
- Requirements of Modern Java Applications
- Evolution of Java Deployment Platforms
- WARs and EARs: The Era of Application Server Dominance
- Executable Fat JARs: Emergence of Twelve-Factor Apps
- Container Images: Increasing Portability (and Complexity)
- Function as a Service: The Emergence of Serverless
- Impact of Platforms on Continuous Delivery
- DevOps, SRE, and Release Engineering
- Development and Operations
- Site Reliability Engineering
- Release Engineering
- Shared Responsibility, Metrics, and Observability
- Summary
- 3. Designing Architecture for Continuous Delivery
- Fundamentals of Good Architecture
- Loose Coupling
- High Cohesion
- Coupling, Cohesion, and Continuous Delivery
- Fundamentals of Good Architecture
- Architecture for Business Agility
- Bad Architecture Limits Business Velocity
- Complexity and Cost of Change
- Best Practices for API-Driven Applications
- Build APIs Outside-In
- Good APIs Assist Continuous Testing and Delivery
- Deployment Platforms and Architecture
- Designing Cloud-Native Twelve-Factor Applications
- Cultivating Mechanical Sympathy
- Design and Continually Test for Failure
- The Move Toward Small Services
- Challenges for Delivering Monolithic Applications
- Scaling development
- Differing change cadence: Independent deployability
- Subsystem scalability and elasticity
- Challenges for Delivering Monolithic Applications
- Microservices: SOA Meets Domain-Driven Design
- Functions, Lambdas, and Nanoservices
- Architecture: The Stuff Thats Hard to Change
- Summary
- 4. Deployment Platforms, Infrastructure, and Continuous Delivery of Java Apps
- Functionality Provided by a Platform
- Essential Development Processes
- Traditional Infrastructure Platforms
- Traditional Platform Components
- Challenges with Traditional Infrastructure Platforms
- Benefits of Being Traditional
- CI/CD on Traditional Infrastructure Platforms
- Cloud (IaaS) Platform
- Looking Inside the Cloud
- Cloud Challenges
- Benefits of the Cloud
- Continuously Delivering into the Cloud
- Platform as a Service
- Peeking Inside a PaaS
- PaaS Challenges
- Benefits of PaaS
- CI/CD and PaaS
- Containers (Docker)
- Container Platform Components
- Container Challenges
- Container Benefits
- Continuously Delivering Containers
- Kubernetes
- Core Concepts of Kubernetes
- Kubernetes Challenges
- Benefits of Kubernetes
- Continuous Delivery on Kubernetes
- Function-as-a-Service/Serverless Functions
- FaaS Concepts
- Challenges of FaaS
- FaaS Benefits
- CI/CD and FaaS
- Working with Infrastructure as Code
- Summary
- 5. Building Java Applications
- Breaking Down the Build Process
- Automating the Build
- Build Dependencies
- External Dependencies
- Multimodule Projects
- Multiple Repositories (or a Monorepo)?
- Plugins
- Releasing and Publishing Artifacts
- Java Build Tooling Overview
- Ant
- Installation
- Build example
- Releasing and publishing
- Ant
- Maven
- Installation
- Build example
- Releasing and publishing
- Gradle
- Installation
- Build example
- Releasing and publishing
- Bazel, Pants, and Buck
- Other JVM Build Tools: SBT and Leiningen
- Make
- Choosing a Build Tool
- Summary
- 6. Additional Build Tooling and Skills
- Linux, Bash, and Basic CLI Commands
- Users, Permissions, and Groups
- Users and permissions
- Understanding sudosuperuser do
- Working with groups
- Users, Permissions, and Groups
- Working with the Filesystem
- Navigating directories
- Creating and manipulating files
- Linux, Bash, and Basic CLI Commands
- Viewing and Editing Text
- Joining Everything Together: Redirects, Pipes, and Filters
- Searching and Manipulating Text: grep, awk, and sed
- Diagnostic Tooling: top, ps, netstat, and iostat
- HTTP Calls and JSON Manipulation
- curl
- HTTPie
- jq
- Basic Scripting
- xargs
- Pipes and Filters
- Loops
- Conditionals
- Summary
- 7. Packaging Applications for Deployment
- Building a JAR: Step-by-Step
- Building a Fat Executable Uber JAR
- Maven Shade Plugin
- Building Spring Boot Uber JARs
- Skinny JARsDeciding Not to Build Fat JARs
- Building WAR Files
- Packaging for the Cloud
- Cooking Configuration: Baking or Frying Machines
- Building RPMs and DEBs OS Packages
- Additional OS Package Build Tools (with Windows Support)
- Creating Machine Images for Multiple Clouds with Packer
- Additional Tools for Creating Machine Images
- Building Containers
- Creating Container Images with Docker
- Fabricating Docker Images with fabric8
- Packaging FaaS Java Applications
- Summary
- 8. Working Locally (Like It Was Production)
- Challenges with Local Development
- Mocking, Stubbing, and Service Virtualization
- Pattern #1: Profiles, Mocks, and Stubs
- Mocking with Mockito
- Verifying interactions
- Stubbing method calls
- Pattern #2: Service Virtualization and API Simulation
- Virtualizing Services with Hoverfly
- Installing Hoverfly
- Capturing and simulating a request with Hoverfly
- VMs: Vagrant and Packer
- Installing Vagrant
- Creating a Vagrantfile
- Pattern #3: Production-in-a-Box
- Containers: Kubernetes, minikube, and Telepresence
- Introducing the Docker Java Shop Sample App
- Building Java Applications and Container Images
- Deploying into Kubernetes
- Simple Smoke Test
- Building the Remaining Applications
- Deploying the Entire Java Application in Kubernetes
- Viewing the Deployed Application
- Telepresence: Working Remotely, Locally
- Pattern #4: Environment Leasing
- FaaS: AWS Lamba and SAM Local
- Installing SAM Local
- AWS Lambda Scaffolding
- Testing AWS Lambda Event Handling
- Smoke Testing with SAM Local
- FaaS: Azure Functions and VS Code
- Installing Azure Function Core Tools
- Building and Testing Locally
- Testing Remotely, Locally Using VS Code
- Summary
- 9. Continuous Integration: The First Steps in Creating a Build Pipeline
- Why Continuous Integration?
- Implementing CI
- Centralized Versus Distributed Version-Control Systems
- Git Primer
- Core Git CLI Commands
- Initializing and working with a repo (history)
- Branching and merging
- Core Git CLI Commands
- Hub: An Essential Tool for Git and GitHub
- Working Effectively with DVCS
- Trunk-based Development
- Feature Branching
- Gitflow
- No One-Size Fits All: How to Choose a Branching Strategy
- Code Reviews
- What to Look For
- Understandability
- Language-specific issues
- Security
- Performance
- What to Look For
- Automation: PMD, Checkstyle, and FindBugs
- PMD: static code analyzer
- Checksyle: coding standard enforcement
- FindBugs: Static analyzer for bugs
- Reviewing Pull Requests
- Automating Builds
- Jenkins
- Getting Your Team Onboard
- Merge Code Regularly
- Stop the Line!: Managing Broken Builds
- Dont @Ignore Tests
- Keep the Build Fast
- CI of the Platform (Infrastructure as Code)
- Summary
- 10. Deploying and Releasing from the Pipeline
- Introducing the Extended Java Shop Application
- Separating Deployment and Release
- Deploying Applications
- Creating a Container Image
- Installing the plugin
- Creating the DockerHub credentials
- Building and publishing
- Creating a Container Image
- Deployment Mechanisms
- The plugin example: Kubernetes
- Installing the plugin
- Preparing the configuration files
- Registering Kubernetes credentials
- Creating service definitions
- Creating the deployment job
- The plugin example: Kubernetes
- The CLI example: Amazon ECS
- Installing and configuring the CLI
- Amazon ECS concepts
- Creating tasks, deploying services
- It All Starts (and Ends) with Health Checks
- Providing health-check endpoints
- Consulting health-check endpoints
- Deployment Strategies
- Single target deployment
- All-at-once deployment
- Minimum in-service deployment
- Rolling deployment
- Blue/green deployment
- Canary deployment
- Which deployment type should I choose?
- Working with Unmanaged Clusters
- A generic strategy
- Deploying a single instance
- Bringing down a single instance
- Rerouting
- A generic strategy
- Changing Databases
- Managing database deployments
- Separating database and application deployments
- Communicating via stored procedures: turning the database into just another service
- Releasing Functionality
- Feature Flags
- Semantic Versioning (semver)
- Backward Compatibility and Versions in APIs
- Avoid versioning
- Version the endpoint
- Version the content
- Advanced change management
- Multiple-Phase Upgrades
- Deprecating old APIs
- Managing Configuration and Secrets
- Baked-In Configuration
- Externalized Configuration
- Handling Secrets
- Summary
- 11. Functional Testing: Correctness and Acceptance
- Why Test Software?
- What to Test? Introducing Agile Testing Quadrants
- Continuous Testing
- Building the Right Feedback Loop
- Turtles All the Way Down
- Synthetic Transactions
- End-to-End Testing
- Acceptance Testing
- Behavior-Driven Development
- Defining steps
- Mimicking user action
- Making build instances work like a user device
- Behavior-Driven Development
- Stubbing or Virtualizing Third-Party Services
- Bringing It All Together
- Consumer-Driven Contracts
- RESTful API Contracts
- Contract first, interaction second
- Interaction first, contract second
- RESTful API Contracts
- Message Contracts
- Contract testing at the protocol layer
- Contract testing at the serialization layer
- Component Testing
- Embedded Data Stores
- In-Memory Message Queues
- Test Doubles
- Creating Internal Resources/Interfaces
- In-Process Versus Out-Of-Process
- Integration Testing
- Verifying External Interactions
- Testing Fault Tolerance
- Unit Testing
- Sociable Unit Testing
- Solitary Unit Testing
- Dealing with Flaky Tests
- Data
- Resource That Is Not Available Yet
- Nondeterministic Events
- If Nothing Else Works
- Testing Outside-In Versus Testing Inside-Out
- Outside-In
- Inside-Out
- Putting It All Together Within the Pipeline
- How Much Testing Is Enough?
- Summary
- 12. System-Quality Attributes Testing: Validating Nonfunctional Requirements
- Why Test Nonfunctional Requirements?
- Code Quality
- Architectural Quality
- ArchUnit: Unit-Testing Architecture
- Generate Design-Quality Metrics with JDepend
- Performance and Load Testing
- Basic Performance Testing with Apache Benchmark
- Load Testing with Gatling
- Security, Vulnerabilities, and Threats
- Code-Level Security Verification
- Dependency Verification
- Deployment Platform-Specific Security Issues
- Cloud security
- Container security
- FaaS/Serverless security
- Next Steps: Threat Modeling
- Decompose the application
- Determine and rank threats
- Determine countermeasures and mitigation
- Chaos Testing
- Causing Chaos in Production (Bring in the Monkeys)
- Cloud chaos
- Container (and Kubernetes) chaos
- FaaS/Serverless chaos
- Causing Chaos in Production (Bring in the Monkeys)
- Causing Chaos in Preproduction
- How Much NFR Testing Is Enough?
- Summary
- 13. Observability: Monitoring, Logging, and Tracing
- Observability and Continuous Delivery
- Why Observe?
- What to Observe: Application, Network, and Machine
- How to Observe: Monitoring, Logging, and Tracing
- Alerting
- Observability and Continuous Delivery
- Designing Systems for Observability
- Metrics
- Type of Metrics
- Dropwizard Metrics
- Metrics configuration and metadata
- Implementing a gauge
- Spring Boot Actuator
- Creating a counter
- Micrometer
- Creating a timer
- Best Practices with Metrics
- Logging
- Forms of Logging
- SLF4J
- Log4j 2
- Logging Best Practices
- Request Tracing
- Traces, Spans, and Baggage
- Java Tracing: OpenZipkin, Spring Sleuth, and OpenCensus
- Recommended Practices for Tracing
- Exception Tracking
- Airbrake
- System-Monitoring Tooling
- collectd
- rsyslog
- Sensu
- Collection and Storage
- Prometheus
- Elastic-Logstash-Kibana
- Visualization
- Visualization for Business
- Operational Visualization
- Visualization for Developers
- Summary
- 14. Migrating to Continuous Delivery
- Continuous Delivery Capabilities
- Picking Your Migration Project
- Situational Awareness
- The Cynefin Framework and Continuous Delivery
- Simple
- Complicated
- Complex
- Chaotic
- Disorder
- The Cynefin Framework and Continuous Delivery
- All Models Are Wrong, Some Are Useful
- Bootstrapping Continuous Delivery
- Measuring Continuous Delivery
- Start Small, Experiment, Learn, Share, and Repeat
- Increase Adoption: Leading Change
- Additional Guidance and Tips
- Bad Practices and Common Antipatterns
- Ugly Architecture: To Fix, or Not to Fix
- Each end user/customer has separate codebase and database
- No well-defined interface between application and external integrations
- Infrastructure provides a single point of integration (and coupling and failure)
- The application is a framework tapestry and contains (too) many application frameworks or middleware
- Summary
- 15. Continuous Delivery and Continuous Improvement
- Start from Where You Are
- Build on Solid Technical Foundations
- Continuously Deliver Value (Your Highest Priority)
- Increase Shared Responsibility of Software
- Promote Fast Feedback and Experimentation
- Expand Continuous Delivery in an Organization
- Continuous Improvement
- Summary
- Index
O'Reilly Media - inne książki
-
Software as a service (SaaS) is on the path to becoming the de facto model for building, delivering, and operating software solutions. Adopting a multi-tenant SaaS model requires builders to take on a broad range of new architecture, implementation, and operational challenges. How data is partiti...(237.15 zł najniższa cena z 30 dni)
245.65 zł
289.00 zł(-15%) -
Great engineers don't necessarily make great leaders—at least, not without a lot of work. Finding your path to becoming a strong leader is often fraught with challenges. It's not easy to figure out how to be strategic, successful, and considerate while also being firm. Whether you're on the...(118.15 zł najniższa cena z 30 dni)
126.65 zł
149.00 zł(-15%) -
Data science happens in code. The ability to write reproducible, robust, scaleable code is key to a data science project's success—and is absolutely essential for those working with production code. This practical book bridges the gap between data science and software engineering,and clearl...(211.65 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
With the massive adoption of microservices, operators and developers face far more complexity in their applications today. Service meshes can help you manage this problem by providing a unified control plane to secure, manage, and monitor your entire network. This practical guide shows you how th...(194.65 zł najniższa cena z 30 dni)
211.65 zł
249.00 zł(-15%) -
Get practical advice on how to leverage AI development tools for all stages of code creation, including requirements, planning, design, coding, debugging, testing, and documentation. With this book, beginners and experienced developers alike will learn how to use a wide range of tools, from gener...(164.25 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%) -
Rust's popularity is growing, due in part to features like memory safety, type safety, and thread safety. But these same elements can also make learning Rust a challenge, even for experienced programmers. This practical guide helps you make the transition to writing idiomatic Rust—while als...(164.25 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%) -
Advance your Power BI skills by adding AI to your repertoire at a practice level. With this practical book, business-oriented software engineers and developers will learn the terminologies, practices, and strategy necessary to successfully incorporate AI into your business intelligence estate. Je...(211.65 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
Microservices can be a very effective approach for delivering value to your organization and to your customers. If you get them right, microservices help you to move fast by making changes to small parts of your system hundreds of times a day. But if you get them wrong, microservices will just ma...(203.15 zł najniższa cena z 30 dni)
211.65 zł
249.00 zł(-15%) -
JavaScript gives web developers great power to create rich interactive browser experiences, and much of that power is provided by the browser itself. Modern web APIs enable web-based applications to come to life like never before, supporting actions that once required browser plug-ins. Some are s...(186.15 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%) -
How will software development and operations have to change to meet the sustainability and green needs of the planet? And what does that imply for development organizations? In this eye-opening book, sustainable software advocates Anne Currie, Sarah Hsu, and Sara Bergman provide a unique overview...(169.14 zł najniższa cena z 30 dni)
169.14 zł
199.00 zł(-15%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka drukowana
Oceny i opinie klientów: Continuous Delivery in Java. Essential Tools and Best Practices for Deploying Code to Production Daniel Bryant, Abraham MarĂn-PĂŠrez (0) Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.