![]() |
Welcome to Loot.co.za!
Sign in / Register |Wishlists & Gift Vouchers |Help | Advanced search
|
Your cart is empty |
||
|
Books > Computing & IT > Computer programming > Object-oriented programming (OOP)
Using object-oriented terminology from the start, "Object-Oriented Programming Using C++, Fourth Edition" will provide readers with a solid foundation in C++ programming. Like its predecessors, the fourth edition uses clear, straightforward examples to teach both the syntax of the C++ language and sound programming principles. It begins with an overview of object-oriented programming and C++, and then builds upon this knowledge to teach increasingly complex concepts, such as inheritance, templates, handling exceptions, and advanced input and output. Aimed at providing readers with the most current programming knowledge, this edition has been updated to reflect the latest software, Visual C++ 2008.
A unique text integrating numerics, mathematics and applications to provide a hands-on approach to using optimization techniques, this mathematically accessible textbook emphasises conceptual understanding and importance of theorems rather than elaborate proofs. It allows students to develop fundamental optimization methods before delving into MATLAB (R)'s optimization toolbox, and to link MATLAB's results with the results from their own code. Following a practical approach, the text demonstrates several applications, from error-free analytic examples to truss (size) optimization, and 2D and 3D shape optimization, where numerical errors are inevitable. The principle of minimum potential energy is discussed to highlight the deep relationship between engineering and optimization. MATLAB code in every chapter illustrates key concepts and the text demonstrates the coupling between MATLAB and SOLIDWORKS (R) for design optimization. A wide variety of optimization problems are covered including constrained non-linear, linear-programming, least-squares, multi-objective, and global optimization problems.
Get a concise introduction to Spring, the increasingly popular open source framework for building lightweight enterprise applications on the Java platform. This example-driven book for Java developers delves into the framework's basic features, as well as advanced concepts such as containers. You'll learn how Spring makes Java Messaging Service easier to work with, and how its support for Hibernate helps you work with data persistence and retrieval. Throughout Just Spring, you'll get your hands deep into sample code, beginning with a problem that illustrates dependency injection, Spring's core principle. In the chapters that follow, author Madhusudhan Konda walks you through features that underlie the solution. * Learn dependency injection through a simple object coupling problem, along with different injection types * Tackle the framework's core fundamentals, including beans and bean factories * Dive into containers and other advanced concepts, such as event handling and autowiring beans * Discover how Spring makes the Java Messaging Service API easier to use * Learn how Spring has revolutionized data access with Java DataBase Connectivity (JDBC) * Use Spring with the Hibernate framework to manipulate data as objects
This book concerns software design. Although many current discussions of scientific programming focus on scalable performance, this book focuses on scalable design. The authors analyze how the structure of a package determines its developmental complexity according to such measures as bug search times and documentation information content. The work presents arguments for why these issues impact solution cost and time more than does scalable performance. The final chapter explores the question of scalable execution and shows how scalable design relates to scalable execution. The book's focus is on program organization, which has received considerable attention in the broader software engineering community, where graphical description standards for modeling software structure and behavior have been developed by computer scientists. These discussions might be enriched by engineers who write scientific codes. This book aims to bring such scientific programmers into discussion with computer scientists. The authors do so by introducing object-oriented software design patterns in the context of scientific simulation.
It takes a week to travel the 8,000 miles overland from Java to Kotlin. If you're an experienced Java developer who has tried the Kotlin language, you were probably productive in about the same time. You'll have found that they do things differently in Kotlin, though. Nullability is important, collections are different, and classes are final by default. Kotlin is more functional, but what does that mean, and how should it change the way that you program? And what about all that Java code that you still have to support? Your tour guides Duncan and Nat first made the trip in 2015, and they've since helped many teams and individuals follow in their footsteps. Travel with them as they break the route down into legs like Optional to Nullable, Beans to Values, and Open to Sealed Classes. Each explains a key concept and then shows how to refactor production Java to idiomatic Kotlin, gradually and safely, while maintaining interoperability. The resulting code is simpler, more expressive, and easier to change. By the end of the journey, you'll be confident in refactoring Java to Kotlin, writing Kotlin from scratch, and managing a mixed language codebase as it evolves over time.
The upcoming Java 9 module system will affect existing applications and offer new ways of creating modular and maintainable applications. With this hands-on book, Java developers will learn not only about the joys of modularity, but also about the patterns needed to create truly modular and reliable applications. Authors Sander Mak and Paul Bakker teach you the concepts behind the Java 9 module system, along with the new tools it offers. You'll also gain learn how to modularize existing code and how to build new Java applications in a modular way. Understand Java 9 module system concepts Master the patterns and practices for building truly modular applications Migrate existing applications and libraries to Java 9 modules Use JDK 9 tools for modular development and migration
This book concerns software design. Although many current discussions of scientific programming focus on scalable performance, this book focuses on scalable design. The authors analyze how the structure of a package determines its developmental complexity according to such measures as bug search times and documentation information content. The work presents arguments for why these issues impact solution cost and time more than does scalable performance. The final chapter explores the question of scalable execution and shows how scalable design relates to scalable execution. The book's focus is on program organization, which has received considerable attention in the broader software engineering community, where graphical description standards for modeling software structure and behavior have been developed by computer scientists. These discussions might be enriched by engineers who write scientific codes. This book aims to bring such scientific programmers into discussion with computer scientists. The authors do so by introducing object-oriented software design patterns in the context of scientific simulation.
Become a C# programmer-and have fun doing it! Start writing software that solves real problems, even if you have absolutely no programming experience! This friendly, easy, full-color book puts you in total control of your own learning, empowering you to build unique and useful programs. Microsoft has completely reinvented the beginning programmer's tutorial, reflecting deep research into how today's beginners learn, and why other books fall short. Begin to Code with C# is packed with innovations, from its "Snaps" prebuilt operations to its "Make Something Happen" projects. Whether you're a total beginner or you've tried before, this guide will put the power, excitement, and fun of programming where it belongs: in your hands! Easy, friendly, and you're in control! Learn how to... * Get the free tools you need to create modern programs * Work with 150 sample programs that illustrate important concepts * Use the sample programs as starting points for your own programs * Explore exactly what happens when a program runs * Approach program development with a professional perspective * Use powerful productivity shortcuts built into Microsoft Visual Studio * Master classes, interfaces, methods, and other essential concepts * Organize programs so they're easy to construct and improve * Capture and respond to user input * Store and manipulate many types of real-world data * Create interactive games that are fun to play * Build modern interfaces your users will love * Test and debug your code-and avoid problems in the first place
Object-Oriented Python is an intuitive and thorough guide to mastering object-oriented programming from the ground up. You'll cover the basics of building classes and creating objects, and put theory into practice using the pygame package with clear examples that help visualize the object-oriented style. You'll explore the key concepts of object-oriented programming - encapsulation, polymorphism, and inheritance - and learn not just how to code with objects, but the absolute best practices for doing so. Finally, you'll bring it all together by building a complex video game, complete with full animations and sounds. The book covers two fully functional Python code packages that will speed up development of graphical user interface (GUI) programs in Python.
Design patterns are the cutting-edge paradigm for programming in C++, and they are here discussed in depth using examples from financial mathematics. Assuming only a basic knowledge of C++ and mathematical finance, the reader learns how to produce well-designed, structured, reusable code via carefully-chosen examples. This new edition includes several new chapters covering topics of increasing robustness in the presence of exceptions, designing a generic factory, interfacing C++ with EXCEL, and improving code design using the idea of decoupling. Complete ANSI/ISO compatible C++ source code is hosted on an accompanying website for the reader to study in detail, and reuse as they see fit. Whether you are a student of financial mathematics, a working quantitative analyst or financial mathematician, you need this book. Offering practical steps for implementing pricing models for complex financial products, it will transform your understanding of how to use C++.
For too long, developers have worked on disorganized application projects, where every part seemed to have its own build system, and no common repository existed for information about the state of the project. Now there's help. The long-awaited official documentation to Maven is here. Written by Maven creator Jason Van Zyl and his team at Sonatype, Maven: The Definitive Guide clearly explains how this tool can bring order to your software development projects. Maven is largely replacing Ant as the build tool of choice for large open source Java projects because, unlike Ant, Maven is also a project management tool that can run reports, generate a project website, and facilitate communication among members of a working team. To use Maven, everything you need to know is in this guide. The first part demonstrates the tool's capabilities through the development, from ideation to deployment, of several sample applications -- a simple software development project, a simple web application, a multi-module project, and a multi-module enterprise project. The second part offers a complete reference guide that includes: * The POM and Project Relationships * The Build Lifecycle * Plugins * Project website generation * Advanced site generation * Reporting * Properties * Build Profiles * The Maven Repository * Team Collaboration * Writing Plugins * IDEs such as Eclipse, IntelliJ, ands NetBeans * Using and creating assemblies * Developing with Maven Archetypes Several sources for Maven have appeared online for some time, but nothing served as an introduction and comprehensive reference guide to this tool -- until now. Maven: The Definitive Guide is the ideal book to help you manage development projects for software, web applications, and enterprise applications. And it comes straight from the source.
With the rise of DevOps, low-cost cloud computing, and container technologies, the way Java developers approach development today has changed dramatically. This practical guide helps you take advantage of microservices, serverless, and cloud native technologies using the latest DevOps techniques to simplify your build process and create hyperproductive teams. Stephen Chin, Melissa McKay, Ixchel Ruiz, and Baruch Sadogursky from JFrog help you evaluate an array of options. The list includes source control with Git, build declaration with Maven and Gradle, CI/CD with CircleCI, package management with Artifactory, containerization with Docker and Kubernetes, and much more. Whether you're building applications with Jakarta EE, Spring Boot, Dropwizard, MicroProfile, Micronaut, or Quarkus, this comprehensive guide has you covered. Explore software lifecycle best practices Use DevSecOps methodologies to facilitate software development and delivery Understand the business value of DevSecOps best practices Manage and secure software dependencies Develop and deploy applications using containers and cloud native technologies Manage and administrate source control repositories and development processes Use automation to set up and administer build pipelines Identify common deployment patterns and antipatterns Maintain and monitor software after deployment
Written to address technical concerns that mobile developers face regardless of the platform (J2ME, WAP, Windows CE, etc.), this 2005 book explores the differences between mobile and stationary applications and the architectural and software development concepts needed to build a mobile application. Using UML as a tool, Reza B'far guides the developer through the development process, showing how to document the design and implementation of the application. He focuses on general concepts, while using platforms as examples or as possible tools. After introducing UML, XML and derivative tools necessary for developing mobile software applications, B'far shows how to build user interfaces for mobile applications. He covers location sensitivity, wireless connectivity, mobile agents, data synchronization, security, and push-based technologies, and finally homes in on the practical issues of mobile application development including the development cycle for mobile applications, testing mobile applications, architectural concerns, and a case study.
Michael McMillan provides a complete presentation of the object-oriented features of the Visual Basic .NET language for advanced Visual Basic programmers. Beginning with an introduction to abstract data types and their initial implementation using structures, he explains standard OOP topics including class design, inheritance, access modifiers and scoping issues, abstract classes, design and implemention of interfaces and design patterns, and refactoring in VB.NET. More advanced OOP topics are included as well, such as reflection, object persistence, and serialization. To tie everything together, McMillan demonstrates sound OOP design and implementation principles through practical examples of standard Windows applications, database applications using ADO.NET, Web-based applications using ASP.NET, and Windows service applications.
This engaging textbook provides an accessible introduction to coding and the world of Object-Oriented (OO) programming, using Java as the illustrative programming language. Emphasis is placed on what is most helpful for the first-time coder, in order to develop and understand their knowledge and skills in a way that is relevant and practical. The examples presented in the text demonstrate how skills in OO programming can be used to create applications and programs that have real-world value in daily life. Topics and features: presents an overview of programming and coding, a brief history of programming languages, and a concise introduction to programming in Java using BlueJ; discusses classes and objects, reviews various Java library objects and packages, and introduces the idea of the Application Programming Interface (API); highlights how OO design forms an essential role in producing a useful solution to a problem, and the importance of the concept of class polymorphism; examines what to do when code encounters an error condition, describing the exception handling mechanism and practical measures in defensive coding; investigates the work of arrays and collections, with a particular focus on fixed length arrays, the ArrayList, HashMap and HashSet; describes the basics of building a Graphical User Interface (GUI) using Swing, and the concept of a design pattern; outlines two complete applications, from conceptual design to implementation, illustrating the content covered by the rest of the book; provides code for all examples and projects at an associated website. This concise guide is ideal for the novice approaching OO programming for the first time, whether they are a student of computer science embarking on a one-semester course in this area, or someone learning for the purpose of professional development or self-improvement. The text does not require any prior knowledge of coding, software engineering, OO, or mathematics.
Scott Ambler, award-winning author of Building Object Applications that Work, Process Patterns, and More Process Patterns, has revised his acclaimed first book, The Object Primer. Long prized in its original edition by both students and professionals as the best introduction to object-oriented technology, this book is now completely up-to-date, with all modeling notation rewritten in the just-released UML 2.0. All chapters have been revised to take advantage of Agile Modeling (AM), which is presented in the new chapter 2 along with other important new modeling techniques. Review questions at the end of each chapter allow readers to test their newly acquired knowledge. In addition, the author takes time to reflect on the lessons learned over the past few years by discussing the proven benefits and drawbacks of the technology. This is the perfect book for any software development professional or student seeking an introduction to the concepts and terminology of object technology.
Making extensive use of examples, this textbook on Java programming teaches the fundamental skills for getting started in a command-line environment. Meant to be used for a one-semester course to build solid foundations in Java, Fundamentals of Java Programming eschews second-semester content to concentrate on over 180 code examples and 250 exercises.Key object classes (String, Scanner, PrintStream, Arrays, and File) are included to get started in Java programming. The programs are explained with almost line-by-line descriptions, also with chapter-by-chapter coding exercises. Teaching resources include solutions to the exercises, as well as digital lecture slides.
Writing technical applications in a modern object-oriented approach, using Fortran 90 or 95, can be problematic. This book teaches how to employ the principles of object-oriented programming to produce clear, highly efficient executable codes (rather than focusing on the traditional procedural abilities of Fortran). This text is an excellent harbinger to all the features of the finalized, fully object-oriented Fortran 200X. In addition to covering the OOP methodologies, the basic foundation of the language and solid programming skills are reviewed, making the book valuable also as a good migration tool for experienced Fortran programmers that want to smoothly pick up the OOP paradigm. The author highlights common themes by using comparisons with Matlab® and C++ and uses numerous cross-referenced examples to convey all concepts quickly and clearly. Complete code for the examples is included on the accompanying CD.
Business managers often find it impossible to communicate business objectives and specify their software requirements to technical members of staff. This beginner's guide to the Unified Modeling Language (UML) - the standard for documenting software designs - teaches readers to communicate with software developers in a more focused, effective way. It describes the basic diagrams of the UML modeling notation and shows how they are used to specify requirements in an unambiguous way. When applied on a project, the risk of failure through unclear requirements is removed. If you are a non-technical person with a stake in the success of a software project, this book is for you. Milan Kratochvil has worked as an IT-consultant, instructor and writer in methodology for nearly twenty-five years, focusing on areas where IT and business intersect. Barry McGibbon is a principal consultant for Princeton Softech.
This important resource presents the current state of the art in the application of formal methods to object based distributed systems. A major theme is how to formally handle the new requirements arising from OO distributed systems. The major specification notations and modeling techniques are introduced and compared by leading researchers, in several cases, the inventors of the notations. The book also describes approaches to the specification of nonfunctional requirements, needed typically in the specification of multimedia systems and security issues. Professionals in software design, object-oriented computing, distributed systems, and telecommunications systems will gain an appreciation of the relationships among the major areas of concerns and learn how the use of object-oriented based formal methods provides workable solutions.
This book explores ENVY at several levels. The first chapters are devoted to a tutorial, bringing new users and non-technical managers up to speed on the basics of ENVY usage, its unique concepts, and the way it influences team development processes. Later chapters address project leads and ENVY administrators with useful advice and utilities. Finally, the authors delve deep into the internals to illustrate sophisticated toolbuilding techniques and provide some invaluable goodies. These include a "checkpoint" facility for snapshotting open editions in progress, a three-way differences browser, and an entire toolkit of administration tools for scripting common ENVY operations. The accompanying code is available at http://www.envymasters.com. Adrian Cho works at Object Technology International (OTI) in Ottawa, where he is the technical lead for ENVY/Developer and the team programming portions of VisualAge Java. Alan Knight is currently on the VisualWorks development team at Cincom in Ottawa. He spent many years with The Object People doing training, consulting, and product development in both Smalltalk and Java. He has spoken widely and is a former columnist for The Smalltalk Report. Joseph Pelrine is currently a senior consultant with Daedalos Consulting in Switzerland and works extensively with eXtreme Programming. He is an international speaker and a former columnist for The Smalltalk Report.
Ivar Jacobson is one of the most important figures in the software development industry. Together with his colleagues Grady Booch and James Rumbaugh, he has been pivotal to the creation of the Unified Modeling Language and Rational's Unified Software Development Process. In this book, Stefan Bylund has collected and revised Ivar Jacobson's articles from Object Magazine, JOOP, ROAD, and Component Strategies. It not only presents his most influential work, but also tracks the development of the Unified Software Development Process. An excellent reference for software professionals interested in analysis and design, the volume offers real-world experience in developing quality software through disciplined engineering.
Fundamentals of OOP and Data Structures in Java presents the fundamentals of Object-Oriented Programming (OOP) and Graphical User Interface (GUI) programming with Java as the example language. Wiener and Pinson introduce each of the major data structures with supporting, GUI-based laboratory programs designed to reinforce the basic concepts and principles. These laboratories allow the reader to explore and experiment with the properties of each data structure. All source code for the laboratories is available on the Web. By integrating the principles of OOP and GUI programming, this unique book presents the fundamental issues of data structures within the context of paradigms that are essential to today's professional software developer. The text assumes only an elementary understanding of Java and no experience with OOP.
This collection of top-notch articles by well-known experts brings together, for the first time, key elements of this area that are fast becoming the focus of much current research and practice in computing. About half the articles deal with theoretical frameworks, models, and systems of notation; the rest comprise case studies by architects of prototype systems who present findings on architectures verification. The emphasis is on advances in the technological infrastructure of component-based systems; how to design and specify reusable components; and how to reason about, verify, and validate systems from components. An introduction by Clemens Szyperski gives a snapshot of current research in the field. |
You may like...
Agile Scrum Implementation and Its…
Kenneth R Walsh, Sathiadev Mahesh, …
Hardcover
R5,994
Discovery Miles 59 940
UML 2 Certification Guide - Fundamental…
Tim Weilkiens, Bernd Oestereich
Paperback
R1,260
Discovery Miles 12 600
Object-oriented Design Knowledge…
Mario Piattini, Javier Garzas
Hardcover
R2,507
Discovery Miles 25 070
Object-Oriented Analysis and Design for…
Raul Sidnei Wazlawick
Paperback
R1,120
Discovery Miles 11 200
Programming Games with Java - 11th…
Philip Conrod, Lou Tylee
Paperback
R2,405
Discovery Miles 24 050
|