Programowanie
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ć!