Techniki programowania
Erik Westra
Python has evolved over the years and has become the primary choice of developers in various fields. The purpose of this book is to help readers develop readable, reliable, and maintainable programs in Python. Starting with an introduction to the concept of modules and packages, this book shows how you can use these building blocks to organize a complex program into logical parts and make sure those parts are working correctly together. Using clearly written, real-world examples, this book demonstrates how you can use modular techniques to build better programs. A number of common modular programming patterns are covered, including divide-and-conquer, abstraction, encapsulation, wrappers and extensibility. You will also learn how to test your modules and packages, how to prepare your code for sharing with other people, and how to publish your modules and packages on GitHub and the Python Package Index so that other people can use them. Finally, you will learn how to use modular design techniques to be a more effective programmer.
MongoDB Cookbook. Modern Database Management Made Easy - Second Edition
Cyrus Dasadia, Amol Nayak
MongoDB is a high-performance and feature-rich NoSQL database that forms the backbone of the systems that power many different organizations – it’s easy to see why it’s the most popular NoSQL database on the market. Packed with many features that have become essential for many different types of software professionals and incredibly easy to use, this cookbook contains many solutions to the everyday challenges of MongoDB, as well as guidance on effective techniques to extend your skills and capabilities.This book starts with how to initialize the server in three different modes with various configurations. You will then be introduced to programming language drivers in both Java and Python. A new feature in MongoDB 3 is that you can connect to a single node using Python, set to make MongoDB even more popular with anyone working with Python. You will then learn a range of further topics including advanced query operations, monitoring and backup using MMS, as well as some very useful administration recipes including SCRAM-SHA-1 Authentication. Beyond that, you will also find recipes on cloud deployment, including guidance on how to work with Docker containers alongside MongoDB, integrating the database with Hadoop, and tips for improving developer productivity.Created as both an accessible tutorial and an easy to use resource, on hand whenever you need to solve a problem, MongoDB Cookbook will help you handle everything from administration to automation with MongoDB more effectively than ever before.
MongoDB Essentials. A quick introduction
The MongoDB Team
Modern applications demand flexibility, speed, and intelligence, and MongoDB delivers all three. This mini guide wastes no time, offering a concise, practical introduction to handling data flexibly and efficiently with MongoDB. MongoDB Essentials helps developers, architects, database administrators, and decision makers get started quickly and confidently.The book introduces MongoDB’s core principles, from the document data model to its distributed architecture, including replica sets and sharding. It then helps you build hands-on skills such as installing MongoDB, designing effective data schemas, performing CRUD operations, and working with the aggregation pipeline. You’ll discover performance tips along the way and learn how AI-enhanced tools like Atlas Search and Atlas Vector Search power intelligent application development.With clear explanations and a practical approach, this book gives you the foundation and skills you need to start working with MongoDB right away.*Email sign-up and proof of purchase required
Simon Holmes
Mongoose is all about putting the data model where it should be: in your application. You can control everything from within your application in JavaScript, eliminating the need to work with the database or a separate management system.Mongoose for Application Development is a practical, hands-on guide that takes you from installing the technology stack through the steps of developing a web application. It covers the key features of Mongoose and how to use them to rapidly develop a Node.js and MongoDB application.This book introduces the full technology stack of Node.js, MongoDB, Express, and Mongoose. It will take you through the process of building an application on this stack with a focus on how Mongoose makes the process quicker and easier.You will see how Mongoose removes a layer of complexity when dealing with MongoDB whilst giving you more control over your data from your application. You will learn how to define schemas and models for your data in JavaScript. Using these schemas and models, you will learn how to build the cornerstone of any web application that will include CRUD operations (creating, reading, updating, and deleting data). If you want to learn how to build applications quickly and efficiently using Node.js, then Mongoose and this book are ideal for you.Using practical examples throughout, Mongoose for Application Development not only teaches you about the concepts of Mongoose, but walks through how to use them to build a real-life application.
Michael Hartlef
Monkey is a programming language and toolset that allows its user to develop modern 2D games easily for mobile and other platforms like iOS, Android, HTML5, FLASH, OSX, Windows and XNA. With Monkey you can create best selling games in a matter of weeks, instead of months.Monkey Game Development Beginner's Guide provides easy-to-follow step by step instructions on how to create eight different 2D games and how to deploy them to various platforms and markets. Learning about the structure of Monkey and how everything works together you will quickly create eight classical games and publish them to the modern app markets. Throughout the book you will learn important game development techniques like collision detection, handling player input with mouse, keyboard or touch events and creating challenging computer AI. The author explains how to emit particle effects, play sound and music files, use sprite sheets, load or save high-score tables and handle different device resolutions. Finally you will learn how to monetize your games so you can generate revenue.
Evgenii Agafonov
In an age when computer processors are being developed to contain more and more cores, multithreading is a key factor for creating scalable, effective, and responsive applications. If you fail to do it correctly, it can lead to puzzling problems that take a huge amount of time to resolve. Therefore, having a solid understanding of multithreading is a must for the modern application developer. Multithreading in C# 5.0 Cookbook is an easy-to-understand guide to the most puzzling programming problems. This book will guide you through practical examples dedicated to various aspects of multithreading in C# on Windows and will give you a good basis of practical knowledge which you can then use to program your own scalable and reliable multithreaded applications. This book guides you through asynchronous and parallel programming from basic examples to practical, real-world solutions to complex problems. You will start from the very beginning, learning what a thread is, and then proceed to learn new concepts based on the information you get from the previous examples.After describing the basics of threading, you will be able to grasp more advanced concepts like Task Parallel Library and C# asynchronous functions. Then, we move towards parallel programming, starting with basic data structures and gradually progressing to the more advanced patterns. The book concludes with a discussion of the specifics of Windows 8 application programming, giving you a complete understanding of how Windows 8 applications are different and how to program asynchronous applications for Windows 8.
Multithreading with C# Cookbook. Quick answers to common problems - Second Edition
Evgenii Agafonov
Multi-core processors are synonymous with computing speed and power in today’s world, which is why multithreading has become a key concern for C# developers. Multithreaded code helps you create effective, scalable, and responsive applications.This is an easy-to-follow guide that will show you difficult programming problems in context. You will learn how to solve them with practical, hands-on, recipes. With these recipes, you’ll be able to start creating your own scalable and reliable multithreaded applications. Starting from learning what a thread is, we guide you through the basics and then move on to more advanced concepts such as task parallel libraries, C# asynchronous functions, and much more.Rewritten to the latest C# specification, C# 6, and updated with new and modern recipes to help you make the most of the hardware you have available, this book will help you push the boundaries of what you thought possible in C#.
Myśl w języku Java! Nauka programowania
Allen B. Downey, Chris Mayfield
Myśl w języku Java! Nauka programowania Zacznij myśleć jak programista! Naucz się łączyć umiejętności płynące z różnych dziedzin: matematyki, inżynierii i nauk przyrodniczych. Różnorodna wiedza ułatwi Ci pokonywanie przeszkód w pracy programisty — dzięki niej zdefiniujesz problem i sformułujesz jasne i precyzyjne rozwiązanie. Jak się okazuje, te wszystkie trudne umiejętności można sobie przyswoić, ucząc się programowania. Znajomość języka Java stanie się dodatkową korzyścią — jest to język o ugruntowanej pozycji, lubiany, dojrzały i najzwyczajniej bardzo przydatny. Trzymasz w ręku zwięzły podręcznik programowania napisany z myślą o osobach mających niewielkie lub zerowe doświadczenie w tej materii. Przedstawiono w nim najbardziej podstawowe zagadnienia, a poszczególne koncepcje zaprezentowano w logicznej kolejności. Sam język Java nie został może wyczerpująco opisany, jednak ważniejsze konstrukcje, strategie i techniki programistyczne zostały pokazane w bardzo zrozumiały i przystępny sposób. Poszczególne koncepcje zilustrowano praktycznymi przykładami kodu. Ten starannie przemyślany układ treści sprawi, że „myślenie jak informatyk” bardzo szybko przestanie być Twoim problemem! Poznawaj po jednym zagadnieniu naraz: opanuj skomplikowane tematy, rozbijając je na szereg drobnych kroków popartych przykładami. Zrozum sposób formułowania problemów, myśl kreatywnie o rozwiązaniach i pisz programy klarownie i precyzyjnie. Wybierz techniki programowania, które najlepiej sprawdzą się w Twojej sytuacji i przećwicz ważną umiejętność debugowania kodu. Odkryj relacje pomiędzy danymi wejściowymi i wyjściowymi oraz poznaj instrukcje decyzyjne i pętle, klasy i metody, łańcuchy znakowe i tablice. Wykonaj ćwiczenia związane z grami słownymi, grafiką komputerową, zagadkami i grami karcianymi. Java — już wkrótce zaczniesz myśleć jak informatyk!
Tom Ryder
Network monitoring requires significantly more than just pinging hosts. This cookbook will help you to comprehensively test your networks' major functions on a regular basis.Nagios Core Administration Cookbook will show you how to use Nagios Core as a monitoring framework that understands the layers and subtleties of the network for intelligent monitoring and notification behaviour. Nagios Core Administration Guide introduces the reader to methods of extending Nagios Core into a network monitoring solution. The book begins by covering the basic structure of hosts, services, and contacts and then goes on to discuss advanced usage of checks and notifications, and configuring intelligent behaviour with network paths and dependencies. The cookbook emphasizes using Nagios Core as an extensible monitoring framework. By the end of the book, you will learn that Nagios Core is capable of doing much more than pinging a host or to check if websites respond.
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.
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.
Nicolas Leiva, Michael Kashin
Go’s built-in first-class concurrency mechanisms make it an ideal choice for long-lived low-bandwidth I/O operations, which are typical requirements of network automation and network operations applications.This book provides a quick overview of Go and hands-on examples within it to help you become proficient with Go for network automation. It’s a practical guide that will teach you how to automate common network operations and build systems using Go.The first part takes you through a general overview, use cases, strengths, and inherent weaknesses of Go to prepare you for a deeper dive into network automation, which is heavily reliant on understanding this programming language. You’ll explore the common network automation areas and challenges, what language features you can use in each of those areas, and the common software tools and packages. To help deepen your understanding, you’ll also work through real-world network automation problems and apply hands-on solutions to them.By the end of this book, you’ll be well-versed with Go and have a solid grasp on network automation.
Claus Töpke
Network programming and automation, unlike traditional networking, is a modern-day skill that helps in configuring, managing, and operating networks and network devices. This book will guide you with important information, helping you set up and start working with network programming and automation.With Network Programming and Automation Essentials, you’ll learn the basics of networking in brief. You’ll explore the network programming and automation ecosystem, learn about the leading programmable interfaces, and go through the protocols, tools, techniques, and technologies associated with network programming. You’ll also master network automation using Python and Go with hands-on labs and real network emulation in this comprehensive guide.By the end of this book, you’ll be well equipped to program and automate networks efficiently.
Clement Nedelcu
Nginx is a lightweight HTTP server designed for high-traffic websites, with network scalability as the primary objective. With the advent of high speed Internet access, short loading times and fast transfer rates have become a necessity. This free, open source solution will either come as a full replacement of other software such as Apache, or stand in front of your existing infrastructure to improve its overall speed.This book is a detailed guide to setting up Nginx in different ways that correspond to actual production situations: as a standalone server, as a reverse proxy, interacting with applications via FastCGI, and more. In addition, this complete directive reference will be your best friend at all stages of the configuration and maintenance processes.This book is the perfect companion for both Nginx beginners and experienced administrators. For beginners, it will take you through the complete process of setting up this lightweight HTTP server on your system and configuring its various modules so it does exactly what you need quickly and securely. For more experienced administrators, this book provides different approaches that can help you make the most of your current infrastructure. Nginx can be employed in many situations, whether you are looking to construct an entirely new web-serving architecture or simply want to integrate an efficient tool to optimize your site loading speeds.
David Mark Clements
The principles of asynchronous event-driven programming are perfect for today's web, where efficient real-time applications and scalability are at the forefront. Server-side JavaScript has been here since the 90's but Node got it right. With a thriving community and interest from Internet giants, it could be the PHP of tomorrow.Node Cookbook shows you how to transfer your JavaScript skills to server side programming. With simple examples and supporting code, Node Cookbook talks you through various server side scenarios often saving you time, effort, and trouble by demonstrating best practices and showing you how to avoid security faux pas.Beginning with making your own web server, the practical recipes in this cookbook are designed to smoothly progress you to making full web applications, command line applications, and Node modules. Node Cookbook takes you through interfacing with various database backends such as MySQL, MongoDB and Redis, working with web sockets, and interfacing with network protocols, such as SMTP. Additionally, there are recipes on correctly performing heavy computations, security implementations, writing, your own Node modules and different ways to take your apps live.
Mario Casciaro
Node.js is a massively popular software platform that lets you use JavaScript to easily create scalable server-side applications. It allows you to create efficient code, enabling a more sustainable way of writing software made of only one language across the full stack, along with extreme levels of reusability, pragmatism, simplicity, and collaboration. Node.js is revolutionizing the web and the way people and companies create their software.In this book, we will take you on a journey across various ideas and components, and the challenges you would commonly encounter while designing and developing software using the Node.js platform. You will also discover the Node.js way of dealing with design and coding decisions.The book kicks off by exploring the fundamental principles and components that define the platform. It then shows you how to master asynchronous programming and how to design elegant and reusable components using well-known patterns and techniques. The book rounds off by teaching you the various approaches to scale, distribute, and integrate your Node.js application.