Programowanie
Rozwijanie mikrousług w Pythonie. Budowa, testowanie, instalacja i skalowanie
Tarek Ziade
Rozwijanie mikrousług w Pythonie. Budowa, testowanie, instalacja i skalowanie Mikrousługi są bardzo ciekawym trendem tworzenia kodu. Pojawił się on kilka lat temu z uwagi na potrzebę przyspieszenia cyklu udostępniania oprogramowania. Nowe produkty i funkcje musiały być oferowane użytkownikom możliwie najszybciej. Wkrótce okazało się, że tworzenie architektury aplikacji składającej się z małych, funkcjonalnych jednostek - właśnie mikrousług - jest bardzo obiecującym sposobem pracy. Pozwala na zwiększenie się elastyczności oraz szybkości wprowadzania innowacji, gdyż programista może zająć się jednym elementem bez zastanawiania się nad całością aplikacji. W świecie, w którym rządzą wydajność i krótki czas dostarczania kodu, jest to duża wartość! Dzięki tej książce dowiesz się, w jaki sposób niewielkie, standardowe elementy kodu mogą złożyć się na kompletną, działającą aplikację. Nauczysz się tworzyć takie mikrousługi, rozwiązywać pojawiające się problemy i nabierzesz nawyku stosowania dobrych praktyk. Szybko zaczniesz pisać aplikacje w Pythonie za pomocą szerokiego wachlarza dostępnych narzędzi, włączając w to Flask czy Tox. Przy okazji nauczysz się zasad programowania zorientowanego na testy. Dowiesz się, jak zabezpieczać komunikację pomiędzy usługami i kodować funkcjonalności zapory aplikacyjnej w języku Lua dla serwera Nginx. Poznasz też możliwości instalowania mikrousług w chmurze AWS z wykorzystaniem kontenerów Docker. W tej książce między innymi: mikrousługi i ich rola w tworzeniu nowoczesnych aplikacji WWW cykl tworzenia kodu pod kątem testów i ciągłej integracji monitorowanie i zabezpieczanie mikrousług tworzenie mikrousług w JavaScript budowa mikrousług niezależnie od operatorów chmurowych i technologii wirtualizacyjnych unikanie problemów wynikających z centralizacji aplikacji Mikrousługi w języku Python: integracja doskonała!
Rozwijanie mikrousług w Pythonie. Budowa, testowanie, instalacja i skalowanie
Tarek Ziade
Rozwijanie mikrousług w Pythonie. Budowa, testowanie, instalacja i skalowanie Mikrousługi są bardzo ciekawym trendem tworzenia kodu. Pojawił się on kilka lat temu z uwagi na potrzebę przyspieszenia cyklu udostępniania oprogramowania. Nowe produkty i funkcje musiały być oferowane użytkownikom możliwie najszybciej. Wkrótce okazało się, że tworzenie architektury aplikacji składającej się z małych, funkcjonalnych jednostek - właśnie mikrousług - jest bardzo obiecującym sposobem pracy. Pozwala na zwiększenie się elastyczności oraz szybkości wprowadzania innowacji, gdyż programista może zająć się jednym elementem bez zastanawiania się nad całością aplikacji. W świecie, w którym rządzą wydajność i krótki czas dostarczania kodu, jest to duża wartość! Dzięki tej książce dowiesz się, w jaki sposób niewielkie, standardowe elementy kodu mogą złożyć się na kompletną, działającą aplikację. Nauczysz się tworzyć takie mikrousługi, rozwiązywać pojawiające się problemy i nabierzesz nawyku stosowania dobrych praktyk. Szybko zaczniesz pisać aplikacje w Pythonie za pomocą szerokiego wachlarza dostępnych narzędzi, włączając w to Flask czy Tox. Przy okazji nauczysz się zasad programowania zorientowanego na testy. Dowiesz się, jak zabezpieczać komunikację pomiędzy usługami i kodować funkcjonalności zapory aplikacyjnej w języku Lua dla serwera Nginx. Poznasz też możliwości instalowania mikrousług w chmurze AWS z wykorzystaniem kontenerów Docker. W tej książce między innymi: mikrousługi i ich rola w tworzeniu nowoczesnych aplikacji WWW cykl tworzenia kodu pod kątem testów i ciągłej integracji monitorowanie i zabezpieczanie mikrousług tworzenie mikrousług w JavaScript budowa mikrousług niezależnie od operatorów chmurowych i technologii wirtualizacyjnych unikanie problemów wynikających z centralizacji aplikacji Mikrousługi w języku Python: integracja doskonała!
Róża, a co chcesz wiedzieć? Komiks edukacyjny o technologiach dla dzieci
Artur Kurasiński,Nikola Kucharska,Radosław Kulesza,Sebastian Langa,Dawid Leśniakiewicz,Piotr Pełka,...
Nauki ścisłe, technologia i fajne gadżety elektroniczne nie są tylko dla dorosłych. Razem z Różą zdobywaj wiedzę o świecie technologii — smartfonach, grach i mediach społecznościowych. Czy wiesz, jak napisać grę komputerową? Jak używać poczty internetowej? Jak działa sieć komputerowa? Jak bezpiecznie korzystać z mediów społecznościowych? Czy naszą pracę będą wkrótce wykonywać roboty, a po drogach poruszać się wyłącznie pojazdy autonomiczne? Czym jest sztuczna inteligencja? Co sprawia, że możemy korzystać z telefonów komórkowych? Na te i wiele innych pytań znajdziesz odpowiedzi w tej książce! Róża przeżywa przygody, uczy się i jest ciekawa świata — zupełnie jak Ty! Róża chodzi do szkoły podstawowej, dużo mówi i zadaje jeszcze więcej pytań, bo interesuje się tym, co ją otacza. Wraz z jej najbliższą rodziną i przyjaciółmi odkryjesz tajemnice cyfrowego świata. Dowiesz się, jak tworzy się programy komputerowe, poznasz zasady bezpiecznego korzystania z sieci, mediów społecznościowych i gier wideo oraz przekonasz się, że nowoczesnych technologii wcale nie trzeba się bać. A przy okazji nauczysz się programować w Scratchu! Naucz się programować Poznaj serwisy społecznościowe Dowiedz się, jak działa internet Zadbaj o bezpieczeństwo w sieci Nie bój się nowoczesnych technologii Twój pierwszy komiksowy podręcznik programowania! --- Programowanie jest nie tylko umiejętnością związaną z porozumiewaniem się i tworzeniem programów komputerowych. To umiejętność niezbędna do tego, by poruszać się naturalnie w świecie przyszłości. Artur Kurasiński Naszą misją jest sprawianie, aby sektor nowych technologii był zróżnicowany tak, aby zróżnicowanie naszego społeczeństwa było odzwierciedlone w produktach i usługach, które się tworzy. A żeby to nastapiło, bakcylem i pasją programowania trzeba zarażać już od najmłodszych lat. Małgorzata Ratajska-Grandin, Geek Girls Carrots ---
RS 232C - praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera. Wydanie III
Andrzej Daniluk
Na uczelniach, w szkołach i biurach pojawia się coraz więcej zaawansowanych urządzeń komputerowych podłączanych przez port szeregowy. Czy koniecznie trzeba płacić wysokie stawki informatykom, aby wykorzystać pełnię możliwości tych nowoczesnych narzędzi? Na szczęście nie. Obsługa transmisji szeregowej przy użyciu standardu RS 232C może być na tyle łatwa, że uczniowie, studenci, nauczyciele, pracownicy naukowi czy inżynierowie mogą samodzielnie tworzyć potrzebne im oprogramowanie. Dzięki książce "RS 232C -- praktyczne programowanie. Od Pascala i C++ do Delphi i Buildera. Wydanie III" także i Ty szybko nauczysz się pisać programy sterujące urządzeniami podłączanymi przez port szeregowy. Dowiesz się, jak działa transmisja asynchroniczna oraz czym jest standard RS 232C. Poznasz interfejs RS 232C dla systemu Windows i nauczysz się go używać w środowiskach programistycznych Builder i Delphi, co pozwoli Ci pisać potrzebne oprogramowanie w języku Pascal lub C++. Najnowsze, poprawione wydanie zawiera jeszcze więcej przykładów, dzięki którym błyskawicznie będziesz mógł sprawdzić nabytą wiedzę w praktyce. Standard RS 232C Transmisja asynchroniczna Obsługa RS 232C w systemach MS-DOS i Windows Wykorzystanie elementów interfejsu Windows API w środowiskach Builder i Delphi Testowanie programów do obsługi transmisji szeregowej Tworzenie aplikacji wielowątkowych Narzędzia graficzne Przykładowe aplikacje i ich analiza Specyfikacje najważniejszych funkcji
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.
Michael Fitzgerald
Podręczny zestaw informacji niezbędnych w pracy programisty Ruby to obiektowy język programowania, opracowany w 1995 roku w Japonii. Dzięki swojej prostej składni, zwartej konstrukcji i sporym możliwościom błyskawicznie zyskał ogromne grono zwolenników. Pojawienie się mechanizmu Ruby on Rails, niesamowicie usprawniającego tworzenie aplikacji i witryn internetowych zgodnych z nurtem Web 2.0, dodatkowo zwiększyło popularność języka Ruby. W oparciu o ten język powstało wiele znanych serwisów WWW, odwiedzanych każdego dnia przez tysiące gości. "Ruby. Leksykon kieszonkowy" to zestawienie niezbędnych informacji o tym języku, przydatne podczas codziennej pracy programisty. Znajdziesz w nim informacje o słowach kluczowych, operatorach, zmiennych i stałych. Przeczytasz także o formatowaniu tekstu, wyrażeniach regularnych, operacjach na plikach i programowaniu obiektowym. Dowiesz się ponadto, jak korzystać z interaktywnego Ruby i RDoc. Uruchamianie interpretera Ruby Słowa kluczowe Zmienne Instrukcje warunkowe Programowanie obiektowe Moduły Operacje na plikach Obsługa wyjątków Metody klas Array, Hash, Object, Kernel i String Wyszukiwanie i usuwanie błędów Usprawnij i przyspiesz swoją pracę, korzystając z leksykonów kieszonkowych.
Ruby on Rails. Wprowadzenie. Wydanie II
Bruce Tate, Lance Carlson, Curt Hibbs
Poznaj Ruby on Rails i twórz potężne aplikacje internetowe w zaledwie kilka dni Jak budować dynamiczne strony, nastawione na użytkownika? Jak rozwiązać problemy z wydajnością baz danych? Jak sprawnie i efektywnie korzystać z platformy Ruby on Rails? Dlaczego masz wybrać Ruby on Rails? Głównie dlatego, że jest to wyjątkowe narzędzie, które umożliwia budowę aplikacji internetowych każdego typu (w tym portali społecznościowych, witryn e-commerce, oprogramowania do zarządzania oraz tworzenia statystyk) w zaledwie kilka dni! A to wszystko dzięki Rails -- doskonale wyposażonemu frameworkowi do tworzenia aplikacji internetowych opartych o bazy danych -- który oferuje środowisko z wykorzystaniem języka Ruby. Zaś ten język programowania charakteryzuje się niezwykłym połączeniem cech: jest równocześnie prosty, elegancki i elastyczny, co pozwala dowolnie modyfikować jego części. Książka "Ruby on Rails. Wprowadzenie. Wydanie II" zawiera szczegółowe porady i wskazówki dotyczące instalacji oraz korzystania z Rails 2.1, a także języka skryptowego Ruby. W podręczniku znajdziesz nie tylko wyjaśnienia odnośnie sposobu działania Rails, ale również opis kompletnej aplikacji. Dzięki temu przewodnikowi dowiesz się, w jaki sposób współpracują ze sobą wszystkie aplikacje tworzące szkielet Rails, a ponadto nauczysz się sprawnie korzystać z dokumentacji oprogramowania i tworzyć zaawansowane aplikacje znacznie szybciej niż dotychczas. Uruchamianie i organizacja Rails Budowanie widoku Rusztowania, REST i ścieżki Klasy złożone Rozbudowywanie widoków Zarządzanie układem strony Arkusze stylów Tworzenie własnych funkcji pomocniczych Testowanie i debugowanie Tworzenie nowej aplikacji Rails Wyczerpujące i przyjazne wprowadzenie w Ruby on Rails.
David Flanagan, Yukihiro Matsumoto
Poznaj możliwości Ruby! Dlaczego Ruby zdobył tak dużą popularność? Jak wykorzystać wyrażenia regularne w tym języku? Jak tworzyć w Ruby aplikacje sieciowe? Zaprojektowany i stworzony w 1995 roku język Ruby dzięki swym unikalnym możliwościom zdobywa sobie coraz większe uznanie programistów na całym świecie. Jak udało mu się wkupić w łaski tego nieufnego środowiska? Przyczyniła się do tego między innymi prosta składnia z wbudowanymi w nią wyrażeniami regularnymi, automatyczne oczyszczanie pamięci i przeciążanie operatorów. Dodatkowo ogromna i chętna do pomocy społeczność sprawia, że to rozwiązanie staje się jeszcze bardziej atrakcyjne. Uwaga! Jednym z autorów tej książki jest sam Yukihiro Matsumoto - twórca języka Ruby! Książka stanowi kompletny zbiór informacji na temat języka Ruby. Jeśli naprawdę chcesz zrozumieć ten język, oto obowiązkowa pozycja do przeczytania! W trakcie lektury zapoznasz się z bogatym API, pozwalającym na przetwarzanie tekstu; zrozumiesz techniki związane z wykonywaniem działań na liczbach, implementacją kolekcji, operacjami wejścia-wyjścia oraz pracą współbieżną i operacjami sieciowymi. Ponadto znajdziesz tu elementy dostępne powszechnie w językach programowania, takie jak instrukcje warunkowe, pętle czy też operatory logiczne. Dzięki książce "Ruby. Programowanie" wykorzystanie metod i obiektów klasy Proc oraz stosowanie platformy Ruby nie będzie stanowiło dla Ciebie najmniejszego problemu! Wprowadzenie do języka Ruby Sposoby uruchamiania programów napisanych w Ruby Dostępne typy danych Zastosowanie wyrażeń i operatorów Sterowanie przepływem Wykorzystanie iteratorów oraz enumeratorów Obsługa wyjątków Zastosowanie współbieżności Użycie domknięć Cykl życia obiektów Refleksje oraz metaprogramowanie Liczby w Ruby Używanie wyrażeń regularnych Kolekcje Operacje na dacie i godzinie Tablice jedno- oraz wielowymiarowe Obsługa plików oraz katalogów Programowanie sieciowe Obsługa środowiska Ruby Gwarancja bezpieczeństwa Wykorzystaj elastyczność i możliwości języka Ruby!
Ruby. Przewodnik programisty. Wydanie II
David A. Black
Jest to właściwy moment dla języka Ruby! Zapewnia on takie możliwości jak język Java lub C++, a ponadto oferuje funkcje dynamiczne, które umożliwiają tworzonemu kodowi reagowanie w odpowiedni sposób na zmiany w środowisku wykonawczym. Ponieważ język Ruby wyróżnia elegancja, tworzenie aplikacji, narzędzi programistycznych oraz skryptów administracyjnych jest łatwiejsze i bardziej zrozumiałe. Wraz z długo oczekiwaną wersją 2., aktywną społecznością programistów oraz niezliczonymi bibliotekami i narzędziami, język Ruby podąża własną drogą rozwoju. Poznaj kluczowe pojęcia związane z językiem Ruby. W kolejnych rozdziałach znajdziesz istotne informacje na temat składni, dostępnych elementów oraz typowych konstrukcji. Ponadto zobaczysz, jak korzystać z obiektów, metod i zmiennych, oraz nauczysz się budować właściwą strukturę Twojego projektu. Po opanowaniu podstaw będziesz swobodnie tworzył proste programy oraz przejdziesz do zaawansowanych tematów związanych z technikami przepływu sterowania, wbudowanymi elementami, kolekcjami oraz wyrażeniami regularnymi. Ta książka jest doskonałym podręcznikiem dla wszystkich osób chcących nauczyć się języka Ruby i wykorzystać jego potencjał w kolejnych projektach. Dzięki tej książce: poznasz składnię języka Ruby zrozumiesz filozofię stojącą za tym językiem opanujesz techniki programowania obiektowego wykorzystasz potencjał języka Ruby Poznaj i wykorzystaj jego możliwości języka Ruby!
Lucas Carlson, Leonard Richardson
Zbiór gotowych rozwiązań dla programistów używających języka Ruby Jak przetwarzać pliki XML i HTML? Jak wykorzystywać środowisko Ruby on Rails? W jaki sposób łączyć Ruby z technologią AJAX? Korzystasz w pracy z języka Ruby i zastanawiasz się, czy niektóre zadania programistyczne można wykonać szybciej? Chcesz poznać zasady programowania obiektowego w Ruby? A może interesuje Cię framework Ruby on Rails? Język Ruby zdobywa coraz większą popularność, jest wykorzystywany do tworzenia aplikacji sieciowych i stał się podstawą środowiska Ruby on Rails. Jednak nawet najlepszy język programowania nie uwalnia programistów od żmudnego realizowania zadań, które nie mają zbyt wiele wspólnego z tworzeniem aplikacji, czyli usuwania błędów, implementowania typowych algorytmów, poszukiwania rozwiązań mniej lub bardziej typowych problemów i wielu innych. Książka "Ruby. Receptury" znacznie przyspieszy Twoją pracę. Znajdziesz tu kilkaset praktycznych rozwiązań problemów wraz z przejrzystym komentarzem oraz tysiące wierszy proponowanego kodu, który będziesz mógł wykorzystać w swoich projektach. Przeczytasz o strukturach danych, algorytmach, przetwarzaniu plików XML i HTML, tworzeniu interfejsów użytkownika dla aplikacji i połączeniach z bazami danych. Nauczysz się generować i obrabiać pliki graficzne, korzystać z usług sieciowych, wyszukiwać i usuwać błędy w aplikacjach, a także pisać skrypty niezwykle pomocne w administrowaniu systemem operacyjnym Linux. Przetwarzanie danych tekstowych i liczbowych Operacje na tablicach Praca z systemem plików Programowanie obiektowe Przetwarzanie dokumentów XML i HTML oraz plików graficznych Generowanie plików PDF Połączenie z bazami danych Korzystanie z poczty elektronicznej, protokołu telnet i połączeń Torrent Projektowanie aplikacji internetowych za pomocą Ruby on Rails Stosowanie usług sieciowych Optymalizacja aplikacji Tworzenie wersji dystrybucyjnych Automatyzacja zadań z wykorzystaniem języka Rake Budowanie interfejsów użytkownika Jeśli chcesz rozwiązać problem, skorzystaj z gotowej receptury -- koło już wynaleziono.
Michael Fitzgerald
Poznaj praktyczne zastosowania języka Ruby Podstawowe konstrukcje języka i zasady programowania obiektowego Operacje na tekstach, liczbach i plikach Framework Ruby on Rails Ruby -- obiektowy język programowania, względnie nowy, bo opracowany na początku lat 90. ubiegłego wieku, zdobywa coraz większą popularność. W zakresie tworzenia aplikacji internetowych staje się poważną konkurencją dla Perla, PHP i Javy. Jest niezwykle elastyczny, posiada prostą składnię i spore możliwości, a tworzony w nim kod jest bardzo zwarty. Za pomocą Ruby można pisać zarówno proste skrypty administracyjne, jak i rozbudowane aplikacje internetowe. W budowaniu tych ostatnich niezwykle pomocny jest framework Ruby on Rails, dzięki któremu proces tworzenia aplikacji przebiega błyskawicznie. Książka "Ruby. Wprowadzenie" to podręcznik dla tych, którzy chcą poznać możliwości języka bez konieczności studiowania zawiłych opisów teoretycznych. Przedstawia Ruby na praktycznych przykładach, pokazując jego zastosowania w typowych zadaniach, z jakimi spotyka się na co dzień programista aplikacji sieciowych. Czytając tę książkę, poznasz elementy języka Ruby i nauczysz się programować obiektowo. Dowiesz się, w jaki sposób przetwarzać dane liczbowe, teksty i tablice, pliki i katalogi oraz dokumenty XML. Przeczytasz także o środowisku Ruby on Rails. Instalacja języka Ruby w różnych systemach operacyjnych Instrukcje i operatory Przetwarzanie tekstów i operacje matematyczne Operacje na systemie plików Korzystanie z plików XML Programowanie obiektowe Wprowadzenie do Ruby on Raili Wejdź do świata Ruby, a pokochasz jego możliwości!
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.
Ivo Balbaert
Rust is the new, open source, fast, and safe systems programming language for the 21st century, developed at Mozilla Research, and with a steadily growing community. It was created to solve the dilemma between high-level, slow code with minimal control over the system, and low-level, fast code with maximum system control. It is no longer necessary to learn C/C++ to develop resource intensive and low-level systems applications. This book will give you a head start to solve systems programming and application tasks with Rust.We start off with an argumentation of Rust's unique place in today's landscape of programming languages. You'll install Rust and learn how to work with its package manager Cargo. The various concepts are introduced step by step: variables, types, functions, and control structures to lay the groundwork. Then we explore more structured data such as strings, arrays, and enums, and you’ll see how pattern matching works.Throughout all this, we stress the unique ways of reasoning that the Rust compiler uses to produce safe code. Next we look at Rust's specific way of error handling, and the overall importance of traits in Rust code. The pillar of memory safety is treated in depth as we explore the various pointer kinds. Next, you’ll see how macros can simplify code generation, and how to compose bigger projects with modules and crates. Finally, you’ll discover how we can write safe concurrent code in Rust and interface with C programs, get a view of the Rust ecosystem, and explore the use of the standard library.
Ivo Balbaert
Rust is the new, open source, fast, and safe systems programming language for the 21st century, developed at Mozilla Research, and with a steadily growing community. It was created to solve the dilemma between high-level, slow code with minimal control over the system, and low-level, fast code with maximum system control. It is no longer necessary to learn C/C++ to develop resource intensive and low-level systems applications. This book will give you a head start to solve systems programming and application tasks with Rust.We start off with an argumentation of Rust's unique place in today's landscape of programming languages. You'll install Rust and learn how to work with its package manager Cargo. The various concepts are introduced step by step: variables, types, functions, and control structures to lay the groundwork. Then we explore more structured data such as strings, arrays, and enums, and you’ll see how pattern matching works.Throughout all this, we stress the unique ways of reasoning that the Rust compiler uses to produce safe code. Next we look at Rust's specific way of error handling, and the overall importance of traits in Rust code. The pillar of memory safety is treated in depth as we explore the various pointer kinds. Next, you’ll see how macros can simplify code generation, and how to compose bigger projects with modules and crates. Finally, you’ll discover how we can write safe concurrent code in Rust and interface with C programs, get a view of the Rust ecosystem, and explore the use of the standard library.
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.
Rust High Performance. Learn to skyrocket the performance of your Rust applications
Iban Eguia Moraza
This book teaches you how to optimize the performance of your Rust code so that it is at the same level as languages such as C/C++. You'll understand and fi x common pitfalls, learn how to improve your productivity by using metaprogramming, and speed up your code. You will master the features of the language, which will make you stand out, and use them to greatly improve the efficiency of your algorithms. The book begins with an introduction to help you identify bottlenecks when programming in Rust. We highlight common performance pitfalls, along with strategies to detect and resolve these issues early. We move on to mastering Rust's type system, which will enable us to optimize both performance and safety at compile time. You will learn how to effectively manage memory in Rust, mastering the borrow checker. We move on to measuring performance and you will see how this affects the way you write code. Moving forward, you will perform metaprogramming in Rust to boost the performance of your code and your productivity. Finally, you will learn parallel programming in Rust, which enables efficient and faster execution by using multithreading and asynchronous programming.
Rust High Performance. Learn to skyrocket the performance of your Rust applications
Iban Eguia Moraza
This book teaches you how to optimize the performance of your Rust code so that it is at the same level as languages such as C/C++. You'll understand and fi x common pitfalls, learn how to improve your productivity by using metaprogramming, and speed up your code. You will master the features of the language, which will make you stand out, and use them to greatly improve the efficiency of your algorithms. The book begins with an introduction to help you identify bottlenecks when programming in Rust. We highlight common performance pitfalls, along with strategies to detect and resolve these issues early. We move on to mastering Rust's type system, which will enable us to optimize both performance and safety at compile time. You will learn how to effectively manage memory in Rust, mastering the borrow checker. We move on to measuring performance and you will see how this affects the way you write code. Moving forward, you will perform metaprogramming in Rust to boost the performance of your code and your productivity. Finally, you will learn parallel programming in Rust, which enables efficient and faster execution by using multithreading and asynchronous programming.
Guillaume Gomez, Antoni Boucher
Rust is an open source, safe, concurrent, practical language created by Mozilla. It runs blazingly fast, prevents segfaults, and guarantees safety. This book gets you started with essential software development by guiding you through the different aspects of Rust programming. With this approach, you can bridge the gap between learning and implementing immediately. Beginning with an introduction to Rust, you’ll learn the basic aspects such as its syntax, data types, functions, generics, control flows, and more. After this, you’ll jump straight into building your first project, a Tetris game. Next you’ll build a graphical music player and work with fast, reliable networking software using Tokio, the scalable and productive asynchronous IO Rust library. Over the course of this book, you’ll explore various features of Rust Programming including its SDL features, event loop, File I/O, and the famous GTK+ widget toolkit. Through these projects, you’ll see how well Rust performs in terms of concurrency—including parallelism, reliability, improved performance, generics, macros, and thread safety. We’ll also cover some asynchronous and reactive programming aspects of Rust.By the end of the book, you’ll be comfortable building various real-world applications in Rust.
Guillaume Gomez, Antoni Boucher
Rust is an open source, safe, concurrent, practical language created by Mozilla. It runs blazingly fast, prevents segfaults, and guarantees safety. This book gets you started with essential software development by guiding you through the different aspects of Rust programming. With this approach, you can bridge the gap between learning and implementing immediately. Beginning with an introduction to Rust, you’ll learn the basic aspects such as its syntax, data types, functions, generics, control flows, and more. After this, you’ll jump straight into building your first project, a Tetris game. Next you’ll build a graphical music player and work with fast, reliable networking software using Tokio, the scalable and productive asynchronous IO Rust library. Over the course of this book, you’ll explore various features of Rust Programming including its SDL features, event loop, File I/O, and the famous GTK+ widget toolkit. Through these projects, you’ll see how well Rust performs in terms of concurrency—including parallelism, reliability, improved performance, generics, macros, and thread safety. We’ll also cover some asynchronous and reactive programming aspects of Rust.By the end of the book, you’ll be comfortable building various real-world applications in Rust.
Claus Matzinger
Rust 2018, Rust's first major milestone since version 1.0, brings more advancement in the Rust language. The Rust Programming Cookbook is a practical guide to help you overcome challenges when writing Rust code.This Rust book covers recipes for configuring Rust for different environments and architectural designs, and provides solutions to practical problems. It will also take you through Rust's core concepts, enabling you to create efficient, high-performance applications that use features such as zero-cost abstractions and improved memory management. As you progress, you'll delve into more advanced topics, including channels and actors, for building scalable, production-grade applications, and even get to grips with error handling, macros, and modularization to write maintainable code. You will then learn how to overcome common roadblocks when using Rust for systems programming, IoT, web development, and network programming. Finally, you'll discover what Rust 2018 has to offer for embedded programmers. By the end of the book, you'll have learned how to build fast and safe applications and services using Rust.
Claus Matzinger
Rust 2018, Rust's first major milestone since version 1.0, brings more advancement in the Rust language. The Rust Programming Cookbook is a practical guide to help you overcome challenges when writing Rust code.This Rust book covers recipes for configuring Rust for different environments and architectural designs, and provides solutions to practical problems. It will also take you through Rust's core concepts, enabling you to create efficient, high-performance applications that use features such as zero-cost abstractions and improved memory management. As you progress, you'll delve into more advanced topics, including channels and actors, for building scalable, production-grade applications, and even get to grips with error handling, macros, and modularization to write maintainable code. You will then learn how to overcome common roadblocks when using Rust for systems programming, IoT, web development, and network programming. Finally, you'll discover what Rust 2018 has to offer for embedded programmers. By the end of the book, you'll have learned how to build fast and safe applications and services using Rust.
Rust Standard Library Cookbook. Over 75 recipes to leverage the power of Rust
Jan Hohenheim, Daniel Durante
Mozilla’s Rust is gaining much attention with amazing features and a powerful library. This book will take you through varied recipes to teach you how to leverage the Standard library to implement efficient solutions.The book begins with a brief look at the basic modules of the Standard library and collections. From here, the recipes will cover packages that support file/directory handling and interaction through parsing. You will learn about packages related to advanced data structures, error handling, and networking. You will also learn to work with futures and experimental nightly features. The book also covers the most relevant external crates in Rust. By the end of the book, you will be proficient at using the Rust Standard library.
Rust Standard Library Cookbook. Over 75 recipes to leverage the power of Rust
Jan Hohenheim, Daniel Durante
Mozilla’s Rust is gaining much attention with amazing features and a powerful library. This book will take you through varied recipes to teach you how to leverage the Standard library to implement efficient solutions.The book begins with a brief look at the basic modules of the Standard library and collections. From here, the recipes will cover packages that support file/directory handling and interaction through parsing. You will learn about packages related to advanced data structures, error handling, and networking. You will also learn to work with futures and experimental nightly features. The book also covers the most relevant external crates in Rust. By the end of the book, you will be proficient at using the Rust Standard library.
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.
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.
Karuna Murti
Looking for a fast, powerful, and intuitive framework to build web applications? This Rust book will help you kickstart your web development journey and take your Rust programming skills to the next level as you uncover the power of Rocket - a fast, flexible, and fun framework powered by Rust.Rust Web Development with Rocket wastes no time in getting you up to speed with what Rust is and how to use it. You’ll discover what makes it so productive and reliable, eventually mastering all of the concepts you need to play with the Rocket framework while developing a wide set of web development skills. Throughout this book, you'll be able to walk through a hands-on project, covering everything that goes into making advanced web applications, and get to grips with the ins and outs of Rocket development, including error handling, Rust vectors, and wrappers. You'll also learn how to use synchronous and asynchronous programming to improve application performance and make processing user content easy.By the end of the book, you'll have answers to all your questions about creating a web application using the Rust language and the Rocket web framework.
Karuna Murti
Looking for a fast, powerful, and intuitive framework to build web applications? This Rust book will help you kickstart your web development journey and take your Rust programming skills to the next level as you uncover the power of Rocket - a fast, flexible, and fun framework powered by Rust.Rust Web Development with Rocket wastes no time in getting you up to speed with what Rust is and how to use it. You’ll discover what makes it so productive and reliable, eventually mastering all of the concepts you need to play with the Rocket framework while developing a wide set of web development skills. Throughout this book, you'll be able to walk through a hands-on project, covering everything that goes into making advanced web applications, and get to grips with the ins and outs of Rocket development, including error handling, Rust vectors, and wrappers. You'll also learn how to use synchronous and asynchronous programming to improve application performance and make processing user content easy.By the end of the book, you'll have answers to all your questions about creating a web application using the Rust language and the Rocket web framework.
Karuna Murti
Looking for a fast, powerful, and intuitive framework to build web applications? This Rust book will help you kickstart your web development journey and take your Rust programming skills to the next level as you uncover the power of Rocket - a fast, flexible, and fun framework powered by Rust.Rust Web Development with Rocket wastes no time in getting you up to speed with what Rust is and how to use it. You’ll discover what makes it so productive and reliable, eventually mastering all of the concepts you need to play with the Rocket framework while developing a wide set of web development skills. Throughout this book, you'll be able to walk through a hands-on project, covering everything that goes into making advanced web applications, and get to grips with the ins and outs of Rocket development, including error handling, Rust vectors, and wrappers. You'll also learn how to use synchronous and asynchronous programming to improve application performance and make processing user content easy.By the end of the book, you'll have answers to all your questions about creating a web application using the Rust language and the Rocket web framework.
Maxwell Flitton
Are safety and high performance a big concern for you while developing web applications?While most programming languages have a safety or speed trade-off, Rust provides memory safety without using a garbage collector. This means that with its low memory footprint, you can build high-performance and secure web apps with relative ease.This book will take you through each stage of the web development process, showing you how to combine Rust and modern web development principles to build supercharged web apps.You'll start with an introduction to Rust and understand how to avoid common pitfalls when migrating from traditional dynamic programming languages. The book will show you how to structure Rust code for a project that spans multiple pages and modules. Next, you'll explore the Actix Web framework and get a basic web server up and running. As you advance, you'll learn how to process JSON requests and display data from the web app via HTML, CSS, and JavaScript. You'll also be able to persist data and create RESTful services in Rust. Later, you'll build an automated deployment process for the app on an AWS EC2 instance and Docker Hub. Finally, you'll play around with some popular web frameworks in Rust and compare them.By the end of this Rust book, you'll be able to confidently create scalable and fast web applications with Rust.
Maxwell Flitton
Are safety and high performance a big concern for you while developing web applications?While most programming languages have a safety or speed trade-off, Rust provides memory safety without using a garbage collector. This means that with its low memory footprint, you can build high-performance and secure web apps with relative ease.This book will take you through each stage of the web development process, showing you how to combine Rust and modern web development principles to build supercharged web apps.You'll start with an introduction to Rust and understand how to avoid common pitfalls when migrating from traditional dynamic programming languages. The book will show you how to structure Rust code for a project that spans multiple pages and modules. Next, you'll explore the Actix Web framework and get a basic web server up and running. As you advance, you'll learn how to process JSON requests and display data from the web app via HTML, CSS, and JavaScript. You'll also be able to persist data and create RESTful services in Rust. Later, you'll build an automated deployment process for the app on an AWS EC2 instance and Docker Hub. Finally, you'll play around with some popular web frameworks in Rust and compare them.By the end of this Rust book, you'll be able to confidently create scalable and fast web applications with 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.
Rzemiosło w czystej formie. Standardy i etyka rzetelnych programistów
Robert C. Martin
Rzemieślnik to osoba, która jest starannie wyszkolona, doskonale zna się na swoim fachu i czuje dumę z własnej pracy. Zawsze zachowuje właściwą dla zawodu godność i profesjonalizm. Społeczeństwo okazuje zaufanie rzemieślnikom, wierząc, że należycie dbają o wysoką jakość i postępują etycznie. Pisanie oprogramowania to też rzemiosło. I programiści, podobnie jak inni rzemieślnicy, również chcą czuć dumę i satysfakcję ze swojej pracy. Problem w tym, że świat zdaje się dziś wymagać od nich przede wszystkim produktywności, a nie wysokiej jakości kodu. W tej książce znajdziesz zasady definiujące rzemiosło, jakim jest wytwarzanie oprogramowania. Zebrano w niej procedury, standardy i normy etyczne, dzięki którym tworzony kod będzie niezawodny i efektywny, a całe oprogramowanie stanie się powodem do dumy. Zawarto tutaj szereg pragmatycznych wskazówek dotyczących procedur programistycznego rzemiosła. Omówiono też standardy, co powinno ułatwić zrozumienie oczekiwań wobec programistów. Ważnym zagadnieniem jest etyczny kontekst zawodu programisty, czyli fundamentalne zobowiązania, które programiści powinni podjąć względem swojego otoczenia i siebie samych. Istotą rzemiosła programistycznego bowiem jest tworzenie kodu, który budzi zaufanie użytkowników i całych społeczności. Najciekawsze zagadnienia: czym jest prawdziwe rzemiosło programistyczne pięć podstaw: programowanie sterowane testami, refaktoryzacja, prostota projektu, programowanie zespołowe i testy akceptacyjne produktywność, jakość i odwaga w zespołach programistów czym w rzeczywistości jest uczciwość i praca zespołowa dziesięć zobowiązań profesjonalnego programisty Szczyć się swoją pracą i utrzymuj wysoki standard!