0
Your cart

Your cart is empty

Browse All Departments
Price
  • R50 - R100 (1)
  • R100 - R250 (11)
  • R250 - R500 (43)
  • R500+ (714)
  • -
Status
Format
Author / Contributor
Publisher

Books > Computing & IT > Computer programming > Object-oriented programming (OOP)

Getting Started with Python - Understand key data structures and use Python in object-oriented programming (Paperback):... Getting Started with Python - Understand key data structures and use Python in object-oriented programming (Paperback)
Fabrizio Romano, Benjamin Baka, Dusty Phillips
R1,517 Discovery Miles 15 170 Ships in 18 - 22 working days

Harness the power of Python objects and data structures to implement algorithms for analyzing your data and efficiently extracting information Key Features Turn your designs into working software by learning the Python syntax Write robust code with a solid understanding of Python data structures Understand when to use the functional or the OOP approach Book DescriptionThis Learning Path helps you get comfortable with the world of Python. It starts with a thorough and practical introduction to Python. You'll quickly start writing programs, building websites, and working with data by harnessing Python's renowned data science libraries. With the power of linked lists, binary searches, and sorting algorithms, you'll easily create complex data structures, such as graphs, stacks, and queues. After understanding cooperative inheritance, you'll expertly raise, handle, and manipulate exceptions. You will effortlessly integrate the object-oriented and not-so-object-oriented aspects of Python, and create maintainable applications using higher level design patterns. Once you've covered core topics, you'll understand the joy of unit testing and just how easy it is to create unit tests. By the end of this Learning Path, you will have built components that are easy to understand, debug, and can be used across different applications. This Learning Path includes content from the following Packt products: Learn Python Programming - Second Edition by Fabrizio Romano Python Data Structures and Algorithms by Benjamin Baka Python 3 Object-Oriented Programming by Dusty Phillips What you will learn Use data structures and control flow to write code Use functions to bundle together a sequence of instructions Implement objects in Python by creating classes and defining methods Design public interfaces using abstraction, encapsulation and information hiding Raise, define, and manipulate exceptions using special error objects Create bulletproof and reliable software by writing unit tests Learn the common programming patterns and algorithms used in Python Who this book is forIf you are relatively new to coding and want to write scripts or programs to accomplish tasks using Python, or if you are an object-oriented programmer for other languages and seeking a leg up in the world of Python, then this Learning Path is for you. Though not essential, it will help you to have basic knowledge of programming and OOP.

Introduction to Unity 3D with C# - The Exodus Adventure (Paperback, 2nd For Unity 2019.1 ed.): Biblebyte Books Introduction to Unity 3D with C# - The Exodus Adventure (Paperback, 2nd For Unity 2019.1 ed.)
Biblebyte Books
R2,043 Discovery Miles 20 430 Ships in 18 - 22 working days
Go Programming Cookbook - Over 85 recipes to build modular, readable, and testable Golang applications across various domains,... Go Programming Cookbook - Over 85 recipes to build modular, readable, and testable Golang applications across various domains, 2nd Edition (Paperback, 2nd Revised edition)
Aaron Torres
R1,152 Discovery Miles 11 520 Ships in 18 - 22 working days

Tackle the trickiest of problems in Go programming with this practical guide Key Features Develop applications for different domains using modern programming techniques Tackle common problems when it comes to parallelism, concurrency, and reactive programming in Go Work with ready-to-execute code based on the latest version of Go Book DescriptionGo (or Golang) is a statically typed programming language developed at Google. Known for its vast standard library, it also provides features such as garbage collection, type safety, dynamic-typing capabilities, and additional built-in types. This book will serve as a reference while implementing Go features to build your own applications. This Go cookbook helps you put into practice the advanced concepts and libraries that Golang offers. The recipes in the book follow best practices such as documentation, testing, and vendoring with Go modules, as well as performing clean abstractions using interfaces. You'll learn how code works and the common pitfalls to watch out for. The book covers basic type and error handling, and then moves on to explore applications, such as websites, command-line tools, and filesystems, that interact with users. You'll even get to grips with parallelism, distributed systems, and performance tuning. By the end of the book, you'll be able to use open source code and concepts in Go programming to build enterprise-class applications without any hassle. What you will learn Work with third-party Go projects and modify them for your use Write Go code using modern best practices Manage your dependencies with the new Go module system Solve common problems encountered when dealing with backend systems or DevOps Explore the Go standard library and its uses Test, profile, and fine-tune Go applications Who this book is forIf you're a web developer, programmer, or enterprise developer looking for quick solutions to common and not-so-common problems in Go programming, this book is for you. Basic knowledge of the Go language is assumed.

Java uben mit dem Plotter - Ein UEberblick fur Studierende und Einsteiger (German, Paperback, 1. Aufl. 2018): Stephan Euler Java uben mit dem Plotter - Ein UEberblick fur Studierende und Einsteiger (German, Paperback, 1. Aufl. 2018)
Stephan Euler
R323 Discovery Miles 3 230 Ships in 10 - 15 working days

Dieses essential zeigt, wie man in Java-Anwendungen mit dem Plotter grafische Darstellungen erzeugen kann. Mit dem Plotter-Objekt - angelehnt an den Stiftplotter, der sich mit Steuerbefehlen uber Papier bewegt - wird eine einfache Schnittstelle zur grafischen Programmierung angeboten. Bereits beim Einstieg in die Programmierung entstehen so erste grafische Darstellungen wie z.B. Funktionsverlaufe und Simulationsergebnisse. Durch einfache Programmierbeispiele und Aufgaben wird der Umgang mit grundlegenden Konzepten wie Variablen, Kontrollstrukturen, Methoden und Klassen geubt.

Mastering Object-Oriented Python - Build powerful applications with reusable code using OOP design patterns and Python 3.7, 2nd... Mastering Object-Oriented Python - Build powerful applications with reusable code using OOP design patterns and Python 3.7, 2nd Edition (Paperback, 2nd Revised edition)
Steven F Lott
R1,256 Discovery Miles 12 560 Ships in 18 - 22 working days

Gain comprehensive insights into programming practices, and code portability and reuse to build flexible and maintainable apps using object-oriented principles Key Features Extend core OOP techniques to increase integration of classes created with Python Explore various Python libraries for handling persistence and object serialization Learn alternative approaches for solving programming problems, with different attributes to address your problem domain Book DescriptionObject-oriented programming (OOP) is a relatively complex discipline to master, and it can be difficult to see how general principles apply to each language's unique features. With the help of the latest edition of Mastering Objected-Oriented Python, you'll be shown how to effectively implement OOP in Python, and even explore Python 3.x. Complete with practical examples, the book guides you through the advanced concepts of OOP in Python, and demonstrates how you can apply them to solve complex problems in OOP. You will learn how to create high-quality Python programs by exploring design alternatives and determining which design offers the best performance. Next, you'll work through special methods for handling simple object conversions and also learn about hashing and comparison of objects. As you cover later chapters, you'll discover how essential it is to locate the best algorithms and optimal data structures for developing robust solutions to programming problems with minimal computer processing. Finally, the book will assist you in leveraging various Python features by implementing object-oriented designs in your programs. By the end of this book, you will have learned a number of alternate approaches with different attributes to confidently solve programming problems in Python. What you will learn Explore a variety of different design patterns for the __init__() method Learn to use Flask to build a RESTful web service Discover SOLID design patterns and principles Use the features of Python 3's abstract base Create classes for your own applications Design testable code using pytest and fixtures Understand how to design context managers that leverage the 'with' statement Create a new type of collection using standard library and design techniques Develop new number types above and beyond the built-in classes of numbers Who this book is forThis book is for developers who want to use Python to create efficient programs. A good understanding of Python programming is required to make the most out of this book. Knowledge of concepts related to object-oriented design patterns will also be useful.

Object-Oriented Methods - A New Comprehensive Study (Paperback): Richmond S. Adebiaye Object-Oriented Methods - A New Comprehensive Study (Paperback)
Richmond S. Adebiaye
R3,327 Discovery Miles 33 270 Ships in 18 - 22 working days
Design Patterns in Swift 5 - Learn how to implement the Gang of Four Design Patterns using Swift 5. Improve your coding skills.... Design Patterns in Swift 5 - Learn how to implement the Gang of Four Design Patterns using Swift 5. Improve your coding skills. (Paperback)
Monika Nyisztor; Karoly Nyisztor
R626 Discovery Miles 6 260 Ships in 18 - 22 working days
Learn Java 12 Programming - A step-by-step guide to learning essential concepts in Java SE 10, 11, and 12 (Paperback): Nick... Learn Java 12 Programming - A step-by-step guide to learning essential concepts in Java SE 10, 11, and 12 (Paperback)
Nick Samoylov
R1,138 Discovery Miles 11 380 Ships in 18 - 22 working days

A comprehensive guide to get started with Java and gain insights into major concepts such as object-oriented, functional, and reactive programming Key Features Strengthen your knowledge of important programming concepts and the latest features in Java Explore core programming topics including GUI programming, concurrency, and error handling Learn the idioms and best practices for writing high-quality Java code Book DescriptionJava is one of the preferred languages among developers, used in everything right from smartphones, and game consoles to even supercomputers, and its new features simply add to the richness of the language. This book on Java programming begins by helping you learn how to install the Java Development Kit. You will then focus on understanding object-oriented programming (OOP), with exclusive insights into concepts like abstraction, encapsulation, inheritance, and polymorphism, which will help you when programming for real-world apps. Next, you'll cover fundamental programming structures of Java such as data structures and algorithms that will serve as the building blocks for your apps. You will also delve into core programming topics that will assist you with error handling, debugging, and testing your apps. As you progress, you'll move on to advanced topics such as Java libraries, database management, and network programming, which will hone your skills in building professional-grade apps. Further on, you'll understand how to create a graphic user interface using JavaFX and learn to build scalable apps by taking advantage of reactive and functional programming. By the end of this book, you'll not only be well versed with Java 10, 11, and 12, but also gain a perspective into the future of this language and software development in general. What you will learn Learn and apply object-oriented principles Gain insights into data structures and understand how they are used in Java Explore multithreaded, asynchronous, functional, and reactive programming Add a user-friendly graphic interface to your application Find out what streams are and how they can help in data processing Discover the importance of microservices and use them to make your apps robust and scalable Explore Java design patterns and best practices to solve everyday problems Learn techniques and idioms for writing high-quality Java code Who this book is forStudents, software developers, or anyone looking to learn new skills or even a language will find this book useful. Although this book is for beginners, professional programmers can benefit from it too. Previous knowledge of Java or any programming language is not required.

Java 11 and 12 - New Features - Learn about Project Amber and the latest developments in the Java language and platform... Java 11 and 12 - New Features - Learn about Project Amber and the latest developments in the Java language and platform (Paperback)
Mala Gupta
R869 Discovery Miles 8 690 Ships in 18 - 22 working days

Enhance your development skills with Java's state-of-the-art features and projects to make your applications leaner and faster Key Features Overcome the challenges involved in migrating to new versions of Java Discover how Oracle has bridged the gap between Java and native code Make the best use of new Java features and libraries in your applications Book DescriptionWith its new six-monthly release cadence, Java is moving forward faster. In addition to planned version releases, a lot of work is currently being undertaken on various Java projects at Oracle. In order to make best use of the new features in their applications and libraries, you must be well-versed with the most recent advancements. Java 11 and 12 - New Features will take you through the latest developments in Java, right from variable type inference and simplified multithreading through to performance improvements, which are covered in depth to help you make your applications more efficient. This book explains the relevance and applicability of Java's new features, and answers your questions on whether to invest in migrating to new Java versions and when to migrate. You'll also get to grips with platform features, such as AppCDS and new garbage collectors, to tune and optimize your application-from reduced launch time and latency to improved performance and throughput. By the end of this book, you will be equipped with a thorough understanding of the new features of Java 11, 12, and Project Amber, and possess the skills to apply them with a view to improving your application's performance. What you will learn Study type interference and how to work with the var type Understand Class-Data Sharing, its benefits, and limitations Discover platform options to reduce your application's launch time Improve application performance by switching garbage collectors Get up to date with the new Java release cadence Define and assess decision criteria for migrating to a new version of Java Who this book is forIf you're an executive or solutions architect responsible for technology selection or Java migration decisions, this Java book is for you. You'll also benefit from this book if you're a computer science enthusiast curious to learn about the latest and upcoming Java features. This book will help you migrate your solutions from Java 8 or older to the latest Java release.

C++ Fundamentals - Hit the ground running with C++, the language that supports tech giants globally (Paperback): Antonio... C++ Fundamentals - Hit the ground running with C++, the language that supports tech giants globally (Paperback)
Antonio Mallia, Francesco Zoffoli
R905 Discovery Miles 9 050 Ships in 18 - 22 working days

Write high-level abstractions while retaining full control of the hardware, performances, and maintainability. Key Features Transform your ideas into modern C++ code, with both C++11 and C++17 Explore best practices for creating high-performance solutions Understand C++ basics and work with concrete real-world examples Book DescriptionC++ Fundamentals begins by introducing you to the C++ compilation model and syntax. You will then study data types, variable declaration, scope, and control flow statements. With the help of this book, you'll be able to compile fully working C++ code and understand how variables, references, and pointers can be used to manipulate the state of the program. Next, you will explore functions and classes - the features that C++ offers to organize a program - and use them to solve more complex problems. You will also understand common pitfalls and modern best practices, especially the ones that diverge from the C++98 guidelines. As you advance through the chapters, you'll study the advantages of generic programming and write your own templates to make generic algorithms that work with any type. This C++ book will guide you in fully exploiting standard containers and algorithms, understanding how to pick the appropriate one for each problem. By the end of this book, you will not only be able to write efficient code but also be equipped to improve the readability, performance, and maintainability of your programs. What you will learn C++ compilation model Apply best practices for writing functions and classes Write safe, generic, and efficient code with templates Explore the containers that the C++ standard offers Discover the new features introduced with C++11, C++14, and C++17 Get to grips with the core language features of C++ Solve complex problems using object-oriented programming in C++ Who this book is forIf you're a developer looking to learn a new powerful language or are familiar with C++ but want to update your knowledge with modern paradigms of C++11, C++14, and C++17, this book is for you. To easily understand the concepts in the book, you must be familiar with the basics of programming.

Java Fundamentals - A fast-paced and pragmatic introduction to one of the world's most popular programming languages... Java Fundamentals - A fast-paced and pragmatic introduction to one of the world's most popular programming languages (Paperback)
Gazihan Alankus, Rogerio Theodoro de Brito, Basheer Ahamed Fazal, Vinicius Isola, Miles Obare
R924 Discovery Miles 9 240 Ships in 18 - 22 working days

Enhance your career options with this well-crafted object-oriented programming language that enjoys the support of an enormous ecosystem of tools and libraries Key Features Get introduced to Java, its features, and its ecosystem Understand how Java uses object-oriented programming Become an expert Java exception handler Book DescriptionSince its inception, Java has stormed the programming world. Its features and functionalities provide developers with the tools needed to write robust cross-platform applications. Java Fundamentals introduces you to these tools and functionalities that will enable you to create Java programs. The book begins with an introduction to the language, its philosophy, and evolution over time, until the latest release. You'll learn how the javac/java tools work and what Java packages are - the way a Java program is usually organized. Once you are comfortable with this, you'll be introduced to advanced concepts of the language, such as control flow keywords. You'll explore object-oriented programming and the part it plays in making Java what it is. In the concluding chapters, you'll get to grips with classes, typecasting, and interfaces, and understand the use of data structures, arrays, strings, handling exceptions, and creating generics. By the end of this book, you will have learned to write programs, automate tasks, and follow advanced courses on algorithms and data structures or explore more advanced Java courses. What you will learn Create and run Java programs Use data types, data structures, and control flow in your code Implement best practices while creating objects Work with constructors and inheritance Understand advanced data structures to organize and store data Employ generics for stronger check-types during compilation Learn to handle exceptions in your code Who this book is forJava Fundamentals is designed for tech enthusiasts who are familiar with some programming languages and want a quick introduction to the most important principles of Java.

Hands-On Object-Oriented Programming with C# - Build maintainable software with reusable code using C# (Paperback): Raihan Taher Hands-On Object-Oriented Programming with C# - Build maintainable software with reusable code using C# (Paperback)
Raihan Taher
R977 Discovery Miles 9 770 Ships in 9 - 17 working days

Enhance your programming skills by learning the intricacies of object oriented programming in C# 8 Key Features Understand the four pillars of OOP; encapsulation, inheritance, abstraction and polymorphism Leverage the latest features of C# 8 including nullable reference types and Async Streams Explore various design patterns, principles, and best practices in OOP Book DescriptionObject-oriented programming (OOP) is a programming paradigm organized around objects rather than actions, and data rather than logic. With the latest release of C#, you can look forward to new additions that improve object-oriented programming. This book will get you up to speed with OOP in C# in an engaging and interactive way. The book starts off by introducing you to C# language essentials and explaining OOP concepts through simple programs. You will then go on to learn how to use classes, interfacesm and properties to write pure OOP code in your applications. You will broaden your understanding of OOP further as you delve into some of the advanced features of the language, such as using events, delegates, and generics. Next, you will learn the secrets of writing good code by following design patterns and design principles. You'll also understand problem statements with their solutions and learn how to work with databases with the help of ADO.NET. Further on, you'll discover a chapter dedicated to the Git version control system. As you approach the conclusion, you'll be able to work through OOP-specific interview questions and understand how to tackle them. By the end of this book, you will have a good understanding of OOP with C# and be able to take your skills to the next level. What you will learn Master OOP paradigm fundamentals Explore various types of exceptions Utilize C# language constructs efficiently Solve complex design problems by understanding OOP Understand how to work with databases using ADO.NET Understand the power of generics in C# Get insights into the popular version control system, Git Learn how to model and design your software Who this book is forThis book is designed for people who are new to object-oriented programming. Basic C# skills are assumed, however, prior knowledge of OOP in any other language is not required.

Java 9 - Building Robust Modular Applications (Paperback): Dr Edward Lavieri, Peter Verhas, Jason Lee Java 9 - Building Robust Modular Applications (Paperback)
Dr Edward Lavieri, Peter Verhas, Jason Lee
R2,370 Discovery Miles 23 700 Ships in 18 - 22 working days
Hands-On RESTful Python Web Services - Develop RESTful web services or APIs with modern Python 3.7, 2nd Edition (Paperback, 2nd... Hands-On RESTful Python Web Services - Develop RESTful web services or APIs with modern Python 3.7, 2nd Edition (Paperback, 2nd Revised edition)
Gaston C Hillar
R1,273 Discovery Miles 12 730 Ships in 18 - 22 working days

Explore the best tools and techniques to create lightweight, maintainable, and scalable Python web services Key Features Combine Python with different data sources to build complex RESTful APIs from scratch Configure and fine-tune your APIs using the best tools and techniques available Use command-line and GUI tools to test CRUD operations performed by RESTful Web Services or APIs Book DescriptionPython is the language of choice for millions of developers worldwide that builds great web services in RESTful architecture. This second edition of Hands-On RESTful Python Web Services will cover the best tools you can use to build engaging web services. This book shows you how to develop RESTful APIs using the most popular Python frameworks and all the necessary stacks with Python, combined with related libraries and tools. You'll learn to incorporate all new features of Python 3.7, Flask 1.0.2, Django 2.1, Tornado 5.1, and also a new framework, Pyramid. As you advance through the chapters, you will get to grips with each of these frameworks to build various web services, and be shown use cases and best practices covering when to use a particular framework. You'll then successfully develop RESTful APIs with all frameworks and understand how each framework processes HTTP requests and routes URLs. You'll also discover best practices for validation, serialization, and deserialization. In the concluding chapters, you will take advantage of specific features available in certain frameworks such as integrated ORMs, built-in authorization and authentication, and work with asynchronous code. At the end of each framework, you will write tests for RESTful APIs and improve code coverage. By the end of the book, you will have gained a deep understanding of the stacks needed to build RESTful web services. What you will learn Select the most appropriate framework based on requirements Develop complex RESTful APIs from scratch using Python Use requests handlers, URL patterns, serialization, and validations Add authentication, authorization, and interaction with ORMs and databases Debug, test, and improve RESTful APIs with four frameworks Design RESTful APIs with frameworks and create automated tests Who this book is forThis book is for web developers who have a working knowledge of Python and would like to build amazing web services by taking advantage of the various frameworks of Python. You should have some knowledge of RESTful APIs.

Hands-On Dependency Injection in Go - Develop clean Go code that is easier to read, maintain, and test (Paperback): Corey Scott Hands-On Dependency Injection in Go - Develop clean Go code that is easier to read, maintain, and test (Paperback)
Corey Scott
R1,042 Discovery Miles 10 420 Ships in 18 - 22 working days

Explore various dependency injection methods in Go such as monkey patching, constructor injection, and method injection Key Features Learn to evaluate Code UX and make it better Explore SOLID principles and understand how they relate to dependency injection Use Google's wire framework to simplify dependence management Book DescriptionHands-On Dependency Injection in Go takes you on a journey, teaching you about refactoring existing code to adopt dependency injection (DI) using various methods available in Go. Of the six methods introduced in this book, some are conventional, such as constructor or method injection, and some unconventional, such as just-in-time or config injection. Each method is explained in detail, focusing on their strengths and weaknesses, and is followed with a step-by-step example of how to apply it. With plenty of examples, you will learn how to leverage DI to transform code into something simple and flexible. You will also discover how to generate and leverage the dependency graph to spot and eliminate issues. Throughout the book, you will learn to leverage DI in combination with test stubs and mocks to test otherwise tricky or impossible scenarios. Hands-On Dependency Injection in Go takes a pragmatic approach and focuses heavily on the code, user experience, and how to achieve long-term benefits through incremental changes. By the end of this book, you will have produced clean code that's easy to test. What you will learn Understand the benefits of DI Explore SOLID design principles and how they relate to Go Analyze various dependency injection patterns available in Go Leverage DI to produce high-quality, loosely coupled Go code Refactor existing Go code to adopt DI Discover tools to improve your code's testability and test coverage Generate and interpret Go dependency graphs Who this book is forHands-On Dependency Injection in Go is for programmers with a few year s experience in any language and a basic understanding of Go. If you wish to produce clean, loosely coupled code that is inherently easier to test, this book is for you.

Hands-On System Programming with C++ - Build performant and concurrent Unix and Linux systems with C++17 (Paperback): Dr. Rian... Hands-On System Programming with C++ - Build performant and concurrent Unix and Linux systems with C++17 (Paperback)
Dr. Rian Quinn
R1,301 Discovery Miles 13 010 Ships in 9 - 17 working days

A hands-on guide to making system programming with C++ easy Key Features Write system-level code leveraging C++17 Learn the internals of the Linux Application Binary Interface (ABI) and apply it to system programming Explore C++ concurrency to take advantage of server-level constructs Book DescriptionC++ is a general-purpose programming language with a bias toward system programming as it provides ready access to hardware-level resources, efficient compilation, and a versatile approach to higher-level abstractions. This book will help you understand the benefits of system programming with C++17. You will gain a firm understanding of various C, C++, and POSIX standards, as well as their respective system types for both C++ and POSIX. After a brief refresher on C++, Resource Acquisition Is Initialization (RAII), and the new C++ Guideline Support Library (GSL), you will learn to program Linux and Unix systems along with process management. As you progress through the chapters, you will become acquainted with C++'s support for IO. You will then study various memory management methods, including a chapter on allocators and how they benefit system programming. You will also explore how to program file input and output and learn about POSIX sockets. This book will help you get to grips with safely setting up a UDP and TCP server/client. Finally, you will be guided through Unix time interfaces, multithreading, and error handling with C++ exceptions. By the end of this book, you will be comfortable with using C++ to program high-quality systems. What you will learn Understand the benefits of using C++ for system programming Program Linux/Unix systems using C++ Discover the advantages of Resource Acquisition Is Initialization (RAII) Program both console and file input and output Uncover the POSIX socket APIs and understand how to program them Explore advanced system programming topics, such as C++ allocators Use POSIX and C++ threads to program concurrent systems Grasp how C++ can be used to create performant system applications Who this book is forIf you are a fresh developer with intermediate knowledge of C++ but little or no knowledge of Unix and Linux system programming, this book will help you learn system programming with C++ in a practical way.

Python 3 Object-Oriented Programming - Build robust and maintainable software with object-oriented design patterns in Python... Python 3 Object-Oriented Programming - Build robust and maintainable software with object-oriented design patterns in Python 3.8, 3rd Edition (Paperback, 3rd Revised edition)
Dusty Phillips
R1,923 Discovery Miles 19 230 Ships in 18 - 22 working days

Uncover modern Python with this guide to Python data structures, design patterns, and effective object-oriented techniques Key Features In-depth analysis of many common object-oriented design patterns that are more suitable to Python's unique style Learn the latest Python syntax and libraries Explore abstract design patterns and implement them in Python 3.8 Book DescriptionObject-oriented programming (OOP) is a popular design paradigm in which data and behaviors are encapsulated in such a way that they can be manipulated together. This third edition of Python 3 Object-Oriented Programming fully explains classes, data encapsulation, and exceptions with an emphasis on when you can use each principle to develop well-designed software. Starting with a detailed analysis of object-oriented programming, you will use the Python programming language to clearly grasp key concepts from the object-oriented paradigm. You will learn how to create maintainable applications by studying higher level design patterns. The book will show you the complexities of string and file manipulation, and how Python distinguishes between binary and textual data. Not one, but two very powerful automated testing systems, unittest and pytest, will be introduced in this book. You'll get a comprehensive introduction to Python's concurrent programming ecosystem. By the end of the book, you will have thoroughly learned object-oriented principles using Python syntax and be able to create robust and reliable programs confidently. What you will learn Implement objects in Python by creating classes and defining methods Grasp common concurrency techniques and pitfalls in Python 3 Extend class functionality using inheritance Understand when to use object-oriented features, and more importantly when not to use them Discover what design patterns are and why they are different in Python Uncover the simplicity of unit testing and why it's so important in Python Explore concurrent object-oriented programming Who this book is forIf you're new to object-oriented programming techniques, or if you have basic Python skills and wish to learn in depth how and when to correctly apply OOP in Python, this is the book for you. If you are an object-oriented programmer for other languages or seeking a leg up in the new world of Python 3.8, you too will find this book a useful introduction to Python. Previous experience with Python 3 is not necessary.

Hands-On Object-Oriented Programming with Kotlin - Build robust software with reusable code using OOP principles and design... Hands-On Object-Oriented Programming with Kotlin - Build robust software with reusable code using OOP principles and design patterns in Kotlin (Paperback)
Abid Khan, Igor Kucherenko
R1,143 Discovery Miles 11 430 Ships in 18 - 22 working days

Learn everything you need to know about object-oriented programming with the latest features of Kotlin 1.3 Key Features A practical guide to understand objects and classes in Kotlin Learn to write asynchronous, non-blocking codes with Kotlin coroutines Explore Encapsulation, Inheritance, Polymorphism, and Abstraction in Kotlin Book DescriptionKotlin is an object-oriented programming language. The book is based on the latest version of Kotlin. The book provides you with a thorough understanding of programming concepts, object-oriented programming techniques, and design patterns. It includes numerous examples, explanation of concepts and keynotes. Where possible, examples and programming exercises are included. The main purpose of the book is to provide a comprehensive coverage of Kotlin features such as classes, data classes, and inheritance. It also provides a good understanding of design pattern and how Kotlin syntax works with object-oriented techniques. You will also gain familiarity with syntax in this book by writing labeled for loop and when as an expression. An introduction to the advanced concepts such as sealed classes and package level functions and coroutines is provided and we will also learn how these concepts can make the software development easy. Supported libraries for serialization, regular expression and testing are also covered in this book. By the end of the book, you would have learnt building robust and maintainable software with object oriented design patterns in Kotlin. What you will learn Get an overview of the Kotlin programming language Discover Object-oriented programming techniques in Kotlin Understand Object-oriented design patterns Uncover multithreading by Kotlin way Understand about arrays and collections Understand the importance of object-oriented design patterns Understand about exception handling and testing in OOP with Kotlin Who this book is forThis book is for programmers and developers who wish to learn Object-oriented programming principles and apply them to build robust and scalable applications. Basic knowledge in Kotlin programming is assumed

C# - Learn by Coding Your Own Project - Gain Outstanding Experience by Coding Your First Windows App and Actively Learn 18... C# - Learn by Coding Your Own Project - Gain Outstanding Experience by Coding Your First Windows App and Actively Learn 18 Thoughtful and Clear-Cut Lessons (Paperback)
William S Rothschild
R366 Discovery Miles 3 660 Ships in 18 - 22 working days
Scala Programming Projects - Build real world projects using popular Scala frameworks like Play, Akka, and Spark (Paperback):... Scala Programming Projects - Build real world projects using popular Scala frameworks like Play, Akka, and Spark (Paperback)
Mikael Valot, Nicolas Jorand
R1,389 Discovery Miles 13 890 Ships in 18 - 22 working days

Discover unique features and powerful capabilities of Scala Programming as you build projects in a wide range of domains Key Features Develop a range of Scala projects from web applications to big data analysis Leverage full power of modern web programming using Play Framework Build real-time data pipelines in Scala with a Bitcoin transaction analysis app Book DescriptionScala is a type-safe JVM language that incorporates object-oriented and functional programming (OOP and FP) aspects. This book gets you started with essentials of software development by guiding you through various aspects of Scala programming, helping you bridge the gap between learning and implementing. You will learn about the unique features of Scala through diverse applications and experience simple yet powerful approaches for software development. Scala Programming Projects will help you build a number of applications, beginning with simple projects, such as a financial independence calculator, and advancing to other projects, such as a shopping application and a Bitcoin transaction analyzer. You will be able to use various Scala features, such as its OOP and FP capabilities, and learn how to write concise, reactive, and concurrent applications in a type-safe manner. You will also learn how to use top-notch libraries such as Akka and Play and integrate Scala apps with Kafka, Spark, and Zeppelin, along with deploying applications on a cloud platform. By the end of the book, you will not only know the ins and outs of Scala, but you will also be able to apply it to solve a variety of real-world problems What you will learn Build, test, and package code using Scala Build Tool Decompose code into functions, classes, and packages for maintainability Implement the functional programming capabilities of Scala Develop a simple CRUD REST API using the Play framework Access a relational database using Slick Develop a dynamic web UI using Scala.js Source streaming data using Spark Streaming and write a Kafka producer Use Spark and Zeppelin to analyze data Who this book is forIf you are an amateur programmer who wishes to learn how to use Scala, this book is for you. Knowledge of Java will be beneficial, but not necessary, to understand the concepts covered in this book.

Mastering Java 11 - Develop modular and secure Java applications using concurrency and advanced JDK libraries, 2nd Edition... Mastering Java 11 - Develop modular and secure Java applications using concurrency and advanced JDK libraries, 2nd Edition (Paperback, 2nd Revised edition)
Dr Edward Lavieri
R1,268 Discovery Miles 12 680 Ships in 18 - 22 working days

Update your Java knowledge with the latest features of Java 11, such as the low-Overhead Garbage Collector, Local-Variable Syntax for Lambda Parameters, and Dynamic Class-File Constants Key Features Explore the latest features in Java 9,Java 10, and Java 11 Enhance your Java application development and migration approaches Full coverage of modular Java applications, G1 Garbage Collector, JMH Book DescriptionJava 11 is a long-term release and its new features add to the richness of the language. It emphasizes variable-type inference, performance improvements, along with simplified multithreading. The Java platform has a special emphasis on modularity, making this the programming platform of choice for millions of developers. The modern Java platform can be used to build robust software applications, including enterprise-level and mobile applications. Fully updated for Java 11, this book stands to help any Java developer enjoy the richness of the Java programming language. Mastering Java 11 is your one-stop guide to fully understanding recent Java platform updates. It contains detailed explanations of the recent features introduced in Java 9, Java 10, and Java 11 along with obtaining practical guidance on how to apply the new features. As you make your way through the chapters, you'll discover further information on the developments of the Java platform and learn about the changes introduced by the variable handles and Project Coin, along with several enhancements in relation to import statements processing. In the concluding chapters, you'll learn to improve your development productivity, making your applications more efficient. You'll also be able to get to grips with the command-line flags with respect to various utilities and the command-line utility changes featured in the current Java platform. By the end of the book, you'll have obtained an advanced level understanding of the Java platform and its recent changes. What you will learn Write modular Java applications Migrate existing Java applications to modular ones Understand how the default G1 garbage collector works Leverage the possibilities provided by the newly introduced Java Shell Performance test your application effectively with the JVM harness Learn how Java supports the HTTP 2.0 standard Find out how to use the new Process API Explore the additional enhancements and features of Java 9, 10, and 11 Who this book is forMastering Java 11 is for experienced Java developers with a solid understanding of the Java language and want to progress to an advanced level.

Mastering Python Design Patterns - A guide to creating smart, efficient, and reusable software, 2nd Edition (Paperback, 2nd... Mastering Python Design Patterns - A guide to creating smart, efficient, and reusable software, 2nd Edition (Paperback, 2nd Revised edition)
Kamon Ayeva, Sakis Kasampalis
R1,187 Discovery Miles 11 870 Ships in 18 - 22 working days

Exploit various design patterns to master the art of solving problems using Python Key Features Master the application design using the core design patterns and latest features of Python 3.7 Learn tricks to solve common design and architectural challenges Choose the right plan to improve your programs and increase their productivity Book DescriptionPython is an object-oriented scripting language that is used in a wide range of categories. In software engineering, a design pattern is an elected solution for solving software design problems. Although they have been around for a while, design patterns remain one of the top topics in software engineering, and are a ready source for software developers to solve the problems they face on a regular basis. This book takes you through a variety of design patterns and explains them with real-world examples. You will get to grips with low-level details and concepts that show you how to write Python code, without focusing on common solutions as enabled in Java and C++. You'll also fnd sections on corrections, best practices, system architecture, and its designing aspects. This book will help you learn the core concepts of design patterns and the way they can be used to resolve software design problems. You'll focus on most of the Gang of Four (GoF) design patterns, which are used to solve everyday problems, and take your skills to the next level with reactive and functional patterns that help you build resilient, scalable, and robust applications. By the end of the book, you'll be able to effciently address commonly faced problems and develop applications, and also be comfortable working on scalable and maintainable projects of any size. What you will learn Explore Factory Method and Abstract Factory for object creation Clone objects using the Prototype pattern Make incompatible interfaces compatible using the Adapter pattern Secure an interface using the Proxy pattern Choose an algorithm dynamically using the Strategy pattern Keep the logic decoupled from the UI using the MVC pattern Leverage the Observer pattern to understand reactive programming Explore patterns for cloud-native, microservices, and serverless architectures Who this book is forThis book is for intermediate Python developers. Prior knowledge of design patterns is not required to enjoy this book.

Learning Java by Building Android  Games - Learn Java and Android from scratch by building six exciting games, 2nd Edition... Learning Java by Building Android Games - Learn Java and Android from scratch by building six exciting games, 2nd Edition (Paperback, 2nd Revised edition)
John Horton
R1,364 Discovery Miles 13 640 Ships in 18 - 22 working days

Get ready for a fun-filled experience of learning Java by developing games for the Android platform Key Features Learn Java, Android, and object-oriented programming from scratch Build games including Sub Hunter, Retro Pong, Bullet Hell, Classic Snake, and a 2D Scrolling Shooter Create and design your own games, such as an open-world platform game Book DescriptionAndroid is one of the most popular mobile operating systems presently. It uses the most popular programming language, Java, as the primary language for building apps of all types. However, this book is unlike other Android books in that it doesn't assume that you already have Java proficiency. This new and expanded second edition of Learning Java by Building Android Games shows you how to start building Android games from scratch. The difficulty level will grow steadily as you explore key Java topics, such as variables, loops, methods, object oriented programming, and design patterns, including code and examples that are written for Java 9 and Android P. At each stage, you will put what you've learned into practice by developing a game. You will build games such as Minesweeper, Retro Pong, Bullet Hell, and Classic Snake and Scrolling Shooter games. In the later chapters, you will create a time-trial, open-world platform game. By the end of the book, you will not only have grasped Java and Android but will also have developed six cool games for the Android platform. What you will learn Set up a game development environment in Android Studio Implement screen locking, screen rotation, pixel graphics, and play sound effects Respond to a player's touch, and program intelligent enemies who challenge the player in different ways Learn game development concepts, such as collision detection, animating sprite sheets, simple tracking and following, AI, parallax backgrounds, and particle explosions Animate objects at 60 frames per second (FPS) and manage multiple independent objects using Object-Oriented Programming (OOP) Understand the essentials of game programming, such as design patterns, object-oriented programming, Singleton, strategy, and entity-component patterns Learn how to use the Android API, including Activity lifecycle, detecting version number, SoundPool API, Paint, Canvas, and Bitmap classes Build a side-scrolling shooter and an open world 2D platformer using advanced OOP concepts and programming patterns Who this book is forLearning Java by Building Android Games is for you if you are completely new to Java, Android, or game programming and want to make Android games. This book also acts as a refresher for those who already have experience of using Java on Android or any other platform without game development experience.

Learning Concurrency in Kotlin - Build highly efficient and robust applications (Paperback): Miguel Angel Castiblanco Torres Learning Concurrency in Kotlin - Build highly efficient and robust applications (Paperback)
Miguel Angel Castiblanco Torres
R1,202 Discovery Miles 12 020 Ships in 18 - 22 working days

Take advantage of Kotlin's concurrency primitives to write efficient multithreaded applications Key Features Learn Kotlin's unique approach to multithreading Work through practical examples that will help you write concurrent non-blocking code Improve the overall execution speed in multiprocessor and multicore systems Book DescriptionThe primary requirements of modern-day applications are scalability, speed, and making the most use of hardware. Kotlin meets these requirements with its immense support for concurrency. Many concurrent primitives of Kotlin, such as channels and suspending functions, are designed to be non-blocking and efficient. This allows for new approaches to concurrency and creates unique challenges for the design and implementation of concurrent code. Learning Concurrency in Kotlin addresses those challenges with real-life examples and exercises that take advantage of Kotlin's primitives. Beginning with an introduction to Kotlin's coroutines, you will learn how to write concurrent code and understand the fundamental concepts needed to be able to write multithreaded software in Kotlin. You'll explore how to communicate between and synchronize your threads and coroutines to write asynchronous applications that are collaborative. You'll also learn how to handle errors and exceptions, as well as how to leverage multi-core processing. In addition to this, you'll delve into how coroutines work internally, allowing you to see the bigger picture. Throughout the book you'll build an Android application - an RSS reader - designed and implemented according to the different topics covered in the book What you will learn Understand Kotlin's approach to concurrency Implement sequential and asynchronous suspending functions Create suspending data sources that are resumed on demand Explore the best practices for error handling Use channels to communicate between coroutines Uncover how coroutines work under the hood Who this book is forIf you're a Kotlin or Android developer interested in learning how to program concurrently to enhance the performance of your applications, this is the book for you.

Kotlin Standard Library Cookbook - Master the powerful Kotlin standard library through practical code examples (Paperback):... Kotlin Standard Library Cookbook - Master the powerful Kotlin standard library through practical code examples (Paperback)
Samuel Urbanowicz
R1,042 Discovery Miles 10 420 Ships in 18 - 22 working days

Build optimized applications in Kotlin by learning how to make use of the standard library features the smart way Key Features Get the most out of the Kotlin library to develop high-quality portable applications Explore the powerful support for data processing and I/O operations Discover ways to enhance your Android application development Book DescriptionGiven the verbosity of Java, developers have turned to Kotlin for effective software development. The Kotlin standard library provides vital tools that make day-to-day Kotlin programming easier. This library features the core attributes of the language, such as algorithmic problems, design patterns, data processing, and working with files and data streams. The recipes in this book offer coding solutions that can be readily executed. The book covers various topics related to data processing, I/O operations, and collections transformation. We'll walk through effective design patterns in Kotlin and you'll understand how coroutines add new features to JavaScript. As you make your way through the chapters, you'll learn how to implement clean, reusable functions and scalable interfaces containing default implementations. In the concluding chapters, we'll provide recipes on functional programming concepts, such as lambdas, monads, functors, and Kotlin scoping functions. By the end of the book, you'll be able to address a range of problems that Kotlin developers face by implementing easy-to-follow solutions. What you will learn Work with ranges, progressions, and sequences in use cases Add new functionalities to current classes with Kotlin extensions Understand elements such as lambdas, closures, and monads Build a REST API consumer with Retrofit and a coroutine adapter Discover useful tips and solutions for making your Android projects Explore the benefits of standard library features Who this book is forThis book is for software developers who are familiar with Kotlin's basics and want to discover more advanced features and concepts, especially those provided by the Kotlin standard library. It's also ideal for experienced software developers who are familiar with the functional programming paradigm and other programming languages who want to switch to Kotlin. It will also help Java developers switch to Kotlin and integrate it into existing Java Virtual Machine (JVM) projects.

Free Delivery
Pinterest Twitter Facebook Google+
You may like...
Pa's En Seuns - Bou 'n Sterk Pa-Seun…
Angus Buchan Paperback R129 R119 Discovery Miles 1 190
Javascript Absolute Beginner's Guide…
Kirupa Chinnathambi Paperback R860 R741 Discovery Miles 7 410
Resilient - Restoring Your Weary Soul In…
John Eldredge Paperback R329 R302 Discovery Miles 3 020
Communicating with XML
Airi Salminen, Frank Tompa Hardcover R1,421 Discovery Miles 14 210
Born For Greatness
Gerald J. Maarman Paperback R195 R180 Discovery Miles 1 800
Releasing Resurrection And Revival From…
Robert Henderson Paperback R642 Discovery Miles 6 420
Christmas Nativity Set - 11 Pieces
R599 R539 Discovery Miles 5 390
We Who Wrestle With God
Jordan B. Peterson Paperback  (2)
R505 R450 Discovery Miles 4 500
Web-Based Services - Concepts…
Information Reso Management Association Hardcover R16,893 Discovery Miles 168 930
Java Card E-Payment Application…
Vesna Hassler, Etc, … Hardcover R2,113 Discovery Miles 21 130

 

Partners