Techniki programowania
Ben Frain
Tablets, smart phones and even televisions are being used increasingly to view the web. There's never been a greater range of screen sizes and associated user experiences to consider. Web pages built to be responsive provide the best possible version of their content to match the viewing devices of not just today's devices but tomorrow's too.Learn how to design websites according to the new responsive designù methodology, allowing a website to display beautifully on every screen size. Follow along, building and enhancing a responsive web design with HTML5 and CSS3. The book provides a practical understanding of these new technologies and techniques that are set to be the future of front-end web development. Starting with a static Photoshop composite, create a website with HTML5 and CSS3 which is flexible depending on the viewer's screen size.With HTML5, pages are leaner and more semantic. A fluid grid design and CSS3 media queries means designs can flex and adapt for any screen size. Beautiful backgrounds, box-shadows and animations will be added ñ all using the power, simplicity and flexibility of CSS3.Responsive web design with HTML5 and CSS3 provides the necessary knowledge to ensure your projects won't just be built right for today but also the future.
REST. Najlepsze praktyki i wzorce w języku Java
Bhakti Mehta
Usprawnij wymianę danych z usługą REST! Postępująca cyfryzacja współczesnego świata wymaga coraz większej integracji przeróżnych systemów informatycznych. Nierzadko są to systemy znajdujące się w odległych lokalizacjach, napisane z wykorzystaniem różnych języków programowania i technologii. Jak zapewnić możliwość wymiany informacji między nimi? Usługi typu REST to jeden z najwygodniejszych sposobów! Co to jest REST? Jak przygotować usługę tego typu? Jak ustrzec się przed błędami? Na te i wiele innych pytań odpowiada ta książka. Znajdziesz w niej najlepsze praktyki tworzenia usług REST z wykorzystaniem języka Java. Sięgnij po nią i dowiedz się, jak projektować zasoby i zapewniać im bezpieczeństwo oraz w jaki sposób przygotowywać usługi REST dla różnych wersji językowych. Odkryj, jak testować udostępnione zasoby i zagwarantować ich najwyższą wydajność oraz jaka przyszłość czeka usługi tego typu. Sprawdź też, jak wygląda API takich usług, jak GitHub, Twitter i Facebook (API Graph). Ta książka jest doskonałą lekturą dla wszystkich programistów chcących bezproblemowo tworzyć wydajne usługi typu REST. Tematy opisane w książce: Tworzenie usług typu RESTful przy użyciu API JAX-RS 2.0 Zaawansowane techniki wykorzystania protokołu OAuth i zabezpieczeń w usługach typu RESTful Metody buforowania, weryfikacji danych, ograniczania liczby żądań, asynchronicznego wykonywania działań oraz najlepsze praktyki pozwalające zwiększyć interaktywność aplikacji Najlepsze metody stronicowania, dokumentowania i testowania usług typu RESTful HATEOAS i architektura mikrousługowa w budowanie aplikacji wykorzystujących usługi typu RESTful Przyszłość technologii REST, nowe standardy i sposób ich wykorzystania przez różne przedsiębiorstwa Porównanie technologii WebHook, WebSocket oraz Server-Sent Events umożliwiających dostarczanie informacji klientom na bieżąco Wydajne usługi REST w Twoim zasięgu!
Valentin Bojinov
In this era of cloud computing, every data provisioning solution is built in a scalable and fail-safe way. Thus, when building RESTful services, the right choice for the underlying platform is vital. Node.js, with its asynchronous, event-driven architecture, is exactly the right choice to build RESTful APIs.This book will help you enrich your development skills to create scalable, server-side, RESTful applications based on the Node.js platform.Starting with the fundamentals of REST, you will understand why RESTful web services are better data provisioning solution than other technologies. You will start setting upa development environment by installing Node.js, Express.js, and other modules. Next, you will write a simple HTTP request handler and create and test Node.js modules using automated tests and mock objects. You will then have to choose the most appropriate data storage type, having options between a key/value or document data store, and also you will implement automated tests for it. This module will evolve chapter by chapter until it turns into a full-fledged and secure Restful service.
Jobinesh Purushothaman
REST (REpresentational State Transfer) is a simple yet powerful software architecture style to create scalable web services and allow them to be simple, lightweight, and fast. The REST API uses HTTP and JSON, so that it can be used with many programming languages such as Ruby, Java, Python, and Scala. Its use in Java seems to be the most popular though, because of the API's reusability.This book is a guide to developing RESTful web services in Java using the popular RESTful framework APIs available today. You will begin with gaining an in-depth knowledge of the RESTful software architectural style and its relevance in modern applications. Further, you will understand the APIs to parse, generate, transform, and query JSON effectively. Then, you will see how to build a simple RESTful service using the popular JAX-RS 2.0 API along with some real-world examples. This book will introduce you to the Jersey framework API, which is used to simplify your web services.You will also see how to secure your services with various authentication mechanisms. You will get to grips with various solutions to describe, produce, consume, and visualize RESTful web services. Finally, you will see how to design your web services to equip them for the future technological advances, be it Cloud or mobile computing.By the end of this book, you will be able to efficiently build robust, scalable, and secure RESTful web services, making use of the JAX-RS and Jersey framework extensions.
Mani Tadayon
This book will teach you how to use RSpec to write high-value tests for real-world code. We start with the key concepts of the unit and testability, followed by hands-on exploration of key features. From the beginning, we learn how to integrate tests into the overall development process to help create high-quality code, avoiding the dangers of testing for its own sake.We build up sample applications and their corresponding tests step by step, from simple beginnings to more sophisticated versions that include databases and external web services. We devote three chapters to web applications with rich JavaScript user interfaces, building one from the ground up using behavior-driven development (BDD) and test-driven development (TDD).The code examples are detailed enough to be realistic while simple enough to be easily understood. Testing concepts, development methodologies, and engineering tradeoffs are discussed in detail as they arise. This approach is designed to foster the reader’s ability to make well-informed decisions on their own.
Andrea Cirillo
The requirement of handling complex datasets, performing unprecedented statistical analysis, and providing real-time visualizations to businesses has concerned statisticians and analysts across the globe. RStudio is a useful and powerful tool for statistical analysis that harnesses the power of R for computational statistics, visualization, and data science, in an integrated development environment.This book is a collection of recipes that will help you learn and understand RStudio features so that you can effectively perform statistical analysis and reporting, code editing, and R development. The first few chapters will teach you how to set up your own data analysis project in RStudio, acquire data from different data sources, and manipulate and clean data for analysis and visualization purposes. You'll get hands-on with various data visualization methods using ggplot2, and you will create interactive and multidimensional visualizations with D3.js. Additional recipes will help you optimize your code; implement various statistical models to manage large datasets; perform text analysis and predictive analysis; and master time series analysis, machine learning, forecasting; and so on. In the final few chapters, you'll learn how to create reports from your analytical application with the full range of static and dynamic reporting tools that are available in RStudio so that you can effectively communicate results and even transform them into interactive web applications.
Abhishek Nalwaya, Akshat Paul
RubyMotion is a revolutionary toolchain for iOS app development. With RubyMotion, you can quickly develop and test native iOS apps for the iPhone and iPad, combining the expressiveness and simplicity of Ruby with the power of the iOS SDK.RubyMotion iOS Development Essentials is a hands-on guide for developing iOS apps using RubyMotion. With RubyMotion, you can eliminate the complexity and confusion associated with the development of iOS applications using Objective-C.We'll begin from scratch. Starting by installing RubyMotion, we'll build ourselves up to developing an app that uses the various device capabilities iOS has to offer. What's more, we'll even learn how to launch your app on the App Store!We'll also learn to use iOS SDK classes to create application views. Discover how to use the camera, geolocation, gestures, and other device capabilities to create engaging, interactive apps. We'll develop stunning user interfaces faster with the XCode interface builder and make web apps by using WebView. We'll then augment applications with RubyMotion gems, doing more by writing less code and learn how to write test cases for RubyMotion projects. Finally, we'll understand the app submission process to push your app to Apple's App StoreWith RubyMotion iOS Development Essentials, we will learn how to create iOS apps with ease. At the end of each chapter we will have a tangible and running app, which utilizes the concepts we have learnt in that chapter.
Akhil Sharma
Before Rust, blockchain developers didn’t have a systems programming language that was type-safe, fast, and, at the same time, had stable and easy memory management. Rust proved to be a boon for developers and works as the perfect solution for not only blockchain and protocol development but also dApp development.Rust for Blockchain Application Development focuses on demonstrating solutions that can help blockchain developers productize decentralized applications using Rust, which is a complex language with a steep learning curve.This book starts with basic Rust language concepts and then builds on these concepts to enable you to develop your own blockchain from scratch. As you progress, you’ll learn how to build dApps on popular chains like Solana and NEAR. You’ll also be guided through creating Ethereum dApps using Foundry (Rust). Finally, you’ll develop a custom blockchain using Substrate by Parity (Polkadot). The book provides a complete 360-degree view of Rust in the blockchain ecosystem.By the end of this Rust book, you’ll have a thorough understanding of how to apply your Rust knowledge to building dApps and blockchains from scratch.
Rust for C++ Developers. Leverage your C++ expertise to write safer and faster systems code in Rust
Dan Olson
If you're a C++ programmer curious about the rising popularity of Rust, this book will guide you through the transition with clarity and purpose. Written by a veteran C++ developer who embraced Rust to improve software quality and maintainability, this hands-on guide shows you how to apply your existing knowledge to build efficient and safe systems with Rust.The first half of the book deep dives into Rust’s history, safety guarantees, and development tooling. From there, the book compares Rust and C++ side by side, covering syntax, SIMD instructions, file I/O, object orientation, and data structures. With each chapter, you’ll gain a practical understanding of Rust’s unique approaches—like ownership and borrowing—and how they solve long-standing challenges in C++.Later half of the book tackles performance optimization, multithreading, macros, and foreign function interfaces, culminating in a complete project where you reimplement a C++ program in Rust. By focusing on real-world code and familiar concepts, this book makes Rust accessible and actionable for experienced C++ developers.By the end of Rust for C++ Developers, you’ll be confident in your ability to read, write, and maintain production-grade Rust code, and you’ll have a clear roadmap for integrating Rust into your future projects.
Rheinwerk Publishing, Inc, Nouman Azam
This book begins by introducing the core concepts of Rust programming, starting with installation, writing basic programs, and understanding variables, data types, and functions. It covers Rust’s unique ownership system, which is central to the language, explaining how borrowing and memory management work to ensure safety and efficiency. Basic control flow concepts like conditionals and loops are also explored, providing a solid foundation for beginners.As the book progresses, more advanced topics are introduced, such as structs, enums, and collections, which allow for the creation of flexible and efficient data structures. Rust’s powerful memory management features, including smart pointers, lifetimes, and borrowing, are discussed in detail. Readers will also dive into functional programming aspects like closures, iterators, and function pointers, which enhance the flexibility and expressiveness of Rust code.The final chapters focus on concurrency and advanced topics such as macros and web programming. Readers will learn how to handle multithreading in Rust, work with asynchronous programming, and build web servers. Practical problems at the end help reinforce the concepts learned, providing readers with the tools to solve real-world challenges efficiently using Rust.
Nikola Mitrović , Santosh Yadav
Building modern web applications that are responsive and resilient is essential in this rapidly evolving digital world. Imagine effortlessly managing complex data streams and creating seamless user experiences—this book helps you do just that by adopting RxJS to boost your development skills and transform your approach to reactive programming.Written by a seasoned software engineer and consultant with a decade of industry experience, this book equips you to harness the power of RxJS techniques, patterns, and operators tailored for real-world scenarios. Each chapter is filled with practical recipes designed to tackle a variety of challenges, from managing side effects and ensuring error resiliency in client applications to developing real-time chat applications and event-driven microservices. You’ll learn how to integrate RxJS with popular frameworks, such as Angular and NestJS, gaining insights into modern web development practices that enhance performance and interactivity.By the end of this book, you’ll have mastered reactive programming principles, the RxJS library, and working with Observables, while crafting code that reacts to changes in data and events in a declarative and asynchronous way.
Rob Cowell, Lars Malmqvist
Rob Cowell is a Salesforce DevOps Advocate with extensive experience as a Salesforce Developer and Architect, guiding best practices for Salesforce DevOps. Lars Malmqvist, a 32x certified Salesforce CTA, has 15 years of experience building advanced Salesforce solutions and is the author of two books, Architecting AI Solutions on Salesforce and Salesforce Anti-Patterns. As the Salesforce Platform evolves, architects face increasing demand for advanced solutions. This book serves as your definitive guide to mastering effective DevOps practices crucial for successful Salesforce projects. Beginning with cultivating a DevOps mindset focused on collaboration and communication, it emphasizes governance, visibility, and accountability. You'll delve into tools and techniques, leveraging the robust capabilities of SFDX to craft your strategy efficiently. This book stands out for its practical approach to Salesforce packaging and CI/CD stack creation, guiding you to build a seamless automated change delivery system with freely available software. It addresses critical operational concerns such as ticket management, backups, change monitoring, and data seeding. In the final chapters, you'll discover third-party solutions to expedite your Salesforce DevOps journey, empowering you to deliver sophisticated and efficient projects.
Bass Jobsen
Sass and Compass Designer's Cookbook helps you to get most out of CSS3 and harness its benefits to create engaging and receptive applications. This book will help you develop faster and reduce the maintenance time for your web development projects by using Sass and Compass. You will learn how to use with CSS frameworks such as Bootstrap and Foundation and understand how to use other libraries of pre-built mixins. You will also learn setting up a development environment with Gulp. This book guides you through all the concepts and gives you practical examples for full understanding.
Pascal Bugnion
Scala is a multi-paradigm programming language (it supports both object-oriented and functional programming) and scripting language used to build applications for the JVM. Languages such as R, Python, Java, and so on are mostly used for data science. It is particularly good at analyzing large sets of data without any significant impact on performance and thus Scala is being adopted by many developers and data scientists. Data scientists might be aware that building applications that are truly scalable is hard. Scala, with its powerful functional libraries for interacting with databases and building scalable frameworks will give you the tools to construct robust data pipelines.This book will introduce you to the libraries for ingesting, storing, manipulating, processing, and visualizing data in Scala.Packed with real-world examples and interesting data sets, this book will teach you to ingest data from flat files and web APIs and store it in a SQL or NoSQL database. It will show you how to design scalable architectures to process and modelling your data, starting from simple concurrency constructs such as parallel collections and futures, through to actor systems and Apache Spark. As well as Scala’s emphasis on functional structures and immutability, you will learn how to use the right parallel construct for the job at hand, minimizing development time without compromising scalability. Finally, you will learn how to build beautiful interactive visualizations using web frameworks.This book gives tutorials on some of the most common Scala libraries for data science, allowing you to quickly get up to speed with building data science and data engineering solutions.
Scala Functional Programming Patterns. Grok and perform effective functional programming in Scala
Atul S. Khot
Scala is used to construct elegant class hierarchies for maximum code reuse and extensibility and to implement their behavior using higher-order functions. Its functional programming (FP) features are a boon to help you design “easy to reason about” systems to control the growing software complexities. Knowing how and where to apply the many Scala techniques is challenging. Looking at Scala best practices in the context of what you already know helps you grasp these concepts quickly, and helps you see where and why to use them. This book begins with the rationale behind patterns to help you understand where and why each pattern is applied. You will discover what tail recursion brings to your table and will get an understanding of how to create solutions without mutations. We then explain the concept of memorization and infinite sequences for on-demand computation. Further, the book takes you through Scala’s stackable traits and dependency injection, a popular technique to produce loosely-coupled software systems.You will also explore how to currying favors to your code and how to simplify it by de-construction via pattern matching. We also show you how to do pipeline transformations using higher order functions such as the pipes and filters pattern. Then we guide you through the increasing importance of concurrent programming and the pitfalls of traditional code concurrency. Lastly, the book takes a paradigm shift to show you the different techniques that functional programming brings to your plate.This book is an invaluable source to help you understand and perform functional programming and solve common programming problems using Scala’s programming patterns.
Scala Test-Driven Development. Write clean scala code that works
Gaurav Sood
Test-driven development (TDD) produces high-quality applications in less time than is possible with traditional methods. Due to the systematic nature of TDD, the application is tested in individual units as well as cumulatively, right from the design stage, to ensure optimum performance and reduced debugging costs. This step-by-step guide shows you how to use the principles of TDD and built-in Scala testing modules to write clean and fully tested Scala code and give your workflow the change it needs to let you create better applications than ever before. After an introduction to TDD, you will learn the basics of ScalaTest, one of the most flexible and most popular testing tools around for Scala, by building your first fully test-driven application. Building on from that you will learn about the ScalaTest API and how to refactor code to produce high-quality applications. We’ll teach you the concepts of BDD (Behavior-driven development) and you’ll see how to add functional tests to the existing suite of tests. You’ll be introduced to the concepts of Mocks and Stubs and will learn to increase test coverage using properties. With a concluding chapter on miscellaneous tools, this book will enable you to write better quality code that is easily maintainable and watch your apps change for the better.
Scripting. Automation with Bash, PowerShell, and Python
Rheinwerk Publishing, Inc, Michael Kofler
This comprehensive scripting guide empowers system administrators, developers, and power users to automate repetitive IT tasks across platforms using three major scripting languages: Bash, PowerShell, and Python. The book opens with foundational scripting concepts and showcases what you can accomplish with just ten lines of code. It continues with in-depth chapters on each language, emphasizing syntax, control structures, error handling, and modularity.Readers will explore practical techniques for managing files, parsing text, utilizing regular expressions, and working with JSON, XML, and INI formats. The book dives into job automation with cron and Task Scheduler, secure communication via SSH, and scripting in professional environments with tools like Visual Studio Code and Git.The final section applies scripting to real-world cases, including system backups, image processing, web scraping, API consumption, database interactions, cloud integration, and virtual machine automation. With this book, readers build a strong scripting toolkit to efficiently manage modern IT workflows.
Shaun Mitchell
SDL 2.0 is the latest release of the popular Simple DirectMedia Layer API, which is designed to make life easier for C++ developers, allowing you simple low-level access to various multiplatform audio, graphics, and input devices.SDL Game Development guides you through creating your first 2D game using SDL and C++. It takes a clear and practical approach to SDL game development, ensuring that the focus remains on creating awesome games.Starting with the installation and setup of SDL, you will quickly become familiar with useful SDL features, covering sprites, state management, and OOP, leading to a reusable framework that is extendable for your own games. SDL Game Development culminates in the development of two exciting action games that utilize the created framework along with tips to improve the framework.
Giovanni Galloro, David Dorbin, Richard Seroter, Nathaniel...
Continuous delivery, a cornerstone of modern software engineering, facilitates quick and secure software delivery using a robust toolkit encompassing automated builds, testing, source code management, artifact storage, and deployment. Whether you integrate tools from different providers or use a set of managed services from a single cloud provider, the goal is to streamline setup, integration, and management. This book focuses on continuous delivery on Google Cloud.Starting with an introduction to continuous delivery and secure software supply chain concepts, this book uses hands-on exercises to demonstrate how to continuously test your application with Skaffold and Cloud Code, leverage AI-assisted code generation with Cloud Code and Cloud Workstations, and automate your continuous integration with Cloud Build. You’ll see how to store and scan your software artifacts on Artifact Registry, orchestrate deployments with Cloud Deploy, and release your software on GKE and Cloud Run, configured to admit only trusted code. Using an example application, you’ll implement tools for creating an end-to-end delivery pipeline using Google Cloud services.By the end of this book, you’ll be able to build a secure software delivery pipeline from development to production using Google Cloud managed services and best practices.
Sencha Touch Cookbook. Over 100 recipes for creating cross platform rich media HTML5 apps
Ajit Kumar
Sencha touch is a versatile HTML5-based framework for developing mobile web apps that look and feel native on touch screen devices, and with it you can write your code once and deploy it to both iOS and Android saving you both time and money. The Sencha touch cookbook has a comprehensive selection of recipes covering everything from installation right through to HTML5 geo location. The Sencha Touch Cookbook really is your one stop resource for cross platform HTML5 application development. It covers the basics such as setting up an iOS and Android development environment right through to much more complex development issues such as touch gestures, animation, rich media and geo location. Every recipe is practically focused. Maximum action. Minimum theory.
Sean Amarasinghe
It would be nice to have web apps that work offline and send push notifications. This is now possible with Service Workers, which can add native-like functionality to your web apps without requiring a download. This book will get your mobile and web apps functioning without Internet connectivity, improve performance and network interaction in order to increase the level of availability, and show you how to build performant applications that seamlessly integrate with third-party APIs.We’ll show you how to add Service Worker functionality to web apps and sites, access offline content through basic and advanced techniques, and build powerful interactive system notifications. We’ll also teach you about cache functionality and assets to provide immediate load even over narrow connections. We conclude by giving you various tips to improve app performance, including the background sync technique. By the end of this book, you’ll know build high performing and faster web and mobile applications with Service Workers.
Kyle Hodgson
If you are a .NET developer who is looking for a simpler way to build services, this is the book for you. It will show you how to write fast, maintainable APIs that are a pleasure to use and maintain starting from the database to the client and everything in-between.
SFML Game Development By Example. Create and develop exciting games from start to finish using SFML
Raimondas Pupius
Simple and Fast Multimedia Library (SFML) is a simple interface comprising five modules, namely, the audio, graphics, network, system, and window modules, which help to develop cross-platform media applications. By utilizing the SFML library, you are provided with the ability to craft games quickly and easily, without going through an extensive learning curve. This effectively serves as a confidence booster, as well as a way to delve into the game development process itself, before having to worry about more advanced topics such as “rendering pipelines” or “shaders.”With just an investment of moderate C++ knowledge, this book will guide you all the way through the journey of game development.The book starts by building a clone of the classical snake game where you will learn how to open a window and render a basic sprite, write well-structured code to implement the design of the game, and use the AABB bounding box collision concept.The next game is a simple platformer with enemies, obstacles and a few different stages. Here, we will be creating states that will provide custom application flow and explore the most common yet often overlooked design patterns used in game development.Last but not the least, we will create a small RPG game where we will be using common game design patterns, multiple GUI. elements, advanced graphical features, and sounds and music features. We will also be implementing networking features that will allow other players to join and play together.By the end of the book, you will be an expert in using the SFML library to its full potential.
Jan Haller, Henrik Valter Vogelius, Artur Moreira
Game development comprises the combination of many different aspects such as game logics, graphics, audio, user input, physics and much more. SFML is an Open Source C++ library designed to make game development more accessible, exposing multimedia components to the user through a simple, yet powerful interface.If you are a C++ programmer with a stack of ideas in your head and seeking a platform for implementation, your search ends here.Starting with nothing more than a blank screen, SFML Game Development will provide you with all the guidance you need to create your first fully featured 2D game using SFML 2.0. By the end, you'll have learned the basic principles of game development, including advanced topics such as how to network your game, how to utilize particle systems and much more.SFML Game Development starts with an overview of windows, graphics, and user inputs. After this brief introduction, you will start to get to grips with SFML by building up a world of different game objects, and implementing more and more gameplay features. Eventually, you'll be handling advanced visual effects, audio effects and network programming like an old pro. New concepts are discussed, while the code steadily develops.SFML Game Development will get you started with animations, particle effects and shaders. As well as these fundamental game aspects, we're also covering network programming to the extent where you'll be able to support the game running from two different machines. The most important part, the gameplay implementation with enemies and missiles, will make up the core of our top-scrolling airplane shoot' em-up game!You will learn everything you need in SFML Game Development in order to start with game development and come closer to creating your own game.