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.
NativeScript for Angular Mobile Development. Creating dynamic mobile apps for iOS and Android
Nathan Walker, Nathanael J. Anderson
NativeScript is an open source framework that is built by Progress in order to build truly native mobile apps with TypeScript, JavaScript or just Angular which is an open source framework built by Google that offers declarative templates, dependency injection, and fully featured modules to build rich applications. Angular’s versatile view handling architecture allows your views to be rendered as highly performant UI components native to iOS and Android mobile platforms. This decoupling of the view rendering layer in Angular combined with the power of native APIs with NativeScript have together created the powerful and exciting technology stack of NativeScript for Angular.This book focuses on the key concepts that you will need to know to build a NativeScript for Angular mobile app for iOS and Android. We’ll build a fun multitrack recording studio app, touching on powerful key concepts from both technologies that you may need to know when you start building an app of your own. The structure of the book takes the reader from a void to a deployed app on both the App Store and Google Play, serving as a reference guide and valuable tips/tricks handbook.By the end of this book, you’ll know majority of key concepts needed to build a successful NativeScript for Angular app.
Natura kodu. Symulowanie systemów naturalnych przy użyciu JavaScript
Daniel Shiffman
Co by było, gdyby za pomocą kodu można było odtworzyć budzące podziw wzory stada ptaków lub hipnotyczny taniec świetlików? Książka Natura kodu już od ponad dekady umożliwia to niezliczonym czytelnikom, wypełniając lukę między twórczą ekspresją a programowaniem. Ten innowacyjny przewodnik autorstwa Daniela Shiffmana, twórcy uwielbianego Coding Train, zaprasza zarówno początkujących, jak i doświadczonych programistów do świata, w którym kod spotyka się z radosną kreatywnością. To wydanie przełomowego dzieła Shiffmana, oparte na JavaScripcie, powoli odkrywa tajemnice świata przyrody, zamieniając złożone tematy, takie jak algorytmy genetyczne, symulacje oparte na fizyce i sieci neuronowe, w przystępne i oszałamiające wizualnie kreacje. Praca Shiffmana przekształciła tysiące dociekliwych umysłów w twórców, przełamując bariery między nauką, sztuką i technologią oraz zachęcając Czytelników do postrzegania kodu nie tylko jako narzędzia do wykonywania zadań, ale jako płótna dla nieograniczonej kreatywności. Niezależnie od tego, czy rozszyfrowujesz eleganckie wzorce zjawisk naturalnych, czy też tworzysz własne cyfrowe ekosystemy, wskazówki Shiffmana z pewnością dostarczą informacji i inspiracji. W Naturze kodu nie chodzi tylko o kodowanie, lecz o nowe spojrzenie na świat przyrody i sprawienie, aby jego cuda zainspirowały twoje następne dzieła. Zanurz się i odkryj radość z przekształcania kodu w sztukę - a to wszystko przy jednoczesnym opanowaniu podstaw kodowania. Rozpocznij tę niezwykłą przygodę z projektami obejmującymi: Mechanizmy fizyki: symuluj przyciąganie grawitacyjne. Stado ptaków: twórz choreografię hipnotyzującego tańca stada. Rozgałęziające się drzewa: twórz realistyczne i organiczne struktury drzew. Sieci neuronowe: twórz inteligentne systemy, które uczą się i adaptują. Automaty komórkowe: odkrywaj magię samoorganizujących się wzorców. Algorytmy ewolucyjne: bądź świadkiem naturalnej selekcji we własnym kodzie. O autorze Daniel Shiffman, twórca kanału The Coding Train na YouTube (www.youtube.com/c/TheCodingTrain), większość swojego wolnego czasu poświęca, ucząc kodowania prawie 2 miliony subskrybentów, poprzez połączenie szczegółowych samouczków i filmów z projektami. Jako profesor sztuki w NYU Tisch School of the Arts i współzałożyciel Processing Foundation, Shiffman ma misję umożliwienia dociekliwym uczniom i ludziom na całym świecie wyrażania siebie poprzez kod.
Bhargav Srinivasa-Desikan
Modern text analysis is now very accessible using Python and open source tools, so discover how you can now perform modern text analysis in this era of textual data.This book shows you how to use natural language processing, and computational linguistics algorithms, to make inferences and gain insights about data you have. These algorithms are based on statistical machine learning and artificial intelligence techniques. The tools to work with these algorithms are available to you right now - with Python, and tools like Gensim and spaCy.You'll start by learning about data cleaning, and then how to perform computational linguistics from first concepts. You're then ready to explore the more sophisticated areas of statistical NLP and deep learning using Python, with realistic language and text samples. You'll learn to tag, parse, and model text using the best tools. You'll gain hands-on knowledge of the best frameworks to use, and you'll know when to choose a tool like Gensim for topic models, and when to work with Keras for deep learning.This book balances theory and practical hands-on examples, so you can learn about and conduct your own natural language processing projects and computational linguistics. You'll discover the rich ecosystem of Python tools you have available to conduct NLP - and enter the interesting world of modern text analysis.
Sohom Ghosh, Dwight Gunning
If NLP hasn't been your forte, Natural Language Processing Fundamentals will make sure you set off to a steady start. This comprehensive guide will show you how to effectively use Python libraries and NLP concepts to solve various problems.You'll be introduced to natural language processing and its applications through examples and exercises. This will be followed by an introduction to the initial stages of solving a problem, which includes problem definition, getting text data, and preparing it for modeling. With exposure to concepts like advanced natural language processing algorithms and visualization techniques, you'll learn how to create applications that can extract information from unstructured data and present it as impactful visuals. Although you will continue to learn NLP-based techniques, the focus will gradually shift to developing useful applications. In these sections, you'll understand how to apply NLP techniques to answer questions as can be used in chatbots. By the end of this book, you'll be able to accomplish a varied range of assignments ranging from identifying the most suitable type of NLP task for solving a problem to using a tool like spacy or gensim for performing sentiment analysis. The book will easily equip you with the knowledge you need to build applications that interpret human language.
Mercury Learning and Information, Oswald Campesato
This book is for developers seeking an overview of basic concepts in Natural Language Processing (NLP). It caters to a technical audience, offering numerous code samples and listings to illustrate the wide range of topics covered. The journey begins with managing data relevant to NLP, followed by two chapters on fundamental NLP concepts. This foundation is reinforced with Python code samples that bring these concepts to life.The book then delves into practical NLP applications, such as sentiment analysis, recommender systems, COVID-19 analysis, spam detection, and chatbots. These examples provide real-world context and demonstrate how NLP techniques can be applied to solve common problems. The final chapter introduces advanced topics, including the Transformer architecture, BERT-based models, and the GPT family, highlighting the latest state-of-the-art developments in the field.Appendices offer additional resources, including Python code samples on regular expressions and probability/statistical concepts, ensuring a well-rounded understanding. Companion files with source code and figures enhance the learning experience, making this book a comprehensive guide for mastering NLP techniques and applications.
Mona M, Premkumar Rangarajan, Julien Simon
Natural language processing (NLP) uses machine learning to extract information from unstructured data. This book will help you to move quickly from business questions to high-performance models in production.To start with, you'll understand the importance of NLP in today’s business applications and learn the features of Amazon Comprehend and Amazon Textract to build NLP models using Python and Jupyter Notebooks. The book then shows you how to integrate AI in applications for accelerating business outcomes with just a few lines of code. Throughout the book, you'll cover use cases such as smart text search, setting up compliance and controls when processing confidential documents, real-time text analytics, and much more to understand various NLP scenarios. You'll deploy and monitor scalable NLP models in production for real-time and batch requirements. As you advance, you'll explore strategies for including humans in the loop for different purposes in a document processing workflow. Moreover, you'll learn best practices for auto-scaling your NLP inference for enterprise traffic.Whether you're new to ML or an experienced practitioner, by the end of this NLP book, you'll have the confidence to use AWS AI services to build powerful NLP applications.
Mona M, Premkumar Rangarajan, Julien Simon
Natural language processing (NLP) uses machine learning to extract information from unstructured data. This book will help you to move quickly from business questions to high-performance models in production.To start with, you'll understand the importance of NLP in today’s business applications and learn the features of Amazon Comprehend and Amazon Textract to build NLP models using Python and Jupyter Notebooks. The book then shows you how to integrate AI in applications for accelerating business outcomes with just a few lines of code. Throughout the book, you'll cover use cases such as smart text search, setting up compliance and controls when processing confidential documents, real-time text analytics, and much more to understand various NLP scenarios. You'll deploy and monitor scalable NLP models in production for real-time and batch requirements. As you advance, you'll explore strategies for including humans in the loop for different purposes in a document processing workflow. Moreover, you'll learn best practices for auto-scaling your NLP inference for enterprise traffic.Whether you're new to ML or an experienced practitioner, by the end of this NLP book, you'll have the confidence to use AWS AI services to build powerful NLP applications.
Tadej Magajna
Flair is an easy-to-understand natural language processing (NLP) framework designed to facilitate training and distribution of state-of-the-art NLP models for named entity recognition, part-of-speech tagging, and text classification. Flair is also a text embedding library for combining different types of embeddings, such as document embeddings, Transformer embeddings, and the proposed Flair embeddings.Natural Language Processing with Flair takes a hands-on approach to explaining and solving real-world NLP problems. You'll begin by installing Flair and learning about the basic NLP concepts and terminology. You will explore Flair's extensive features, such as sequence tagging, text classification, and word embeddings, through practical exercises. As you advance, you will train your own sequence labeling and text classification models and learn how to use hyperparameter tuning in order to choose the right training parameters. You will learn about the idea behind one-shot and few-shot learning through a novel text classification technique TARS. Finally, you will solve several real-world NLP problems through hands-on exercises, as well as learn how to deploy Flair models to production.By the end of this Flair book, you'll have developed a thorough understanding of typical NLP problems and you’ll be able to solve them with Flair.
Richard M. Reese
Natural Language Processing (NLP) has become one of the prime technologies for processing very large amounts of unstructured data from disparate information sources. This book includes a wide set of recipes and quick methods that solve challenges in text syntax, semantics, and speech tasks. At the beginning of the book, you'll learn important NLP techniques, such as identifying parts of speech, tagging words, and analyzing word semantics. You will learn how to perform lexical analysis and use machine learning techniques to speed up NLP operations. With independent recipes, you will explore techniques for customizing your existing NLP engines/models using Java libraries such as OpenNLP and the Stanford NLP library. You will also learn how to use NLP processing features from cloud-based sources, including Google and Amazon Web Services (AWS). You will master core tasks, such as stemming, lemmatization, part-of-speech tagging, and named entity recognition. You will also learn about sentiment analysis, semantic text similarity, language identification, machine translation, and text summarization. By the end of this book, you will be ready to become a professional NLP expert using a problem-solution approach to analyze any sort of text, sentence, or semantic word.
AshishSingh Bhatia, Richard M. Reese
Natural Language Processing (NLP) allows you to take any sentence and identify patterns, special names, company names, and more. The second edition of Natural Language Processing with Java teaches you how to perform language analysis with the help of Java libraries, while constantly gaining insights from the outcomes.You’ll start by understanding how NLP and its various concepts work. Having got to grips with the basics, you’ll explore important tools and libraries in Java for NLP, such as CoreNLP, OpenNLP, Neuroph, and Mallet. You’ll then start performing NLP on different inputs and tasks, such as tokenization, model training, parts-of-speech and parsing trees. You’ll learn about statistical machine translation, summarization, dialog systems, complex searches, supervised and unsupervised NLP, and more.By the end of this book, you’ll have learned more about NLP, neural networks, and various other trained models in Java for enhancing the performance of NLP applications.
Cuantum Technologies LLC
Embark on a comprehensive journey to master natural language processing (NLP) with Python. Begin with foundational concepts like text preprocessing, tokenization, and key Python libraries such as NLTK, spaCy, and TextBlob. Explore the challenges of text data and gain hands-on experience in cleaning, tokenizing, and building basic NLP pipelines. Early chapters provide practical exercises to solidify your understanding of essential techniques.Advance to sophisticated topics like feature engineering using Bag of Words, TF-IDF, and embeddings like Word2Vec and BERT. Delve into language modeling with RNNs, syntax parsing, and sentiment analysis, learning to apply these techniques in real-world scenarios. Chapters on topic modeling and text summarization equip you to extract insights from data, while transformer-based models like BERT take your skills to the next level. Each concept is paired with Python-based examples, ensuring practical mastery.The final chapters focus on real-world projects, such as developing chatbots, sentiment analysis dashboards, and news aggregators. These hands-on applications challenge you to design, train, and deploy robust NLP solutions. With its structured approach and practical focus, this book equips you to confidently tackle real-world NLP challenges and innovate in the field.
Nirant Kasliwal
NLP in Python is among the most sought after skills among data scientists. With code and relevant case studies, this book will show how you can use industry-grade tools to implement NLP programs capable of learning from relevant data. We will explore many modern methods ranging from spaCy to word vectors that have reinvented NLP.The book takes you from the basics of NLP to building text processing applications. We start with an introduction to the basic vocabulary along with a work?ow for building NLP applications.We use industry-grade NLP tools for cleaning and pre-processing text, automatic question and answer generation using linguistics, text embedding, text classifier, and building a chatbot. With each project, you will learn a new concept of NLP. You will learn about entity recognition, part of speech tagging and dependency parsing for Q and A. We use text embedding for both clustering documents and making chatbots, and then build classifiers using scikit-learn.We conclude by deploying these models as REST APIs with Flask.By the end, you will be confident building NLP applications, and know exactly what to look for when approaching new challenges.
Thushan Ganegedara
Natural language processing (NLP) supplies the majority of data available to deep learning applications, while TensorFlow is the most important deep learning framework currently available. Natural Language Processing with TensorFlow brings TensorFlow and NLP together to give you invaluable tools to work with the immense volume of unstructured data in today’s data streams, and apply these tools to specific NLP tasks.Thushan Ganegedara starts by giving you a grounding in NLP and TensorFlow basics. You'll then learn how to use Word2vec, including advanced extensions, to create word embeddings that turn sequences of words into vectors accessible to deep learning algorithms. Chapters on classical deep learning algorithms, like convolutional neural networks (CNN) and recurrent neural networks (RNN), demonstrate important NLP tasks as sentence classification and language generation. You will learn how to apply high-performance RNN models, like long short-term memory (LSTM) cells, to NLP tasks. You will also explore neural machine translation and implement a neural machine translator.After reading this book, you will gain an understanding of NLP and you'll have the skills to apply TensorFlow in deep learning NLP applications, and how to perform specific NLP tasks.
Thushan Ganegedara, Andrei Lopatenko
Learning how to solve natural language processing (NLP) problems is an important skill to master due to the explosive growth of data combined with the demand for machine learning solutions in production. Natural Language Processing with TensorFlow, Second Edition, will teach you how to solve common real-world NLP problems with a variety of deep learning model architectures.The book starts by getting readers familiar with NLP and the basics of TensorFlow. Then, it gradually teaches you different facets of TensorFlow 2.x. In the following chapters, you then learn how to generate powerful word vectors, classify text, generate new text, and generate image captions, among other exciting use-cases of real-world NLP.TensorFlow has evolved to be an ecosystem that supports a machine learning workflow through ingesting and transforming data, building models, monitoring, and productionization. We will then read text directly from files and perform the required transformations through a TensorFlow data pipeline. We will also see how to use a versatile visualization tool known as TensorBoard to visualize our models.By the end of this NLP book, you will be comfortable with using TensorFlow to build deep learning models with many different architectures, and efficiently ingest data using TensorFlow Additionally, you’ll be able to confidently use TensorFlow throughout your machine learning workflow.
Naucz się Gita. Praktyczny podręcznik wizualny dla początkujących
Anna Skoulikari
Git - kultowe, darmowe i dojrzałe oprogramowanie. Im większy zespół i im bardziej złożony projekt, tym ważniejsze jest skuteczne zarządzanie wersjami. Git umożliwia wyrafinowaną konfigurację i pozwala na zaspokajanie szczególnych potrzeb. Jeśli chcesz w pełni korzystać z jego potencjału, musisz zdobyć solidną wiedzę o podstawach tego systemu. Dzięki tej książce dobrze zrozumiesz działanie Gita. Wiedza jest w niej przekazywana w prosty i konsekwentny sposób, a zastosowane techniki wizualne, opowiadane historie i liczne praktyczne ćwiczenia pozwolą Ci na skuteczną naukę krok po kroku. Stopniowo będziesz się zapoznawać z kluczowymi informacjami i dogłębnie zrozumiesz znaczenie poszczególnych terminów i koncepcji. Książkę docenią zwłaszcza osoby używające Gita w projektach prywatnych lub zawodowych, na przykład studenci i uczestnicy kursów programowania, młodsi programiści, specjaliści przetwarzania danych i pisarze techniczni. Jest to niezwykle przystępny i dokładny przewodnik, pełen praktycznej wiedzy o Gicie. Robert C. Martin aka Uncle Bob, twórca oprogramowania i autor książki Czysty kod Dzięki książce dowiesz się, jak: pobierać oprogramowanie Git i inicjalizować repozytorium lokalne dodawać pliki do przechowalni i wykonywać commity tworzyć, przełączać i usuwać gałęzie złączać i przebazowywać gałęzie obsługiwać repozytoria zdalne używać żądań pobrania podczas współpracy z innymi użytkownikami Z tej książki rzeczywiście możesz się nauczyć Gita! Ben Straub, współautor książki Pro Git
Nauka algorytmów. Poradnik pisania lepszego kodu
George Heineman
Doskonałe opanowanie dowolnego języka programowania nie wystarczy do tego, aby stać się świetnym programistą czy deweloperem. Konieczne jest również zdobycie praktycznej wiedzy dotyczącej algorytmów. Oznacza to, że aby pisać lepszy kod, podczas rozwiązywania rzeczywistych problemów trzeba umieć korzystać z algorytmów, włączając w to ich budowanie, modyfikację i implementację. Niezależnie od tego, jaką dziedziną informatyki się zajmujesz, biegłość w posługiwaniu się algorytmami w wymierny sposób ułatwi Ci pracę i poprawi jej rezultaty. Ta książka jest przystępnym wprowadzeniem do wiedzy o algorytmach wraz z przykładami implementacji napisanymi w Pythonie. Oprócz praktycznego omówienia algorytmów znalazło się tu wyjaśnienie takich pojęć jak klasy złożoności czy analiza asymptotyczna. Dokładnie omówiono także najważniejsze algorytmy, w tym różne sposoby haszowania, sortowania czy przeszukiwania. Tam, gdzie to niezbędne, wprowadzono struktury danych języka Python. Z poradnika programiści i testerzy dowiedzą się, w jaki sposób wykorzystywać algorytmy do pomysłowego rozwiązywania problemów obliczeniowych. Zrozumienie treści ułatwiają ciekawe materiały wizualne i ćwiczenia utrwalające, które pozwolą na przetestowanie zdobytej wiedzy w praktyce. W książce między innymi: podstawowe algorytmy wykorzystywane w inżynierii oprogramowania standardowe strategie wydajnego rozwiązywania problemów ocena złożoności czasowej kodu z wykorzystaniem notacji dużego O praktyczne stosowanie algorytmów z wykorzystaniem bibliotek i struktury danych Pythona główne zasady działania ważnych algorytmów
Nauka algorytmów. Poradnik pisania lepszego kodu
George Heineman
Doskonałe opanowanie dowolnego języka programowania nie wystarczy do tego, aby stać się świetnym programistą czy deweloperem. Konieczne jest również zdobycie praktycznej wiedzy dotyczącej algorytmów. Oznacza to, że aby pisać lepszy kod, podczas rozwiązywania rzeczywistych problemów trzeba umieć korzystać z algorytmów, włączając w to ich budowanie, modyfikację i implementację. Niezależnie od tego, jaką dziedziną informatyki się zajmujesz, biegłość w posługiwaniu się algorytmami w wymierny sposób ułatwi Ci pracę i poprawi jej rezultaty. Ta książka jest przystępnym wprowadzeniem do wiedzy o algorytmach wraz z przykładami implementacji napisanymi w Pythonie. Oprócz praktycznego omówienia algorytmów znalazło się tu wyjaśnienie takich pojęć jak klasy złożoności czy analiza asymptotyczna. Dokładnie omówiono także najważniejsze algorytmy, w tym różne sposoby haszowania, sortowania czy przeszukiwania. Tam, gdzie to niezbędne, wprowadzono struktury danych języka Python. Z poradnika programiści i testerzy dowiedzą się, w jaki sposób wykorzystywać algorytmy do pomysłowego rozwiązywania problemów obliczeniowych. Zrozumienie treści ułatwiają ciekawe materiały wizualne i ćwiczenia utrwalające, które pozwolą na przetestowanie zdobytej wiedzy w praktyce. W książce między innymi: podstawowe algorytmy wykorzystywane w inżynierii oprogramowania standardowe strategie wydajnego rozwiązywania problemów ocena złożoności czasowej kodu z wykorzystaniem notacji dużego O praktyczne stosowanie algorytmów z wykorzystaniem bibliotek i struktury danych Pythona główne zasady działania ważnych algorytmów
Elton Stoneman
U podstaw sukcesu Dockera leżał bardzo prosty pomysł: spakowanie aplikacji w lekkim, łatwym do zainstalowania kontenerze. Nagle się okazało, że można zarządzać aplikacjami bez budowania złożonej infrastruktury. Kontenery są niezależne od platformy i wszechstronne. Upraszczają opracowanie, testowanie, wdrażanie i skalowanie aplikacji, a także ułatwiają automatyzację przepływu pracy i ciągły rozwój aplikacji. Docker jest przy tym rozwiązaniem bezpłatnym, o otwartych źródłach. Coraz większa liczba użytkowników, programistów i administratorów przekonuje się do tej technologii, co sprawia, że lawinowo rośnie liczba wdrożeń. Dziś Dockera po prostu trzeba znać! Ta książka składa się z ponad dwudziestu krótkich, praktycznych lekcji, w ramach których przedstawiono najważniejsze koncepcje związane ze stosowaniem Dockera. Dzięki niej szybko i bez problemów zaczniesz wdrażać aplikacje kontenerowe w środowisku produkcyjnym. Skupisz się na rzeczywistych zadaniach i stopniowo będziesz zdobywać doświadczenie związane z Dockerem, aplikacjami rozproszonymi, orkiestracją i ekosystemem kontenerów. Publikacja zawiera mnóstwo wskazówek, przykładów, ćwiczeń i rozbudowanych projektów, które ułatwią nabywanie wiedzy i przydatnych umiejętności. Każdy rozdział powinien Ci zająć nie więcej niż godzinę: w tym czasie zapoznasz się z niewielką porcją teorii, wykonasz ćwiczenia i przeanalizujesz praktyczne przykłady. W rezultacie po lekturze będziesz pewnie tworzyć i uruchamiać aplikacje w Dockerze. W książce: gruntowne wprowadzenie do koncepcji Dockera pakowanie aplikacji w kontenerach uruchamianie kontenerów w środowisku produkcyjnym tworzenie zoptymalizowanych obrazów Dockera uruchamianie i skalowanie skonteneryzowanych aplikacji Docker. Należy znać. Trzeba używać!
Nauka Javy. Wprowadzenie do tworzenia aplikacji do rzeczywistych zastosowań. Wydanie V
Marc Loy, Patrick Niemeyer, Daniel Leuck
Twórcy Javy od początku historii tego języka śmiało wprowadzali kolejne awangardowe innowacje, a pisane w niej aplikacje miały swój udział w napędzaniu internetowego postępu. Obecnie Java jest uważana za najpopularniejszy język programowania na świecie, a miliony deweloperów wciąż tworzą za jej pomocą oprogramowanie dla niemal każdego urządzenia wyposażonego w procesor. Java jest wyjątkowo wszechstronnym narzędziem: pozwala napisać zarówno prostą aplikację mobilną, jak i złożony system internetowy. Pozostaje przy tym stosunkowo prosta w nauce - co sprawia, że jest idealnym językiem dla początkujących, którzy mają ambicję dojścia do profesjonalnego poziomu. Ta książka jest praktycznym przewodnikiem dla każdego, kto chce zdobyć doświadczenie w tworzeniu rzeczywistych aplikacji w Javie. To również znakomity kurs programowania obiektowego dla początkujących, umożliwiający gruntowne zrozumienie podstaw języka Java i jego interfejsów API. Wyczerpująco opisano tu biblioteki klas, techniki programowania oraz idiomy. Nie zabrakło zaawansowanych zagadnień, takich jak wyrażenia lambda czy serwlety. W tym przejrzanym i zaktualizowanym wydaniu ujęto zmiany wprowadzone zarówno w wersji 11 Javy, jak i w przeglądowych wersjach 12, 13 i 14. Przedstawiono więc takie nowości jak interferencja typów w typach sparametryzowanych, ulepszenia w obsłudze wyjątków czy nowe środowisko testowe jshell. W książce między innymi: przygotowanie środowiska pracy i konfiguracja przydatnych narzędzi typy, instrukcje, wyrażenia oraz obiekty w Javie obsługa wątków i pakiet współbieżności Javy błędy i wyjątki interfejs API wyrażeń regularnych tworzenie zaawansowanych aplikacji i usług sieciowych Java: niezawodny kod, aplikacja, która działa!
Elton Stoneman
Kubernetes to system, który uruchamia aplikacje w kontenerach i nimi zarządza. Jest obsługiwany przez wszystkie ważne platformy chmurowe i znakomicie się sprawdza jako centrum danych. Został zbudowany w 2014 roku przez Google i do teraz prężnie się rozwija. Słynie ze skalowalności, z elastyczności, wszechstronności i potężnego zestawu funkcjonalności. Biegłość w posługiwaniu się Kubernetesem jest dziś receptą na sukces. Aby ją zdobyć, musisz zainwestować trochę zaangażowania i nieco ponad 20 godzin. Resztę znajdziesz w tej książce. Oto znakomity przewodnik po Kubernetesie. Dzięki niemu w ciągu 22 godzinnych lekcji poznasz najważniejsze możliwości Kubernetesa. Od początku będziesz się koncentrować na praktyce: dzięki codziennym ćwiczeniom, przykładom i laboratoriom zdobędziesz biegłość w używaniu najlepszych narzędzi Kubernetesa zgodnie ze sprawdzonymi praktykami. Dowiesz się, jak definiować aplikacje w manifestach YAML, nauczysz się konfigurować ruch sieciowy i uruchamiać zadania wsadowe. Płynnie przejdziesz do pracy w środowisku produkcyjnym i zapewnisz aplikacji wysoki poziom bezpieczeństwa. Zapoznasz się też z zagadnieniami zaawansowanymi, takimi jak skalowanie aplikacji w górę i w dół, kontrola dostępu oparta na rolach, a także używanie Kubernetesa jako platformy dla funkcji bezserwerowych i jako klastra wieloarchitekturowego. Najciekawsze zagadnienia ujęte w książce: cykl życia aplikacji Kubernetesa bezpieczeństwo w Kubernetesie wdrażanie aplikacji w klastrach Kubernetes tworzenie aplikacji skalowalnych i odpornych na błędy Kubernetes jako platforma dla nowych technologii Kubernetes: wystarczą Ci 22 godziny!
Nauka programowania dla początkujących: podejście graficzne
Diana Domańska, Krzysztof Gdawiec
„Niniejsza książka jest łagodnym wprowadzeniem w świat programowania. Okazuje się, że nie musimy być geniuszami komputerowymi, aby nauczyć się programować. Większość ludzi ma ograniczone pojęcie o budowie i działaniu samochodu czy motocykla, ale nie powstrzymuje ich to przed tym, aby zasiąść za kółkiem i jechać. Nie musimy znać od podstaw budowy i zasad działania komputerów, aby móc ich używać. Podobnie jest z programowaniem. W dzisiejszych czasach mamy do dyspozycji wiele różnych języków programowania. Naukę możemy zacząć od każdego z nich, ale w przypadku jednych języków będzie to proces prostszy, a w przypadku innych – trudniejszy. Jak mówi chińskie przysłowie: „Jeden obraz wart więcej niż tysiąc słów” – dlatego do nauki programowania wykorzystamy język, który nastawiony jest na tworzenie obrazów. Tym językiem jest Processing. Jest on dialektem języka Java, najpopularniejszego języka programowania (październik 2016) według rankingu TIOBE1. Został zaprojektowany z myślą o artystach, dzięki czemu jest bardzo prosty do nauki. Najlepszym sposobem nauki programowania jest pisanie, pisanie i jeszcze raz pisanie programów. Samo przeczytanie książki nie sprawi, drogi Czytelniku, że posiądziesz umiejętność programowania. Dlatego w trakcie lektury powinieneś przepisywać przykładowe programy, modyfikować je oraz używać ich jako zachęty do pisania własnych programów. Jeśli postąpisz według tych rad, to po przeczytaniu tej książki z pewnością będziesz wiedzieć wiele o procesie programowania. Co prawda po ukończeniu lektury nie będziesz guru programowania, ale nauczysz się podstaw programowania komputerów i posiądziesz wiedzę, która umożliwi Ci pójście różnymi ścieżkami. Może nawet w przyszłości zostaniesz zawodowym programistą, czego Ci życzymy. Książka została przewidziana dla osób, które nigdy wcześniej nie miały styczności z programowaniem. Z tego powodu wiele pojęć jest omawianych w bardzo szczegółowy sposób. Osobom, które już mają doświadczenie w programowaniu, może się to wydać nudne, ale i dla nich znajdzie się coś w tej książce: będą miały okazję zaznajomić się z podstawami języka Processing. Od Czytelnika nie wymagamy znajomości żadnych zaawansowanych narzędzi. Jedynymi wymaganiami są znajomość elementów szkolnej matematyki i chęć nauczenia się programowania. Pomimo że nauka programowania w książce odbywa się w języku Processing, to nabyta wiedza pozwoli na łatwe przejście do nauki programowania w innych językach, takich jak C, C++, C# czy Java”. (– ze Wstępu)
Nauka programowania opartego na testach. Jak pisać przejrzysty kod w kilku językach programowania
Saleem Siddiqui
Od oprogramowania wymaga się solidności i poprawności, a równocześnie oczekuje wydajnego działania i skalowalności. Jako programista odpowiadasz za zapewnienie aplikacjom tych właśnie cech. Niezależnie od tego, jakiego języka programowania używasz, praca zgodnie z paradygmatem TDD umożliwi Ci otrzymanie testowalnego kodu o wysokiej jakości. Choć te korzyści przeważają nad niedogodnościami podejścia TDD, wielu programistów narzeka na czasochłonność, pracochłonność i sprawiającą problemy implementację programowania opartego na testach. To przewodnik dla programistów, którzy chcą stosować podejście TDD w swojej codziennej praktyce. Pokazuje, jak korzystać z programowania sterowanego testami podczas pracy w trzech różnych językach: Go, JavaScripcie i Pythonie. Dzięki tej książce zrozumiesz, w jaki sposób zastosować klasyczny paradygmat "dziel i zwyciężaj" do budowania testów jednostkowych i w efekcie radzić sobie nawet z bardzo rozbudowaną architekturą oprogramowania. Liczne przykłady o stopniowo rosnącym poziomie zaawansowania pozwolą Ci płynnie nabierać wprawy i pewności w tworzeniu testów jednostkowych, a także ich używaniu. Szybko się przekonasz, że wprowadzenie TDD do codziennej praktyki kodowania jest bardzo opłacalną decyzją: kod będzie czysty, zrozumiały, elegancki i prosty w utrzymaniu! W książce między innymi: działanie TDD w różnych językach, frameworkach testowych i koncepcjach domenowych TDD a ciągła integracja konfiguracja środowiska ciągłej integracji refaktoryzacja i przeprojektowywanie przy użyciu TDD testy jednostkowe w JavaScripcie jak TDD ułatwia pisanie czystego kodu w Go, JavaScripcie i Pythonie TDD: napisz kod, któremu można zaufać!
Nauka programowania. Rusz głową!
Eric Freeman
Przewodnik po kodowaniu i myśleniu komputacyjnym Programista to bardzo szczególny typ specjalisty. Jeśli uważasz, że myśli w inny sposób niż tak zwani normalni ludzie, to masz rację. Dobra wiadomość jest taka, że i Ty możesz się nauczyć myślenia komputacyjnego - umiejętności, która się przydaje niezależnie od charakteru rozwiązywanego problemu, środowiska czy języka programowania. Tylko w ten sposób można od początku nauki programowania pisać przejrzysty, uporządkowany, znakomity kod, zgodny z najlepszymi praktykami wypracowanymi przez mistrzów. Innymi słowy: pracować jak profesjonalny programista. Ta książka jest niezwykłym podręcznikiem programowania. Być może wygląda nieco dziwacznie, ale prędko się przekonasz, że to podręcznik jest wyjątkowo skuteczny: w końcu jego formuła została opracowana na podstawie najlepszych osiągnięć neurologii i kognitywistyki. W ten sposób Twój mózg się zaangażuje i błyskawicznie przyswoi sobie zasady programowania w Pythonie. Autor wykorzystał oczywistą prawdę, że najszybciej uczymy się wtedy, gdy uwzględnimy specyfikę działania własnego mózgu! Najpierw więc się zainteresujesz, potem zaangażujesz, wreszcie przygotujesz sobie warsztat pracy, czyli zainstalujesz Pythona. Później zaczniesz ćwiczyć myślenie komputacyjne i oczywiście napiszesz swój pierwszy program. A dalej będzie coraz ciekawiej... W tej książce między innymi: Istotne koncepcje programistyczne Zasady programowania w Pythonie Funkcje i rekurencja Programowanie obiektowe Tworzenie API dla aplikacji internetowych Widgety i zdarzenia Neurony płoną. Emocje szaleją. Tak napiszesz kod godny mistrza!
Nauka programowania. Rusz głową!
Eric Freeman
Przewodnik po kodowaniu i myśleniu komputacyjnym Programista to bardzo szczególny typ specjalisty. Jeśli uważasz, że myśli w inny sposób niż tak zwani normalni ludzie, to masz rację. Dobra wiadomość jest taka, że i Ty możesz się nauczyć myślenia komputacyjnego - umiejętności, która się przydaje niezależnie od charakteru rozwiązywanego problemu, środowiska czy języka programowania. Tylko w ten sposób można od początku nauki programowania pisać przejrzysty, uporządkowany, znakomity kod, zgodny z najlepszymi praktykami wypracowanymi przez mistrzów. Innymi słowy: pracować jak profesjonalny programista. Ta książka jest niezwykłym podręcznikiem programowania. Być może wygląda nieco dziwacznie, ale prędko się przekonasz, że to podręcznik jest wyjątkowo skuteczny: w końcu jego formuła została opracowana na podstawie najlepszych osiągnięć neurologii i kognitywistyki. W ten sposób Twój mózg się zaangażuje i błyskawicznie przyswoi sobie zasady programowania w Pythonie. Autor wykorzystał oczywistą prawdę, że najszybciej uczymy się wtedy, gdy uwzględnimy specyfikę działania własnego mózgu! Najpierw więc się zainteresujesz, potem zaangażujesz, wreszcie przygotujesz sobie warsztat pracy, czyli zainstalujesz Pythona. Później zaczniesz ćwiczyć myślenie komputacyjne i oczywiście napiszesz swój pierwszy program. A dalej będzie coraz ciekawiej... W tej książce między innymi: Istotne koncepcje programistyczne Zasady programowania w Pythonie Funkcje i rekurencja Programowanie obiektowe Tworzenie API dla aplikacji internetowych Widgety i zdarzenia Neurony płoną. Emocje szaleją. Tak napiszesz kod godny mistrza!
Nauka programowania. Rusz głową!
Eric Freeman
Przewodnik po kodowaniu i myśleniu komputacyjnym Programista to bardzo szczególny typ specjalisty. Jeśli uważasz, że myśli w inny sposób niż tak zwani normalni ludzie, to masz rację. Dobra wiadomość jest taka, że i Ty możesz się nauczyć myślenia komputacyjnego - umiejętności, która się przydaje niezależnie od charakteru rozwiązywanego problemu, środowiska czy języka programowania. Tylko w ten sposób można od początku nauki programowania pisać przejrzysty, uporządkowany, znakomity kod, zgodny z najlepszymi praktykami wypracowanymi przez mistrzów. Innymi słowy: pracować jak profesjonalny programista. Ta książka jest niezwykłym podręcznikiem programowania. Być może wygląda nieco dziwacznie, ale prędko się przekonasz, że to podręcznik jest wyjątkowo skuteczny: w końcu jego formuła została opracowana na podstawie najlepszych osiągnięć neurologii i kognitywistyki. W ten sposób Twój mózg się zaangażuje i błyskawicznie przyswoi sobie zasady programowania w Pythonie. Autor wykorzystał oczywistą prawdę, że najszybciej uczymy się wtedy, gdy uwzględnimy specyfikę działania własnego mózgu! Najpierw więc się zainteresujesz, potem zaangażujesz, wreszcie przygotujesz sobie warsztat pracy, czyli zainstalujesz Pythona. Później zaczniesz ćwiczyć myślenie komputacyjne i oczywiście napiszesz swój pierwszy program. A dalej będzie coraz ciekawiej... W tej książce między innymi: Istotne koncepcje programistyczne Zasady programowania w Pythonie Funkcje i rekurencja Programowanie obiektowe Tworzenie API dla aplikacji internetowych Widgety i zdarzenia Neurony płoną. Emocje szaleją. Tak napiszesz kod godny mistrza!
Nauka robotyki z językiem Python
Lentin Joseph
Roboty wkraczają do różnych dziedzin naszego życia, więc robotyka nabiera coraz większego znaczenia. Nauka o robotach, ich budowaniu i programowaniu jest dość złożoną, ale fascynującą dziedziną. Jej opanowanie wymaga wysiłku, jednak aby zaprojektować łatwy do wykorzystania interfejs, wystarczy posłużyć się kilkoma programami narzędziowymi oraz językiem Python. W ten sposób można zaprojektować zachowania robota, określić, w jaki sposób będzie zmierzał do celu, reagował na sygnały otaczającego świata, czy sprawić, by oczekiwał na instrukcje. Dzięki tej książce można się nauczyć, jak z wykorzystaniem języka Python oraz kilku popularnych frameworków stosowanych w robotyce, takich jak system ROS, budować autonomiczne roboty mobilne. Omówiono w niej również inne frameworki programistyczne, w tym również te dla Pythona. Aby równocześnie pokazać praktyczne wykorzystanie przedstawianego materiału, omówiono krok po kroku proces budowania robota-służącego ChefBot, który na przykład może podawać posiłki w domu, hotelu czy restauracji. W tej książce przedstawiono: zwięzłe podstawy robotyki i zasady projektowania oprogramowania robotów, aspekty projektowania CAD 2D i 3D z wykorzystaniem programów LibreCAD i Blender, budowanie modeli 3D z wykorzystaniem API Blender dla Pythona, zagadnienia sprzętowej warstwy projektowania robota, zasady obsługi sensorów robotów, w tym programowanie sensorów wizji, obsługę rozpoznawania mowy i syntezę mowy z wykorzystaniem Pythona i ROS, implementację sztucznej inteligencji za pomocą Pythona, zagadnienie testowania i kalibrowania robota. Przekonaj się, jak fascynujące jest programowanie robotów! Lentin Joseph — inżynier elektroniki, entuzjasta robotyki i ekspert w dziedzinie systemów wbudowanych. Szczególnie interesuje się robotyką, przetwarzaniem obrazu i zastosowaniem języka Python w programowaniu robotów. Jest również znawcą wielu platform oprogramowania robotów, takich jak system ROS (ang. Robot Operating system), V-REP i Actin. Biegle posługuje się bibliotekami przetwarzania obrazu, w tym OpenCV, OpenNI i PCL. Specjalizuje się również w dziedzinie projektowania 3D i programowania systemów wbudowanych na platformach Arduino i Launchpad Stellaris. Jest właścicielem firmy Qbotics Labs zajmującej się rozwijaniem robotyki i jej zastosowaniami w wielu dziedzinach.
Neha Shrivastava, Rishabh Verma
With the rise in the number of tools and technologies available today, developers and architects are always exploring ways to create better and smarter solutions. Before, the differences between target platforms was a major roadblock, but that's not the case now. .NET Core 2.0 By Example will take you on an exciting journey to building better software.This book provides fresh and relevant content to .NET Core 2.0 in a succinct format that’s enjoyable to read. It also delivers concepts, along with the implications, design decisions, and potential pitfalls you might face when targeting Linux and Windows systems, in a logical and simple way.With the .NET framework at its center, the book comprises of five varied projects: a multiplayer Tic-tac-toe game; a real-time chat application, Let'sChat; a chatbot; a microservice-based buying-selling application; and a movie booking application. You will start each chapter with a high-level overview of the content, followed by the above example applications described in detail. By the end of each chapter, you will not only be proficient with the concepts, but you’ll also have created a tangible component in the application.By the end of the book, you will have built five solid projects using all the tools and support provided by the .NET Core 2.0 framework.