Методи програмування

505
Eлектронна книга

Spring: Developing Java Applications for the Enterprise. Build robust applications and microservices with Spring Framework, Spring Boot, and Spring Cloud

Ravi Kant Soni, Rajesh R V, Amuthan Ganeshan

This carefully designed course aims to get you started with Spring, the most widely adopted Java framework, and then goes on to more advanced topics such as building microservices using Spring Boot within Spring. With additional coverage of popular web frameworks such as Struts, WebWork, Java Server Faces, Tapestry, Docker, and Mesos, you'll have all the skills and expertise you need to build great applications. Starting with the Spring Framework architecture and setting up the key components of the Spring Application Development Environment, you will learn how to configure Spring Container and manage Spring beans using XML and Annotation. Next, you will delve into Spring MVC, which will help you build flexible and loosely coupled web applications. You'll also get to grips with testing applications for reliability. Moving on, this course will help you implement the microservice architecture in Spring Framework, Spring Boot, and Spring Cloud. Written to the latest specifications of Spring, this book will help you build modern, Internet-scale Java applications in no time.This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products:? Learning Spring Application Development by Ravi Kant Soni? Spring MVC Beginner's Guide - Second Edition by Amuthan Ganeshan? Spring Microservices by Rajesh RV

506
Eлектронна книга

Spring Essentials. Build mission-critical enterprise applications using Spring Framework and Aspect Oriented Programming

Shameer Kunjumohamed, Hamidreza Sattari

Spring is an open source Java application development framework to build and deploy systems and applications that run on the JVM. It is the industry standard and the most popular framework among Java developers with over two-thirds of developers using it.Spring Essentials makes learning Spring so much quicker and easier with the help of illustrations and practical examples. Starting from the core concepts of features such as inversion of Control Container and BeanFactory, we move on to a detailed look at aspect-oriented programming. We cover the breadth and depth of Spring MVC, the WebSocket technology, Spring Data, and Spring Security with various authentication and authorization mechanisms. Packed with real-world examples, you’ll get an insight into utilizing the power of Spring Expression Language in your applications for higher maintainability. You’ll also develop full-duplex real-time communication channels using WebSocket and integrate Spring with web technologies such as JSF, Struts 2, and Tapestry. At the tail end, you will build a modern SPA using EmberJS at the front end and a Spring MVC-based API at the back end.By the end of the book, you will be able to develop your own dull-fledged applications with Spring.

507
Eлектронна книга

Spring Microservices. Internet-scale architecture with Spring framework, Spring Cloud, Spring Boot

Rajesh R V

The Spring Framework is an application framework and inversion of the control container for the Java platform. The framework's core features can be used by any Java application, but there are extensions to build web applications on top of the Java EE platform. This book will help you implement the microservice architecture in Spring Framework, Spring Boot, and Spring Cloud. Written to the latest specifications of Spring, you'll be able to build modern, Internet-scale Java applications in no time.We would start off with the guidelines to implement responsive microservices at scale. We will then deep dive into Spring Boot, Spring Cloud, Docker, Mesos, and Marathon. Next you will understand how Spring Boot is used to deploy autonomous services, server-less by removing the need to have a heavy-weight application server. Later you will learn how to go further by deploying your microservices to Docker and manage it with Mesos. By the end of the book, you'll will gain more clarity on how to implement microservices using Spring Framework and use them in Internet-scale deployments through real-world examples.

508
Eлектронна книга

Spring MVC: Beginner's Guide. Unleash the power of the latest Spring MVC 4.x to develop a complete application - Second Edition

Amuthan Ganeshan

Spring MVC helps you build flexible and loosely coupled web applications. The Spring MVC Framework is architected and designed in such a way that every piece of logic and functionality is highly configurable. Also, Spring can integrate effortlessly with other popular web frameworks such as Struts, WebWork, Java Server Faces, and Tapestry. The book progressively teaches you to configure the Spring development environment, architecture, controllers, libraries, and more before moving on to developing a full web application. It begins with an introduction to the Spring development environment and architecture so you're familiar with the know-hows. From here, we move on to controllers, views, validations, Spring Tag libraries, and more. Finally, we integrate it all together to develop a web application. You'll also get to grips with testing applications for reliability.

509
Eлектронна книга

Spring MVC Blueprints. Design and implement real-world web-based applications using the Spring Framework 4.x specification based on technical documentation

Sherwin John C.Tragura

Spring MVC is the ideal tool to build modern web applications on the server side. With the arrival of Spring Boot, developers can really focus on the code and deliver great value, leveraging the rich Spring ecosystem with minimal configuration.Spring makes it simple to create RESTful applications, interact with social services, communicate with modern databases, secure your system, and make your code modular and easy to test. It is also easy to deploy the result on different cloud providers.This book starts all the necessary topics in starting a Spring MVC-based application. Moving ahead it explains how to design model objects to handle file objects. save files into a data store and how Spring MVC behaves when an application deals with uploading and downloading files. Further it highlights form transactions and the user of Validation Framework as the tool in validating data input. It shows how to create a customer feedback system which does not require a username or password to log in. It will show you the soft side of Spring MVC where layout and presentation are given importance. Later it will discuss how to use Spring Web Flow on top of Spring MVC to create better web applications. Moving ahead, it will teach you how create an Invoice Module that receives and transport data using Web ServicesBy the end of the book you will be able to create efficient and flexible real-time web applications using all the frameworks in Spring MVC.

510
Eлектронна книга

Spring MVC Cookbook. Over 40 recipes for creating cloud-ready Java web applications with Spring MVC

Alex Bretet

Spring MVC is a lightweight application framework that comes with a great configuration by default. Being part of the Spring Framework, it naturally extended and supported it with an amazing set of recognizable annotations. External libraries can be plugged in and plugged out. It also possesses a request flow.Complete support of REST web services makes the Spring architecture an extremely consistent choice to support your front-end needs and Internet transformations.From the design of your Maven modules, you will achieve an Enterprise-standard for a stateless REST application based on Spring and Spring MVC with this book.This guide is unique in its style as it features a massive overview of practical development techniques brought together from the Spring ecosystem, the new JEE standards, the JavaScript revolution and Internet of Things.You will begin with the very first steps of Spring MVC's product design. Focused on deployment, viability, and maintainability, you will learn the use of Eclipse, Maven, and Git. You will walk through the separation of concerns driven by the microservices principles. Using Bootstrap and AngularJS, you will develop a responsive front-end, capable of interacting autonomously with a REST API.Later in the book, you will setup the Java Persistence API (JPA) within Spring; learn how to configure your Entities to reflect your domain needs, and discover Spring Data repositories. You will analyze how Spring MVC responds to complex HTTP requests. You will implement Hypermedia and HATEOAS to guide your customer's stateless conversation with the product and see how a messaging-service based on WebSocket can be configured. Finally you will learn how to set up and organize different levels of automated-tests, including logging and monitoring.

511
Eлектронна книга

Spring MVC: Designing Real-World Web Applications. Click here to enter text

Alex Bretet, Shameer Kunjumohamed, Geoffroy Warin, Hamidreza Sattari

Spring MVC helps you build flexible and loosely coupled web applications. The Spring MVC Framework is designed in such a way that every piece of logic and functionality is highly configurable. This Learning Path aims to make you an expert in designing web applications with Spring MVC 4.In our first module, we’ll begin with an introduction to the Spring framework. You'll then learn aspect-oriented programming. Packed with real-world examples, you’ll get an insight into how you can use Spring Expression Language in your applications to make them easier to manage and maintain.In the second module, you'll learn everything you need to build modern Spring-based enterprise web applications. From practical development techniques and useful tools from the wider Spring ecosystem, to the new JEE standards, the impact of JavaScript, and even the Internet of Things, you'll feel confident that you can deploy Spring for an impressive range of creative purposes. In the final module, you'll find out how to take advantage of Spring MVC's advanced features - essential if you are to properly master the framework. To do this you'll investigate the inner mechanics of Spring MVC, and how they tie into to the broader principles that inform many modern web architectures. With further guidance on how to test, secure, and optimize your application, as well as designing RESTful services, you'll very quickly be ready to use Spring in your next web project.This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products:• Spring Essentials by Shameer Kunjumohamed, Hamidreza Sattari• Spring MVC Cookbook by Alex Bretet• Mastering Spring MVC 4 by Geoffroy Warin

512
Eлектронна книга

Spring Security. Effectively secure your web apps, RESTful services, cloud apps, and microservice architectures - Fourth Edition

Badr Nasslahsen

Knowing that experienced hackers are constantly on the prowl to attack your apps can make security one of the most challenging concerns of creating an app. The complexity of properly securing an app is compounded when you must also integrate this factor with legacy code, new technologies, and other frameworks. This book will help you easily secure your Java apps with Spring Security, a trusted and highly customizable authentication and access control framework.The book starts by showing you how to implement different authentication mechanisms before demonstrating how to properly restrict access to your app. You’ll then cover tips for integrating Spring Security with popular web frameworks such as Thymeleaf. The book also features an example of how Spring Security defends against session fixation, moves into concurrency control, and how you can use session management for administrative functions. This fourth edition aligns with Java 17/21 and Spring Security 6, covering advanced security scenarios for RESTful web services and microservices. This ensures you gain a complete understanding of the issues surrounding stateless authentication and discover a concise approach to solving those issues.By the end of this book, you’ll be able to integrate Spring Security 6 with GraalVM native images seamlessly, from start to finish.

513
Eлектронна книга

SproutCore Web Application Development. Creating fast, powerful, and feature-rich web applications using the SproutCore HTML5 framework

Tyler Keating

SproutCore is a framework that exists to allow developers to deliver on the promise of the Web with more than just simple attractive demos, but with complex software and remarkable user experiences. SproutCore’s creators recognized early on that developing real web software requires the same software development tools and practices that have evolved over decades in the native software field and thus SproutCore brings these to the Web.SproutCore Web Application Development is more than just a guide to one of the largest and most powerful web application frameworks out there, it’s also a guide to writing genre defining web applications and solving the unique problems that the web platform creates. Containing the results of thousands of hours of software development experience, this book is invaluable for anyone already writing software for the Web or just starting out.SproutCore Web Application Development comprises of three sections. In the first section we introduce SproutCore and walk through a simple SproutCore application. From there, we look in detail at all of the main components of the framework before finally working through a rigorous real-world example from start to finish. Learning about SproutCore means learning about writing software for the Web. In this book, you will not only learn what sets SproutCore apart from other web libraries and frameworks, you will also learn about solving the difficult challenges that web development poses. We will look at all the components of an application and how to translate wireframes, mocks, and design descriptions into clean, efficient, and maintainable code using MVC, data adaptors, statecharts, and more. We will look at SproutCore’s powerful binding and observing and watch how changes propagate across our app effortlessly and magically with very little code.By the time you complete SproutCore Web Application Development, you’ll be ready to develop your own application that redefines what it means to be a web application.

514
Eлектронна книга

SQL Server Analysis Services 2012 Cube Development Cookbook. If you prefer the instructional approach to a lot of theory, this cookbook is for you. It takes you straight into building data cubes through hands-on recipes, helping you get to grips with SQL Server Analysis Services fast

Steve Hughes, Baya Dewald, Paul Turley

Microsoft SQL Server is a relational database management system. As a database, it is a software product whose primary function is to store and retrieve data as requested by other software applications. SQL Server Analysis Services adds OLAP and data mining capabilities for SQL Server databases. OLAP (online analytical processing) is a technique for analyzing business data for effective business intelligence.This practical guide teaches you how to build business intelligence solutions using Microsoft’s core product – SQL Server Analysis Services. The book covers the traditional multi-dimensional model which has been around for over a decade as well as the tabular model introduced with SQL Server 2012.Starting with comparing MultiDimensional and tabular models – discussing the values and limitations of each, you will then cover the essential techniques for building dimensions and cubes. Following on from this, you will be introduced to more advanced topics, such as designing partitions and aggregations, implementing security, and synchronizing databases for solutions serving many users.The book also covers administrative material, such as database backups, server configuration options, and monitoring and tuning performance. We also provide a primer on MultiDimensional eXpressions (MDX) as well as Data Analysis expressions (DAX) languages.This book provides you with data cube development techniques, and also the ongoing monitoring and tuning for Analysis Services.

515
Eлектронна книга

Stwórz Grę Aplikacje Mobilne ES6+ JavaScript React Native - Hooks

poswojsku.pl

Witaj w poradniku wydawnictwa poswojsku.pl, dzięki któremu wspólnie zaprogramujemy grę mobilną Falling Jumping Shapes. Stworzymy projekt od pomysłu przez grafikę, aż do kompleksowego zaprogramowania w najwspanialszym języku programowania: JavaScript. Aby jednak to osiągnąć, najpierw nauczę Ciebie podstaw kilku niesamowitych technologii: nowoczesnej odmiany JavaScript, czyli tzw. ES6+, React Native, React, CSS w wersji do aplikacji mobilnej, Android. Aplikacje będziemy tworzyli w IDE: VSCodium lub możesz użyć inny edytor kodu, np. Visual Studio Code. Poradnik zawiera kod gry wraz z omówieniem oraz podstawową wiedzę niezbędną do tworzenia aplikacji mobilnych za pomocą frameworka React Native - Część II Aplikacje Mobilne Wprowadzenie. Ale jeżeli posiadasz już podstawy wiedzy, możesz od razu przejść do tworzenia gry. OPIS GRY DO WYKONANIA Planujemy zbudować grę, posiadającą trzy poziomy, a właściwie warianty: prosty - nazwijmy go SIMPLE oraz przypiszmy do niego oznaczenie 'zero' trudniejszy - nazwijmy go MEDIUM oraz przypiszmy do niego oznaczenie 'one' nieco szalony - nazwijmy go CRAZY oraz przypiszmy do niego oznaczenie 'two' Użyłem określenia 'warianty' a nie poziomy, gdyż można uruchomić każdy z nich bez względu na przejście przez poprzedni. Technicznie rzecz ujmując będą to trzy zupełnie niezależne od siebie gry, ale oparte na podobnym wyglądzie oraz grafice. Gracz będzie miał za zadanie kliknięcie w spadającą kulkę, tyle razy, aby wyszła za jedną z bocznych krawędzi. Zasady gry są bardzo proste: Wybierając z menu nawigacyjnego jeden z wariantów, Gracz rozpocznie grę, Po kliknięciu w przycisk START GAME pojawia się na górnej krawędzi kulka o losowym kolorze, Kulka opada powoli w dół, Gracz ma za zadanie kliknąć kulkę, a ona za każdym kliknięciem zmienia swoją pozycję w poziomie (w sposób losowy w lewo lub prawo - zgodnie z logiką zapisaną w kodzie JavaScript), Gdy kulka wyjedzie za lewą lub prawą krawędź - Gracz uzyskuje punkt - trzeba: uruchomić Zliczanie Punktów, kulka ponownie musi wrócić powyżej górnej krawędzi, aby rozpocząć swobodne spadanie, ale już w innym kolorze oraz z większą szybkością niż poprzednio, Gracza trzeba poinformować o liczbie punktów, Gracza trzeba poinformować o tym, że idzie mu dobrze, Gdy kulka spadnie poniżej dolnej krawędzi, Gracz nie uzyskuje punktu: kulka ponownie musi wrócić powyżej górnej krawędzi, aby rozpocząć spadanie, ale już w innym kolorze, Gracza trzeba poinformować o tym, że nie wykonał poprawnie kliknięć w spadający obiekt, granicznik - maksymalna liczba punktów - po uzyskaniu określonej, założonej przez programistę liczby punktów, kończy się gra: Gracza trzeba poinformować, że gra się zakończyła bo uzyskał określoną liczbę punktów, Na ekranie powinien znowu pojawić się napis START GAME, gdyby chciał Gracz zagrać ponownie. INNE ?? tutaj jest miejsce na dalszy rozwój gry - dla Ciebie oraz Twojej kreatywności :).

516
Eлектронна книга

Svelte with Test-Driven Development. Advance your skills and write effective automated tests with Vitest, Playwright, and Cucumber.js

Daniel Irvine

Svelte is a popular front-end framework used for its focus on performance and user-friendliness, and test-driven development (TDD) is a powerful approach that helps in creating automated tests before writing code. By combining them, you can create efficient, maintainable code for modern applications. Svelte with Test-Driven Development will help you learn effective automated testing practices to build and maintain Svelte applications.In the first part of the book, you’ll find a guided walkthrough on building a SvelteKit application using the TDD workflow. You’ll uncover the main concepts for writing effective unit test cases and practical advice for developing solid, maintainable test suites that can speed up application development while remaining effective as the application evolves. In the next part of the book, you’ll focus on refactoring and advanced test techniques, such as using component mocks and writing BDD-style tests with the Cucumber.js framework. In the final part of the book, you’ll explore how to test complex application and framework features, including authentication, Svelte stores, and service workers.By the end of this book, you’ll be well-equipped to build test-driven Svelte applications by employing theoretical and practical knowledge.

517
Eлектронна книга

SvelteKit Up and Running. Leverage the power of a next-generation web framework to build high-performance web apps with ease

Dylan Hildenbrand

The JavaScript ecosystem has grown vast, complex, and daunting for newcomers. Fortunately, SvelteKit has emerged, simplifying the process of building JavaScript-based web applications. This book aims to demystify SvelteKit, making it as approachable as it makes web app development.With SvelteKit Up and Running you’ll be introduced to the philosophy and technologies underlying SvelteKit. First, you’ll follow a standard educational programming approach, progressing to a 'Hello World' application. Next, you’ll explore the fundamental routing techniques, data loading management, and user submission, all through real-world scenarios commonly encountered in day-to-day development, before discovering various adapters employed by SvelteKit to seamlessly integrate with diverse environments. You’ll also delve into advanced concepts like dynamic route management, error handling, and leveraging SvelteKit to optimize SEO and accessibility.By the end of this book, you’ll have mastered SvelteKit and will be well-equipped to navigate the complexities of web app development.

518
Eлектронна книга

Swift 2 By Example. Click here to enter text

Giordano Scalzo

Swift is no longer the unripe language it was when launched by Apple at WWDC14, now it’s a powerful and ready-for-production programming language that has empowered most new released apps.Swift is a user-friendly language with a smooth learning curve; it is safe, robust, and really flexible.Swift 2 is more powerful than ever; it introduces new ways to solve old problems, more robust error handling, and a new programming paradigm that favours composition over inheritance.Swift 2 by Example is a fast-paced, practical guide to help you learn how to develop iOS apps using Swift. Through the development of seven different iOS apps and one server app, you’ll find out how to use either the right feature of the language or the right tool to solve a given problem.We begin by introducing you to the latest features of Swift 2, further kick-starting your app development journey by building a guessing game app, followed by a memory game. It doesn’t end there, with a few more apps in store for you: a to-do list, a beautiful weather app, two games: Flappy Swift and Cube Runner, and finally an ecommerce app to top everything off. By the end of the book, you’ll be able to build well-designed apps, effectively use AutoLayout, develop videogames, and build server apps.

519
Eлектронна книга

Swift 3 New Features. Get up to date with what`s new in Swift 3

Keith Elliott

Since Swift was introduced by Apple in WWDC 2015, it has gone on to become one of the most beloved languages to develop iOS applications with. In the new version, the Swift team aimed to take its adoption to the next level by making it available for new platforms and audiences.This book will very quickly get you up to speed and productive with Swift 3. You will begin by understanding the process of submitting new feature requests for future versions of Swift. Swift 3 allows you to develop and run your applications on a Linux machine. Using this feature, you will write your first Linux application using the debugger in Linux. Using Swift migrator, you will initiate a conversion from Swift 2.2 to Swift 3. Further on, you will learn how to interact with Cocoa libraries when importing Objective C to Swift. You will explore the function and operator changes new to Swift 3, followed by Collection and Closure changes. You will also see the changes in Swift 3 that allow you write tests easier with XCTest and debug your running code better with new formats as well. Finally, you will have a running server written completely in Swift on a Linux box.By the end of the book, you will know everything you need to know to dive into Swift 3 and build successful projects.

520
Eлектронна книга

Swift Data Structure and Algorithms. Implement Swift structures and algorithms natively

Erik Azar, Mario Eguiluz Alebicto

Apple’s Swift language has expressive features that are familiar to those working with modern functional languages, but also provides backward support for Objective-C and Apple’s legacy frameworks. These features are attracting many new developers to start creating applications for OS X and iOS using Swift. Designing an application to scale while processing large amounts of data or provide fast and efficient searching can be complex, especially running on mobile devices with limited memory and bandwidth. Learning about best practices and knowing how to select the best data structure and algorithm in Swift is crucial to the success of your application and will help ensure your application is a success. That’s what this book will teach you.Starting at the beginning, this book will cover the basic data structures and Swift types, and introduce asymptotic analysis. You’ll learn about the standard library collections and bridging between Swift and Objective-C collections. You will see how to implement advanced data structures, sort algorithms, work with trees, advanced searching methods, use graphs, and performance and algorithm efficiency. You’ll also see how to choose the perfect algorithm for your problem.

521
Eлектронна книга

Swift: Developing iOS Applications. Developing iOS Applications

Jon Hoffman, Andrew J Wagner, Giordano Scalzo

The Swift––Developing iOS Applications course will take you on a journey to become an efficient iOS and OS X developer, with the latest trending topic in town. Right from the basics to the advanced level topics, this course would cover everything in detail. We’ll embark our journey by dividing the learning path into four modules. Each of these modules are a mini course in their own right; and as you complete each one, you’ll gain key skills and be ready for the material in the next module.The first module is like a step-by-step guide to programming in Swift 2. Each topic is separated into compressible sections that are full of practical examples and easy-to-understand explanations. Each section builds on the previous topics, so you can develop a proficient and comprehensive understanding of app development in Swift 2. By the end of this module, you’ll have a basic understanding of Swift 2 and its functionalities.The second module will be the an easy-to-follow guide filled with tutorials to show you how to build real-world apps. The difficulty and complexity level increases chapter by chapter. Each chapter is dedicated to build a new app, beginning from a basic and unstyled app through to a full 3D game. The last two chapters show you how to build a complete client-server e-commerce app right from scratch. By the end of these modules, you’ll be able to build well-designed apps, effectively use AutoLayout, develop videogames, and build server apps.The third and the last module of our course will take an example-based approach where each concept covered is supported by example code to not only give you a good understanding of the concept, but also to demonstrate how to properly implement it.

522
Eлектронна книга

Swift Essentials. Discover how to build iOS and watchOS applications in Swift 2 using Xcode - Second Edition

Alex Blewitt

Swift was considered one of the biggest innovations last year, and certainly with Swift 2 announced at WWDC in 2015, this segment of the developer space will continue to be hot and dominating. This is a fast-paced guide to provide an overview of Swift programming and then walks you through in detail how to write iOS applications. Progress through chapters on custom views, networking, parsing and build a complete application as a Git repository, all by using Swift as the core language

523
Eлектронна книга

Systems Engineering Demystified. Apply modern, model-based systems engineering techniques to build complex systems - Second Edition

Jon Holt, Tim Weilkiens

Systems engineering helps in developing and describing complex systems. Written by an internationally-recognized systems engineering expert, this updated edition provides insight into elements to consider when designing a complex system that is robust and successful.The latest edition covers the new approaches of Model-Based Systems Engineering (MBSE) and its deployment techniques using the Trinity approach. You will learn about the system engineering life cycle and processes to implement. Effective systems can be built only when the system is designed with close attention to detail, meaning each aspect of the system is recognized and understood before the system is built. The book explains in great detail, different system models and visualization techniques, with a focus on SysML, to help you visualize a system in the design phase. You will also learn various verification and validation techniques to ensure your system design is ready to be implemented. The book ends with key management processes, systems engineering best practices, and guidelines, with a new section on effective approaches based on the author’s impressive 30 years of experience in the field.By the end of this systems engineering book, you'll be able to apply modern model-based systems engineering techniques to your own systems and projects.

524
Eлектронна книга

Systemy reaktywne. Wzorce projektowe i ich stosowanie

Roland Kuhn Dr., Brian Hanafee, Jamie Allen

Systemy reaktywne. Wzorce projektowe i ich stosowanie Uznane duże aplikacje internetowe, takie jak portale społecznościowe, systemy bankowe czy handlowe, działają szybko i niezawodnie. Muszą radzić sobie nawet wtedy, gdy ich niektóre części ulegną awarii. Nie mogą zawieść, gdy będzie z nich korzystać większa liczba użytkowników niż zwykle. Naturalnie, muszą być odporne na różne zagrożenia, a oprócz tego skalowalne i łatwe w rozbudowie. Tym i wielu innym wymaganiom odpowiadają systemy responsywne — które bez względu na okoliczności sprawnie przetwarzają dane wprowadzane przez użytkowników. Pomyślne wdrożenie systemu reaktywnego wymaga jednak nieco innego spojrzenia na tworzenie oprogramowania. Jakie cechy wyrózniają system reaktywny? O tym mówi tzw. Manifest reaktywny i jego podstawowe 4 postulaty: responsywność - system musi reagować na interakcje użytkowników, niezawodność - system musi reagować na awarie i być dostępny non stop, elastyczność - system musi reagować na zmieniające się obciążenie, sterowanie za pomocą komunikatów - system musi reagować na wprowadzane dane. Niniejsza książka jest wyczerpującym wprowadzeniem do implementacji systemów reaktywnych. Opisano tu filozofię programowania reaktywnego, zasady projektowania aplikacji, wzorce projektowe i ich zastosowanie. Szczegółowo wyjaśniono, jakie problemy można rozwiązywać w ten sposób, a podane przykłady opatrzono pełnymi kodami źródłowymi. Bazując na postulatach Manifestu reaktywnego, przedstawiono metodykę budowy architektury modułowej, zasady tworzenia komunikatów, które sterują tą architekturą, opisano też potrzebne narzędzia i sposób ich wykorzystania. Nie zabrakło informacji o dobrych praktykach programowania i testowaniu aplikacji. Na pewno do lektury przyda Ci się znajomość podstawowych zagadnień programistycznych i pewne doświadczenie w pracy z systemami rozproszonymi. Najważniejsze zagadnienia w książce: manifest reaktywny i jego postulaty hierarchia modułów i przepływy danych programowanie funkcyjne i reaktywne obsługa awarii wzorce projektowe i ich stosowanie Systemy reaktywne — odpowiedź na wyzwania naszych czasów! Dr Roland Kuhn jest ekspertem w dziedzinie rozproszonych systemów obliczeniowych. Obronił doktorat w instytucie CERN w Szwajcarii. Później pracował dla Niemieckiej Agencji Kosmicznej. Obecnie tworzy systemy reaktywne. Brian Hanafee jest głównym architektem systemów w Wells Fargo Bank. Wcześniej tworzył nowe produkty dla Oracle i pisał oprogramowanie do systemów wizyjnych montowanych w hełmach pilotów samolotów wojskowych. Jamie Allen jest programistą i architektem oprogramowania. Pracuje jako dyrektor techniczny projektu platformy handlowej UCP w Starbucks. Od 2008 r. tworzy w języku Scala reaktywne aplikacje dla klientów na całym świecie.

525
Eлектронна книга

Szacowanie oprogramowania Kulisy czarnej magii. Dla praktyków

Steve McConnell

Książka ta nie tylko uczy sztuki szacowania, ale zmienia całkowicie sposób myślenia o tworzeniu oprogramowania. Powinna stać na półce każdego zawodowego programisty. Eric Freeman, współautor książki Head First Design Patterns Dziewięć dziesiątych menedżerów oprogramowania nadal uważa, że szacowanie powinno odbywać się metodą przyjąć to, co podpowiada instynkt i pomnożyć przez trzy. Ta wspaniała książka była od dawna potrzebna i dobrze, że się ukazała. Joel Spolsky, autor joelonsoftware.com Wreszcie jest książka pełna jasnych wskazówek, które mówią, jak programiści i menedżerowie mogą skutecznie dokonywać oszacowania. Scott Berkun, autor książki Art of Project Management Szacowanie oprogramowania, często określane mianem czarnej magii ze względu na swoją złożoność i niepewność, nie jest wcale tak trudne i zagadkowe, jak niektórzy uważają. W rzeczywistości generowanie oszacowania jest naturalne gdy już wiadomo, jak to robić. W tej bardzo oczekiwanej książce, jej ceniony autor Steve McConnell odkrywa tajemnice skutecznego szacowania oprogramowania zamieniając wiedzę naukową i zdobyte doświadczenia w praktyczny przewodnik dla specjalistów od programowania. Zamiast niezrozumiałego traktatu i sztywnych technik modelowania jest to przewodnik oferujący zbiór sprawdzonych procedur, zrozumiałe wzory i metody heurystyczne, które pojedynczy programiści i ich zespoły mogą stosować w swoich projektach w celu poprawy skuteczności szacowania.

526
Eлектронна книга

Sztuka kodowania. Sekrety wielkich programistów

Peter Seibel

Zajrzyj bezkarnie programiście przez ramię! Czym naprawdę jest programowanie? Jak swoją przygodę rozpoczynali wielcy tej branży? Czy istnieje bezbłędny program? Programiści to tajemnicze osoby, które potrafią zmusić komputery do wykonywania karkołomnych zadań, wymyślanych przez zwykłych użytkowników. Spędzają cały dzień przed komputerem, a ich świat to monitor, klawiatura i hektolitry kawy. Czy to prawda? Na to pytanie odpowiada książka, którą trzymasz w rękach. Dzięki niej spojrzysz na ten zawód z zupełnie innego punktu widzenia. Jej autor przeprowadza wywiady z najbardziej rozpoznawalnymi osobami z tej branży. Mówią one o swoich pierwszych krokach w świecie programowania, opowiadają, jak nauczyły się swojego pierwszego języka oraz jak widzą tę gałąź wiedzy w przyszłości. Czym naprawdę jest programowanie? Rzemiosłem, sztuką, a może nauką? Te pytania stawia autor we wprowadzeniu i ma nadzieję, że wypowiedzi jego gości choć trochę zbliżą go do znalezienia odpowiedzi. Ta unikalna książka pozwoli Ci poznać bliżej wybitne osoby, od lat związane z informatyką. Anegdoty, ciekawe opowieści, wiele przykładów to tylko niektóre z proponowanych przez nią atrakcji. Zagłębiając się w kolejne wypowiedzi, przekonasz się, jak często przypadek decyduje o sukcesie lub porażce. W trakcie lektury będziesz mieć okazję zapoznać się z wypowiedziami takich sław, jak: Jamie Zawinski — wybitny programista Lisp, pracujący przy pierwszych wersjach przeglądarki Netscape Brad Fitzpatrick — najmłodsza osoba w gronie, programista "od zawsze" Douglas Crockford — starszy architekt JavaScript w Yahoo!; pomysłodawca formatu JSON Brendan Eich — twórca języka JavaScript Joshua Bloch — szef Java Architect w Google; w trakcie pracy w Sun Microsystem był kierownikiem zespołu projektującego i implementującego Java Collections Framework Joe Armstrong — autor języka programowania Erlang Simon Peyton Jones — rozpoczął projekt, którego efektem było powstanie języka Haskell Peter Norvig — dyrektor działu badań w Google, wcześniej pracujący dla NASA Guy Steele — znawca języków; Cobol, Fortran, PDP-10, Java, Haskell to tylko niektóre z jego repertuaru Dan Ingalls — współtwórca języka Smalltalk L. Peter Deutsch — programista od końca lat pięćdziesiątych; zaczynał w wieku jedenastu lat Ken Thompson — współtwórca systemu UNIX Fran Allen — przez czterdzieści pięć lat pracował dla firmy IBM; instruktor języka Fortran Bernie Cosell — współautor oprogramowania wykorzystywanego w pierwszych węzłach sieci ARPANET Donald Knuth — autor jedynego najprawdopodobniej bezbłędnego programu — TeX Poznaj tajemny świat programistów, hakerów i wybitnych specjalistów!

527
Eлектронна книга

Tablice informatyczne. Wzorce projektowe

Magdalena Gunia

Wzorce projektowe bez tajemnic! Odkryj najlepsze z używanych obecnie wzorców projektowych Dowiedz się, jaki wzorzec zastosować w konkretnym przypadku Naucz się właściwie wykorzystywać dany wzorzec w praktyce Wzorce projektowe ułatwiają tworzenie dobrego oprogramowania, umożliwiają unikanie typowych błędów i stanowią sprawdzone rozwiązania problemów informatycznych, z którymi ktoś kiedyś miał już do czynienia. Korzysta się z nich w celu zapewnienia wysokiej jakości wynikowego kodu i elastyczności rozwiązania programistycznego oraz skrócenia czasu jego tworzenia. Jeśli nie chcesz wymyślać koła na nowo i nie masz zamiaru podejmować beznadziejnego trudu zrobienia tego lepiej niż tysiące osób przed Tobą, wzorce projektowe są właśnie dla Ciebie! Stosuj je w codziennej pracy, korzystając z praktycznej ściągi, zawierającej najpotrzebniejsze informacje o najbardziej przydatnych wzorcach, dzięki którym Twoje programy będą spełniały branżowe standardy! Wzorce konstrukcyjne, strukturalne i operacyjne Zależności występujące między wzorcami Przeznaczenie i implementacja poszczególnych wzorców Zastosowanie wzorców projektowych w praktyce Tablice informatyczne — cała wiedza pod ręką!

528
Eлектронна книга

TDD. Programowanie w Javie sterowane testami

Viktor Farcic, Alex Garcia

Programowanie sterowane testami (ang. test-driven development — TDD) nie jest nową metodyką. Jej praktyczne zastosowanie pozwala na rozwiązanie wielu problemów związanych z procesami rozwijania i wdrażania oprogramowania. Mimo ogromnych zalet, programowanie sterowane testami nie jest zbyt popularne wśród programistów. Wynika to z tego, że techniki TDD nie są łatwe do opanowania. Choć teoretyczne podstawy wydają się logiczne i zrozumiałe, nabranie wprawy w stosowaniu TDD wymaga długiej praktyki. Książka, którą trzymasz w ręce, została napisana przez programistów dla programistów. Jej celem jest przekazanie podstaw TDD i omówienie najważniejszych praktyk związanych z tą metodyką, a przede wszystkim — nauczenie praktycznego stosowania TDD w pracy. Autorzy nie ukrywają, że nabranie biegłości w takim programowaniu wymaga sporo wysiłku, jednak korzyści płynące z metodyki TDD są znaczne: skrócenie czasu wprowadzania produktów na rynek, łatwiejsza refaktoryzacja, a także wyższa jakość tworzonych projektów. Z tą książką dogłębnie zrozumiesz metodykę TDD i uzyskasz wystarczającą pewność siebie, by z powodzeniem stosować to podejście w trakcie programowania aplikacji w Javie. Dzięki tej książce: Nauczysz się podstaw metodyki TDD Poznasz potrzebne narzędzia, platformy i środowiska wraz ze szczegółami ich konfiguracji Wykonywasz praktyczne ćwiczenia i stopniowo wdrożysz się w TDD Poznasz proces „czerwone, zielone, refaktoryzacja” Dowiesz się, jak pisać testy jednostkowe wykonywane w izolacji od reszty kodu Dowiesz się, jak tworzyć prosty i łatwy w konserwacji kod, nauczysz się refaktoryzować już istniejący Nauczysz się pracować z atrapami, stosować programowanie sterowane zachowaniami, a także udostępniać połowicznie ukończone funkcje w środowisku produkcyjnym za pomocą przełączników funkcji Programowanie sterowane testami to metodyka dla prawdziwych profesjonalistów!