Programowanie
Niezależnie czy dopiero rozpoczynacie swoją przygodę z programowaniem, czy jesteście już uznanymi na rynku profesjonalistami, to w kategorii Programowanie na pewno znajdziecie podręczniki, które pomogą Wam w przebiegu pracy, czy też w nauce podstaw programowania.
W książkach z tego działu zawarta jest wiedza zarówno związana z czysto technicznymi sprawami typu składnia języków, ale także z umiejętnościami bardziej "miękkimi" jak obsługa i wykorzystanie pełnych możliwości środowisk programistycznych, czy też projektowanie oprogramowania lub metody numeryczne czy oraz struktury danych.
Eclipse Plug-in Development Beginner's Guide. Extend and customize Eclipse - Second Edition
Alex Blewitt
Eclipse is used by everyone from indie devs to NASA engineers. Its popularity is underpinned by its impressive plug-in ecosystem, which allows it to be extended to meet the needs of whoever is using it. This book shows you how to take full advantage of the Eclipse IDE by building your own useful plug-ins from start to finish.Taking you through the complete process of plug-in development, from packaging to automated testing and deployment, this book is a direct route to quicker, cleaner Java development. It may be for beginners, but we're confident that you'll develop new skills quickly. Pretty soon you'll feel like an expert, in complete control of your IDE.Don't let Eclipse define you - extend it with the plug-ins you need today for smarter, happier, and more effective development.
Perry Lea
The migration of computing to the edge is the logical progression of where computing is performed on a global scale. Edge computing is not a new paradigm but a necessary technology to address issues such as latency, service charges, reliability, connectivity, and privacy. This book walks you through the definition and architecture of edge computing systems and why they are critical in today’s ecosystem of IoT devices and an “everything connected” world.You will start your journey with an introduction to different edge computing hardware platforms, which vary by use case. From there, you’ll explore operating systems and middleware packages that manage edge devices such as Azure IoT. Then, you will explore communication systems such as near-range Bluetooth and RFID as well as long-range systems such as 5G. Networking protocols will be covered, which are the heart of edge systems. Technologies such as MQTT, which make up the backbone of edge to cloud communication, are examined. Then, you will move on to edge applications such as edge predictive AI and federated computing. We wrap up by investigating the security and vulnerability envelope of edge systems.This book is intended to quickly familiarize you with edge systems technologies and use cases, without burdening you with complicated jargon and low-level details.
Sean Howard
The surge in connected edge devices has driven organizations to capitalize on the opportunities presented by the massive amounts of data generated by these devices. However, adapting to this landscape demands significant changes in application architectures.This book serves as your guide to edge computing fundamentals, shedding light on the constraints and risks inherent in selecting solutions within this domain. You’ll explore an extensive suite of edge computing services from AWS, gaining insights into when and how to use AWS Outposts, AWS Wavelength, AWS Local Zones, AWS Snow Family, and AWS IoT Greengrass. With detailed use cases, technical requirements, and architectural patterns, you’ll master the practical implementation of these services and see how they work in real life through step-by-step examples, using the AWS CLI and AWS Management Console. To conclude, you’ll delve into essential security and operational considerations to maximize the value delivered by AWS services.By the end of this book, you'll be ready to design powerful edge computing architectures and handle complex edge computing use cases across multiple AWS services.
Edytory vi i Vim. Leksykon kieszonkowy
Arnold Robbins
Wszystkie funkcje zawsze pod ręką! Jak wygenerować losowy ciąg znaków? Posadzić nowego użytkownika przed vi i kazać mu wyłączyć edytor. To jeden z dowcipów obrazujących specyficzną składnię edytorów vi i Vim. Prawdopodobnie edytory te są trudne dla początkującego użytkownika, ale jeżeli tylko opanujesz ich elementarną obsługę, nie zamienisz ich na nic innego. Oba sprawdzą się idealnie przy edycji różnego rodzaju plików tekstowych - nieważne, czy będzie to plik HTML, PHP czy kod źródłowy Javy. Niezliczona ilość opcji edytorów vi i Vim sprawia, że zapamiętanie ich wszystkich sprawia pewne trudności. Dlatego Arnold Robbins zebrał dla Ciebie najbardziej użyteczne polecenia edytorów vi, Vim i najważniejszych klonów vi (nvi, elvis i vile), a potem skondensował je i przedstawił w formie niewielkiego leksykonu, który sprawdzi się w codziennej pracy. Wykorzystanie wyrażeń regularnych, wyszukiwanie i zamiana tekstu, zarządzanie oknami, funkcje użytkownika, dopełnianie poleceń to tylko niektóre z omówionych elementów. Leksykon ten powinni mieć zawsze pod ręką zarówno zaawansowani, jak i początkujący użytkownicy edytora vi! Opcje wywołania edytora Polecenia i opcje trybu edycyjnego vi Skróty klawiszowe Podstawienia i wyrażenia regularne Inicjalizacja sesji edycji i przywracanie plików Rozszerzona obsługa znaczników i stosu znaczników Polecenia i opcje edytora Vim Wykaz dodatkowych funkcji nvi, vile i elvisa Niezastąpiony przewodnik dla użytkowników edytorów vi i Vim!
Efektywny Kotlin. Najlepsze praktyki
Marcin Moskała
Projektanci Kotlina postawili na pragmatyzm. Oznacza to, że do dziś wszystkie decyzje związane z rozwojem języka są podejmowane z uwzględnieniem potrzeb biznesowych: produktywności, skalowalności, prostej konserwacji, niezawodności i wydajności. Od początku szczególną uwagę zwraca się również na bezpieczeństwo, czytelność, wielokrotne używanie kodu, łatwość użycia narzędzi i możliwości współdziałania z innymi językami. Bardzo ważna okazała się też wydajność zarówno działania kodu, jak i pracy programisty. Konsekwentne przestrzeganie tych założeń dało znakomite efekty. Dziś Kotlin jest świetnym wyborem dla programisty - pod jednym warunkiem: że zna specyfikę języka i korzysta z niego we właściwy sposób. Ta książka jest przeznaczona dla doświadczonych programistów Kotlina, którzy chcą opanować ten język na wysokim poziomie. Wyjaśniono w niej sposoby korzystania ze szczególnych funkcji Kotlina, aby możliwe było uzyskanie bezpiecznego, czytelnego, skalowalnego i wydajnego kodu. Znalazły się w niej informacje o najlepszych praktykach pisania kodu w Kotlinie ze szczególnym uwzględnieniem praktyk wysokiego poziomu, zalecanych przez autorytety i twórców języka. Wyczerpująco omówiono też kwestie związane z właściwościami i typami specyficznymi dla platformy oraz tworzenie języków dziedzinowych, a także klasy i funkcje wewnątrzwierszowe. Jest to praktyczny przewodnik zawierający zbiór wytycznych, których uwzględnienie pozwoli pisać dobry i idiomatyczny kod w Kotlinie. W tej książce między innymi: reguły pisania kodu o wysokiej jakości programowanie dla różnych platform oraz aplikacje mobilne wzorce i konwencje programistyczne konwencje i kontrakty dla programistów wspólnie tworzących projekt zapewnianie wysokiej wydajności aplikacji i bibliotek Kotlin: wydajność, bezpieczeństwo, radość z programowania!
Efektywny Python. 125 sposobów na lepszy kod. Wydanie III
Brett Slatkin
Python cieszy się dużym uznaniem. Jest wszechstronny i efektywny, a przy tym konsekwentnie rozwijany. Język ten ma również wiele trudniejszych do uchwycenia zalet. Aby uzyskać imponujące efekty wydajności kodu, jego wieloplatformowość i bezpieczeństwo, a przy tym w pełni korzystać z możliwości Pythona, potrzebujesz czegoś więcej niż tylko znajomość jego składni. To trzecie, zaktualizowane i uzupełnione wydanie lubianego podręcznika programowania w Pythonie. Zawiera dodatkowe rozdziały dotyczące tak ważnych zagadnień jak algorytmy i struktury danych. Zawarty w książce materiał, w tym słowniki , ułatwi Ci tworzenie solidnego i wydajnego kodu. Znajdziesz tu jasne, zwięzłe i praktyczne rady przeznaczone dla programistów na różnym poziomie zaawansowania. Niezależnie od tego, czy tworzysz aplikacje internetowe, analizujesz dane, czy trenujesz modele sztucznej inteligencji, dzięki temu podręcznikowi zdobędziesz cenne umiejętności pracy z Pythonem! W książce: 125 gotowych do użycia sposobów na lepszy kod uaktualnione najlepsze praktyki, uwzględniające nowości w Pythonie do wersji 3.13 dodatkowe rozdziały poświęcone tworzeniu niezawodnych, wysoko wydajnych programów tworzenie modułów rozszerzeń w języku C współpraca z natywnymi bibliotekami współdzielonymi praktyczne przykłady kodu odzwierciedlające najlepsze praktyki Programujesz w Pythonie? Poznaj 125 sposobów na lepszy kod!
Efektywny Python. 59 sposobów na lepszy kod
Brett Slatkin
Twórz zoptymalizowany i efektywny kod! Python to jeden z najstarszych używanych języków programowania. Co ciekawe, jego nazwa wcale nie pochodzi od zwierzęcia, a od popularnego serialu komediowego. Język ten daje programistom ogromne pole do popisu, a ponadto posiada sporo bibliotek realizujących najbardziej wymyślne zadania. Z uwagi na te atuty rozpoczęcie programowania w tym języku nie powinno przysporzyć Ci większych problemów. Jeżeli jednak chcesz robić to efektywnie, potrzebujesz tej książki. Sięgnij po nią i poznaj 59 sposobów na tworzenie lepszego kodu w Pythonie! W kolejnych rozdziałach znajdziesz bezcenne informacje na temat programowania zgodnego z duchem Pythona, funkcji, klas i dziedziczenia oraz metaklas i atrybutów. Dalsze strony zawierają przydatną wiedzę na temat wątków i współbieżności, wbudowanych modułów oraz sposobów zarządzania kodem. Książka ta sprawdzi się w rękach każdego programisty pracującego w języku Python. Warto ją mieć! W książce poruszono następujące zagadnienia: Podpowiedzi na wszystkich najważniejszych obszarach programowania w Pythonie 3.x i 2.x wraz z dokładnymi objaśnieniami i przykładami. Najlepsze praktyki dotyczące tworzenia funkcji czytelnie wyrażających intencje, promujących wielokrotne użycie tego samego kodu i pomagających uniknąć błędów. Omówienie tematu właściwego wyrażenia zachowania programu za pomocą klas i obiektów. Podpowiedzi pomagające uniknąć pułapek podczas użycia metaklas i atrybutów dynamicznych. Prezentacja znacznie efektywniejszego podejścia w zakresie współbieżności i równoległości. Przedstawienie lepszych technik i sposobów użycia wbudowanych modułów Pythona. Prezentacja narzędzi i najlepszych praktyk stosowanych podczas wspólnej pracy nad projektami. Rozwiązania dotyczące usuwania błędów, testowania i optymalizacji, co prowadzi do poprawy jakości kodu i wydajności jego działania. Poznaj najlepsze praktyki programowania w Pythonie!
Efektywny Python. 90 sposobów na lepszy kod. Wydanie II
Brett Slatkin
Python słusznie cieszy się stale rosnącym uznaniem programistów: jest wszechstronny i efektywny, pozwala też na tworzenie wysokiej jakości oprogramowania. Język ten ma poza tym wiele trudniejszych do uchwycenia zalet. Aby uzyskać naprawdę imponujące efekty w zakresie wydajności kodu, jego przenaszalności i bezpieczeństwa, trzeba zagłębić się w dość subtelne niuanse kodowania. Wielu programistów, choć posiada spore doświadczenie w programowaniu w innych językach, nie dostrzega tych zależności. Z kolei osoby dopiero rozpoczynające przygodę z programowaniem mogą poczuć się zaskoczone i zdezorientowane, jeśli nie zdołają uniknąć kilku nieoczywistych błędów podczas pracy. To drugie, zaktualizowane i uzupełnione wydanie podręcznika programowania w duchu Pythona. Zawarty tu materiał umożliwia wykorzystanie tego języka do tworzenia wyjątkowo solidnego i niezwykle wydajnego kodu źródłowego. Książka jest napisana w zwięzłym stylu i ma przemyślany układ, oparty na scenariuszach, dzięki czemu przystępnie przedstawia 90 najlepszych praktyk, wskazówek i skrótów oraz wyjaśnia ich działanie na rzeczywistych przykładach kodu. Pokazano tu szereg mało znanych, być może nieco dziwnych sztuczek i sposobów udoskonalających pracę kodu źródłowego. Przyswojenie zaprezentowanych tu praktyk pozwoli Ci tworzyć kod łatwy do zrozumienia, obsługi i dalszej rozbudowy. W tym wydaniu treść poszczególnych wskazówek zaktualizowano do Pythona 3, a poszczególne przykłady kodu zostały przejrzane i udoskonalone - najlepsze praktyki również ewoluują! W tej książce: nowe rozwiązania dla wszystkich najważniejszych obszarów programowania w Pythonie techniki stosowania konstrukcji składanych i funkcji generatorów właściwe korzystanie z klas, obiektów, metaklas i atrybutów dynamicznych współbieżność, równoległość, optymalizacja i bezpieczeństwo kodu wbudowane moduły Pythona do debugowania i testowania narzędzia i najlepsze praktyki podczas wspólnej pracy nad projektami Python: elegancja, wydajność i ekspresja kodu!
Burak Serdar
The Go language has been gaining momentum due to its treatment of concurrency as a core language feature, making concurrent programming more accessible than ever. However, concurrency is still an inherently difficult skill to master, since it requires the development of the right mindset to decompose problems into concurrent components correctly. This book will guide you in deepening your understanding of concurrency and show you how to make the most of its advantages.You’ll start by learning what guarantees are offered by the language when running concurrent programs. Through multiple examples, you will see how to use this information to develop concurrent algorithms that run without data races and complete successfully. You’ll also find out all you need to know about multiple common concurrency patterns, such as worker pools, asynchronous pipelines, fan-in/fan-out, scheduling periodic or future tasks, and error and panic handling in goroutines.The central theme of this book is to give you, the developer, an understanding of why concurrent programs behave the way they do, and how they can be used to build correct programs that work the same way in all platforms.By the time you finish the final chapter, you’ll be able to develop, analyze, and troubleshoot concurrent algorithms written in Go.
Yogesh Raheja, Thinknyx Technologies, Giuseppe Borgese, Nathaniel...
The DevOps movement has transformed the way modern tech companies work. Amazon Web Services (AWS), which has been at the forefront of the cloud computing revolution, has also been a key contributor to the DevOps movement, creating a huge range of managed services that help you implement DevOps principles.Effective DevOps with AWS, Second Edition will help you to understand how the most successful tech start-ups launch and scale their services on AWS, and will teach you how you can do the same. This book explains how to treat infrastructure as code, meaning you can bring resources online and offline as easily as you control your software. You will also build a continuous integration and continuous deployment pipeline to keep your app up to date. Once you have gotten to grips will all this, we'll move on to how to scale your applications to offer maximum performance to users even when traffic spikes, by using the latest technologies, such as containers. In addition to this, you'll get insights into monitoring and alerting, so you can make sure your users have the best experience when using your service. In the concluding chapters, we'll cover inbuilt AWS tools such as CodeDeploy and CloudFormation, which are used by many AWS administrators to perform DevOps. By the end of this book, you'll have learned how to ensure the security of your platform and data, using the latest and most prominent AWS tools.
Effective DevOps with AWS. Ship faster, scale better, and deliver incredible productivity
Nathaniel Felsen
The DevOps movement has transformed the way modern tech companies work. AWS which has been on the forefront of the Cloud computing revolution has also been a key contributor of this DevOps movement creating a huge range of managed services that help you implement the DevOps principles. In this book, you’ll see how the most successful tech start-ups launch and scale their services on AWS and how you can too. Written by a lead member of Mediums DevOps team, this book explains how to treat infrastructure as code, meaning you can bring resources online and offline as necessary with the code as easily as you control your software. You will also build a continuous integration and continuous deployment pipeline to keep your app up to date. You’ll find out how to scale your applications to offer maximum performance to users anywhere in the world, even when traffic spikes with the latest technologies, such as containers and serverless computing. You will also take a deep dive into monitoring and alerting to make sure your users have the best experience when using your service.Finally, you’ll get to grips with ensuring the security of your platform and data.
Effective .NET Memory Management. Build memory-efficient cross-platform applications using .NET Core
Trevoir Williams
In today’s software development landscape, efficient memory management is crucial for ensuring application performance and scalability. Effective .NET Memory Management addresses this need by explaining the intricacies of memory utilization within .NET Core apps, from fundamental concepts to advanced optimization techniques. Starting with an overview of memory management basics, you’ll quickly go through .NET’s garbage collection system. You’ll grasp the mechanics of memory allocation and gain insights into the distinctions between stack and heap memory and the nuances of value types and reference types. Building on this foundation, this book will help you apply practical strategies to address real-world app demands, spanning profiling memory usage, spotting memory leaks, and diagnosing performance bottlenecks, through clear explanations and hands-on examples. This book goes beyond theory, detailing actionable techniques to optimize data structures, minimize memory fragmentation, and streamline memory access in scenarios involving multithreading and asynchronous programming for creating responsive and resource-efficient apps that can scale without sacrificing performance. By the end of this book, you’ll have gained the knowledge to write clean, efficient code that maximizes memory usage and boosts app performance.
Effective .NET Memory Management. Build memory-efficient cross-platform applications using .NET Core
Trevoir Williams
In today’s software development landscape, efficient memory management is crucial for ensuring application performance and scalability. Effective .NET Memory Management addresses this need by explaining the intricacies of memory utilization within .NET Core apps, from fundamental concepts to advanced optimization techniques. Starting with an overview of memory management basics, you’ll quickly go through .NET’s garbage collection system. You’ll grasp the mechanics of memory allocation and gain insights into the distinctions between stack and heap memory and the nuances of value types and reference types. Building on this foundation, this book will help you apply practical strategies to address real-world app demands, spanning profiling memory usage, spotting memory leaks, and diagnosing performance bottlenecks, through clear explanations and hands-on examples. This book goes beyond theory, detailing actionable techniques to optimize data structures, minimize memory fragmentation, and streamline memory access in scenarios involving multithreading and asynchronous programming for creating responsive and resource-efficient apps that can scale without sacrificing performance. By the end of this book, you’ll have gained the knowledge to write clean, efficient code that maximizes memory usage and boosts app performance.
Alfonso San Miguel Sánchez, Danny Obando García
In response to the escalating challenges of cloud adoption, where balancing costs and maximizing cloud values is paramount, FinOps practices have emerged as the cornerstone of fi nancial optimization. This book serves as your comprehensive guide to understanding how FinOps is implemented in organizations worldwide through team collaboration and proper cloud governance.Presenting FinOps from a practical point of view, covering the three phases—inform, optimize, and operate—this book demonstrates an end-to-end methodology for optimizing costs and performing financial management in the cloud. You’ll learn how to design KPIs and dashboards for judicious cost allocation, covering key features of cloud services such as reserved instances, rightsizing, scaling, and automation for cost optimization. This book further simplifi es architectural concepts and best practices, enabling you to design superior and more optimized solutions. Finally, you’ll discover potential synergies and future challenges, from the integration of artifi cial intelligence to cloud sustainability considerations, to prepare for the future of cloud FinOps.By the end of this book, you’ll have built the expertise to seamlessly implement FinOps practices across major public clouds, armed with insights and ideas to propel your organization toward business growth.
Ashish Choudhary
Kubernetes has become the de facto standard for container orchestration, drastically improving how we deploy and manage cloud-native apps. Although it has simplified the lives of support professionals, we cannot say the same for developers who need to be equipped with better tools to increase productivity. An automated workflow that solves a wide variety of problems that every developer faces can make all the difference!Enter Skaffold – a command-line tool that automates the build, push, and deploy steps for Kubernetes applications.This book is divided into three parts, starting with common challenges encountered by developers in building apps with Kubernetes. The second part covers Skaffold features, its architecture, supported container image builders, and more. In the last part, you'll focus on practical implementation, learning how to deploy Spring Boot apps to cloud platforms such as Google Cloud Platform (GCP) using Skaffold. You'll also create CI/CD pipelines for your cloud-native apps with Skaffold. Although the examples covered in this book are written in Java and Spring Boot, the techniques can be applied to apps built using other technologies too.By the end of this Skaffold book, you'll develop skills that will help accelerate your inner development loop and be able to build and deploy your apps to the Kubernetes cluster with Skaffold.
Michael Sikora
This book is a fast-paced tutorial that explores the key features of EJB 3 with many accompanying examples. This book is not a complete reference guide, but a concise exploration of EJB 3's core elements. This book is primarily aimed at professional developers who already have a working knowledge of Java. Enterprise architects and designers with a background in Java would also find this book of use. Previous experience of working with Java is essential and knowledge of relational databases is desirable. As this book is an introduction to EJB 3, it is aimed at those who are new to EJB 3. As the new version of EJB is so radically different from the previous version (EJB 2.x), the book is suitable for and should be of interest to those who have had experience working with EJB 2.x. The text makes it clear where the differences between the versions of EJB lie, although they are not explored in detail.
Colin Dow
Programowanie dla internetu rzeczy różni się od tworzenia standardowych aplikacji internetowych. Najlepszym sposobem na naukę praktycznych projektów IoT jest praca z mikrokontrolerami Raspberry Pi - znanymi z wszechstronności i przystępnej ceny. To one znajdują się dziś w awangardzie urządzeń stosowanych w inteligentnych rozwiązaniach internetu rzeczy i wyznaczają nowe trendy. Dzięki tej książce pewnie wkroczysz do fascynującego świata internetu rzeczy! Zaczniesz od podstaw: poznasz usługi internetowe, komunikację LoRa, porty GPIO, a także możliwości najnowszych mikrokontrolerów Raspberry Pi. Dowiesz się też, czym jest ROS i jak stworzyć projekt oparty na rozpoznawaniu obrazów. Krok po kroku będziesz przechodzić do coraz bardziej zaawansowanych rozwiązań. Nauczysz się integrować aplikacje z usługami sieciowymi i używać technologii LoRa do komunikacji na dużą odległość przy niskim zużyciu energii. Dzięki jasnym instrukcjom i zrozumiałym wyjaśnieniom uzyskasz niezbędne umiejętności, by tworzyć innowacyjne urządzenia IoT. W książce: integracja usług internetowych w celu pobierania i analizowania danych w czasie rzeczywistym łączenie czujników, silników i wyświetlaczy podczas budowy inteligentnych urządzeń IoT budowanie wskaźnika pogody konstruowanie autonomicznego robota projekt domowego systemu zabezpieczeń zastosowanie LoRa i LoRaWAN do zdalnego monitorowania warunków środowiskowych
Ekstrakcja danych w Pythonie. Teoria i praktyka
Piotr Rybka
Dane: załaduj, przetwarzaj, analizuj Ekstrakcja danych jest procesem, w którym informacje pozyskuje się z różnych źródeł - zwykle po to, by następnie poddać je dalszej transformacji i analizie. Umiejętność pozyskiwania danych, scalania, filtrowania i obrabiania ich na rozmaite sposoby przydaje się nie tylko zawodowym analitykom. Zdolność poruszania się po świecie danych jest wysoce pożądana również u osób pracujących w działach IT i na stanowiskach menadżerskich. Kto ma dane, ten ma wiedzę i zyskuje przewagę nad konkurencją! Jeśli chcesz zgłębić teorię ekstrakcji danych i zdobyć praktyczne umiejętności pozwalające operować nimi w Pythonie, ten podręcznik powinien być dla Ciebie pozycją obowiązkową. Dzięki książce między innymi: Opanujesz podstawowe pojęcia, których znajomość jest niezbędna podczas działań na zbiorach danych Zrozumiesz specyfikę plików binarnych i tekstowych Dowiesz się, na czym polega kodowanie tekstu Poznasz zagadnienia wyrażeń regularnych Zorientujesz się, jakie formaty wymiany danych są dostępne w Pythonie Nauczysz się przeszukiwać dokumenty znacznikowe Zapoznasz się ze schematami formatów wymiany danych
Ekstrakcja danych z językiem Python. Pozyskiwanie danych z internetu. Wydanie II
Ryan Mitchell
Ekstrakcję danych (ang. web scraping), zwaną też wydobywaniem danych z zasobów internetu, wiele osób postrzega jako wyższy stopień wtajemniczenia: przy niewielkim wysiłku można uzyskać imponujące wyniki i wykorzystać je w różnoraki sposób. Nie dziwi więc, że wokół tej dziedziny narosło mnóstwo mitów. Wątpliwości jest wiele, począwszy od legalności tego rodzaju praktyk, skończywszy na właściwościach różnych narzędzi. W praktyce na ekstrakcję danych składa się cały szereg zróżnicowanych technik i technologii, takich jak analiza danych, analiza składniowa języka naturalnego, a także zabezpieczenie informacji. Aby w pełni wykorzystać ich zalety, konieczne jest zrozumienie sposobu, w jaki funkcjonują. Ta książka jest znakomitym przewodnikiem po technikach pozyskiwania danych z internetu. Przedstawiono tu również zasady gromadzenia, przekształcania i wykorzystywania danych z różnych zasobów. W kontekście ekstrakcji danych omówiono zagadnienia związane z bazami danych, serwerami sieciowymi, protokołem HTTP, językiem HTML, bezpieczeństwem sieciowym, przetwarzaniem obrazów, analizą danych i wieloma innymi kwestiami. Zaprezentowane tu rozwiązania programistyczne zostały napisane w Pythonie. Nie zabrakło też omówienia bibliotek przydatnych w pracy osób tworzących roboty indeksujące. Dzięki tej książce szybko zaczniesz pozyskiwać i w dowolny sposób wykorzystywać posiadane dane. Już dziś te rozwiązania są stosowane w prognozowaniu rynkowym, tłumaczeniu maszynowym, a nawet w diagnostyce medycznej! Najważniejsze zagadnienia: korzystanie z platformy Scrapy do tworzenia robotów metody odczytu, wydobywania i przechowywania pozyskiwanych danych oczyszczanie i normalizacja danych interfejsy API przetwarzanie obrazów na tekst testowanie witryn za pomocą robotów Wyszukuj dane, gromadź je i korzystaj z nich do woli!
Ekstremalny kod w języku C. Współbieżność i programowanie zorientowane obiektowo
Kamran Amini
Jeśli uważasz, że język C dawno został odłożony do lamusa, jesteś w błędzie. Wielu inżynierów oprogramowania o nim zapomniało, jednak C wciąż cieszy się popularnością. Jest przy tym uważany za dość trudny język programowania, gdyż samo opanowanie jego składni to za mało, aby efektywnie go wykorzystywać. Właśnie dlatego ceni się programistów z wnikliwym i naukowym podejściem do reguł i praktyk. Tylko wtedy można wykorzystać możliwości języka C do tworzenia efektywnych systemów. W tym celu profesjonalny programista C musi tworzyć kod na bardzo wysokim poziomie. To książka przeznaczona dla programistów, którzy chcą stać się ekspertami języka C. Przedstawia zasady pracy z dyrektywami preprocesora, makrami, kompilacją warunkową i ze wskaźnikami. Omawia ważne aspekty projektowania algorytmów, funkcji i struktur. Sporo miejsca poświęcono tu kwestii uzyskiwania maksimum wydajności z aplikacji działających w środowisku o ograniczonych zasobach. Starannie opisano, jak C współpracuje z systemem Unix, w jaki sposób zaimplementowano reguły zorientowane obiektowo w języku C, a także jak wykorzystać wieloprocesowość. To świetny materiał bazowy do samodzielnego badania, zadawania pytań i eksperymentowania z kodem. W książce między innymi: zaawansowane elementy języka C struktury pamięci i proces kompilacji programowanie zorientowane obiektowo w proceduralnym kodzie C tworzenie kodu na niskim poziomie współbieżność, wielowątkowość i integracja z innymi językami programowania testy jednostkowe i debugowanie oraz komunikacja międzyprocesowa Programowanie w C: przejdź na najwyższy poziom!
Alberto Paro
ElasticSearch is one of the most promising NoSQL technologies available and is built to provide a scalable search solution with built-in support for near real-time search and multi-tenancy.This practical guide is a complete reference for using ElasticSearch and covers 360 degrees of the ElasticSearch ecosystem. We will get started by showing you how to choose the correct transport layer, communicate with the server, and create custom internal actions for boosting tailored needs.Starting with the basics of the ElasticSearch architecture and how to efficiently index, search, and execute analytics on it, you will learn how to extend ElasticSearch by scripting and monitoring its behaviour.Step-by-step, this book will help you to improve your ability to manage data in indexing with more tailored mappings, along with searching and executing analytics with facets. The topics explored in the book also cover how to integrate ElasticSearch with Python and Java applications.This comprehensive guide will allow you to master storing, searching, and analyzing data with ElasticSearch.
Vishal Shukla
The Hadoop ecosystem is a de-facto standard for processing terra-bytes and peta-bytes of data. Lucene-enabled Elasticsearch is becoming an industry standard for its full-text search and aggregation capabilities. Elasticsearch-Hadoop serves as a perfect tool to bridge the worlds of Elasticsearch and Hadoop ecosystem to get best out of both the worlds. Powered with Kibana, this stack makes it a cakewalk to get surprising insights out of your massive amount of Hadoop ecosystem in a flash.In this book, you'll learn to use Elasticsearch, Kibana and Elasticsearch-Hadoop effectively to analyze and understand your HDFS and streaming data.You begin with an in-depth understanding of the Hadoop, Elasticsearch, Marvel, and Kibana setup. Right after this, you will learn to successfully import Hadoop data into Elasticsearch by writing MapReduce job in a real-world example. This is then followed by a comprehensive look at Elasticsearch essentials, such as full-text search analysis, queries, filters and aggregations; after which you gain an understanding of creating various visualizations and interactive dashboard using Kibana. Classifying your real-world streaming data and identifying trends in it using Storm and Elasticsearch are some of the other topics that we'll cover. You will also gain an insight about key concepts of Elasticsearch and Elasticsearch-hadoop in distributed mode, advanced configurations along with some common configuration presets you may need for your production deployments. You will have “Go production checklist” and high-level view for cluster administration for post-production. Towards the end, you will learn to integrate Elasticsearch with other Hadoop eco-system tools, such as Pig, Hive and Spark.
Rafal Kuc, Marek Rogozinski
This book begins by introducing the most commonly used Elasticsearch server functionalities, from creating your own index structure, through querying, faceting, and aggregations, and ends with cluster monitoring and problem diagnosis. As you progress through the book, you will cover topics such as starting Elasticsearch, creating a new index, and designing its proper structure. After that, you'll read about the query API that Elasticsearch exposes, as well as about filtering capabilities, aggregations, and faceting. Last but not least, you will get to know how to find similar documents by using similar functionalities and how to implement application alerts by using the prospective search functionality called percolator. Some advanced topics such as shard allocation control, gateway configuration, and how to use the discovery module will also be discussed. This book will also show you the possibilities of cluster state and health monitoring as well as how to use third-party tools.
Elektronika i internet rzeczy. Przewodnik dla ludzi z prawdziwą pasją
Audrey O'Shea
Nowe technologie, zwłaszcza te związane z elektroniką, mają w sobie coś onieśmielającego. Jeśli jednak zechcesz się im przyjrzeć bliżej, łatwo możesz się nimi zainteresować w sposób wykraczający poza suchą teorię. Być może masz świetny pomysł na nowy gadżet albo marzy Ci się choć trochę inteligentny dom? A może zastanawiasz się nad podjęciem pracy zawodowej związanej z elektroniką? Nawet jeśli chodzi tylko o wciągającą zabawę, przed zbudowaniem pierwszego obwodu koniecznie musisz zdobyć podstawową wiedzę i praktyczne umiejętności. Dzięki tej książce łatwo wkroczysz w pasjonujący świat elektroniki, nowych technologii i internetu rzeczy. Równolegle z poznawaniem podstaw teoretycznych będziesz tworzyć proste obwody i przełączniki, aby stopniowo zajmować się coraz bardziej złożonymi projektami. Dowiesz się, jak korzystać z płytki Arduino i tworzyć programy sterujące zbudowanymi przez Ciebie urządzeniami. Nauczysz się w bezpieczny sposób podłączać te urządzenia do internetu. Zawarte tutaj wskazówki nie tylko ułatwią Ci eksperymentowanie, ale także pozwolą uniknąć często popełnianych błędów. Wśród przykładów opisanych w książce znajdziesz projekty służące do poważnych zadań, ale również takie, które przede wszystkim są zabawne i pozwalają na rozwinięcie kreatywności! Dowiedz się, jak zbudować: jasno świecącą lampę turystyczną alarm laserowy gadżety elektroniczne dla dzieci obwody sterowane światłem watomierz z wykorzystaniem płytki Arduino wiele innych urządzeń, które można połączyć z internetem Lutownica? Świetnie pasuje do każdej dłoni!
Elementy inżynierii oprogramowania w Pythonie
Jakub Walczak
Zdobądź ostrogi programisty w Pythonie! Python jest językiem, którego powszechnie używa się w wielu obszarach: od programowania gier, przez aplikacje webowe, po systemy analizy danych. Nic więc dziwnego, że cieszy się ogromną popularnością i jest dodatkowo wspierany przez liczną społeczność programistów, projektantów i sympatyków, którzy go rozwijają i rozszerzają. Do grona osób aktywnie korzystających z tego języka z pewnością należy Jakub Walczak, który w książce poświęconej Pythonowi i inżynierii oprogramowania wprowadza do jego ekosystemu. Dzięki jej lekturze czytelnicy poznają ideę środowisk wirtualnych, sposoby interakcji z interpreterem czy zasady podziału projektu na moduły i pakiety. Adepci sztuki programowania znajdą tu wprowadzenie do mechanizmów pakietu pytest, który zdecydowanie ułatwia pisanie i wykonywanie testów jednostkowych. Opanują również takie zagadnienia jak klasy i obiekty, a także zaawansowane aspekty programowania obiektowego, w tym metaklasy, dziedziczenie i emulowanie szczególnych zachowań obiektów Autor zadbał o klarowną strukturę podręcznika, który składa się z dwunastu uporządkowanych rozdziałów. Zawarta w nich treść została uzupełniona dodatkowymi wyjaśnieniami, wskazówkami i podsumowaniami, co ułatwia przyswojenie omawianego materiału. Organizacja środowiska pracy Organizacja projektu Wstęp do programowania zorientowanego obiektowo Deskryptory Dziedziczenie Mechanizm obsługi wyjątków Metody specjalne klas Dekoratory Serializacja i deserializacja Testy jednostkowe z użyciem biblioteki pytest Wytyczne dotyczące stylu Python od A do Z! Jakub Walczak — rocznik 1994, doktorant w dyscyplinie informatyki technicznej i telekomunikacji, od 2019 roku asystent w grupie pracowników badawczo-dydaktycznych na Politechnice Łódzkiej i deweloper oprogramowania naukowego w CMCC Foundation. Od kilku lat entuzjasta Pythona, aktywnie zgłębiający jego tajniki zarówno w pracy zawodowej, jak i poza nią. Miłośnik podróży, kultury hiszpańskiej i słodyczy. W wolnych chwilach mól książkowy i amator sportów. Ciągły poszukiwacz nowych wyzwań, z których ostatnim było przygotowanie tego podręcznika.