Catalogue Search | MBRL
Search Results Heading
Explore the vast range of titles available.
MBRLSearchResults
-
DisciplineDiscipline
-
Is Peer ReviewedIs Peer Reviewed
-
Series TitleSeries Title
-
Reading LevelReading Level
-
YearFrom:-To:
-
More FiltersMore FiltersContent TypeItem TypeIs Full-Text AvailableSubjectPublisherSourceDonorLanguagePlace of PublicationContributorsLocation
Done
Filters
Reset
22
result(s) for
"Dingle, Adair"
Sort by:
Software Essentials
2014
This book goes beyond syntax to explicitly define and illustrate high-level design concepts. It provides a solid understanding of control flow, ADTs (objects), memory, type relationships, and dynamic behavior, while promoting modern software design options independent of a particular programming language or tool. It compares and contrasts C# and C++ design solutions, explains how to evaluate the short- and long-term costs and benefits of various design choices, and offers extensive code examples, supportive appendices, and a glossary of over 200 common terms.
Software Essentials
2014
Winner of a 2015 Alpha Sigma Nu Book Award, Software Essentials: Design and Construction explicitly defines and illustrates the basic elements of software design and construction, providing a solid understanding of control flow, abstract data types (ADTs), memory, type relationships, and dynamic behavior. This text evaluates the benefits and overhead of object-oriented design (OOD) and analyzes software design options. With a structured but hands-on approach, the book: Delineates malleable and stable characteristics of software design Explains how to evaluate the short- and long-term costs and benefits of design decisions Compares and contrasts design solutions, such as composition versus inheritance Includes supportive appendices and a glossary of over 200 common terms Covers key topics such as polymorphism, overloading, and more While extensive examples are given in C# and/or C++, often demonstrating alternative solutions, design—not syntax—remains the focal point of Software Essentials: Design and Construction. About the Cover: Although capacity may be a problem for a doghouse, other requirements are usually minimal. Unlike skyscrapers, doghouses are simple units. They do not require plumbing, electricity, fire alarms, elevators, or ventilation systems, and they do not need to be built to code or pass inspections. The range of complexity in software design is similar. Given available software tools and libraries—many of which are free—hobbyists can build small or short-lived computer apps. Yet, design for software longevity, security, and efficiency can be intricate—as is the design of large-scale systems. How can a software developer prepare to manage such complexity? By understanding the essential building blocks of software design and construction.
Software Development
Coding has evolved from a tedious process mired in machine instruction addresses to a high-level description of executable tasks.
At the lowest level, soware execution may be viewed as fetching, evaluating, modifying, and storing data. To understand implementation and
its costs, we rst examine soware execution at the machine level. en
we trace the progression of soware development as it relies on operating
systems, and soware tools, primarily compilers. A short summary of the
evolution of programming languages illustrates the importance of so-
ware design and the appropriate modeling of data through abstract structures. We provide a brief overview of a standard modeling tool, Unified
Modeling Language (UML), and close the chapter with a brief description of emerging standards for soware construction.
Book Chapter
Structural Design
Building on the previous chapter, we examine how class designs may be used together. We cover the basic relationships modeled in
Object-Oriented Design (OOD): has-a, holds-a, and is-a. ese relationships are also known as composition, containment, and inheritance,
respectively. Each type of relationship is examined in detail, with examples and descriptions of intended use. e relevance, costs, and benets of
each design are evaluated. A comparative evaluation of these relationships
reinforces the underlying impetus for each design.
Book Chapter
Software Longevity
If published years ago, this book would end before this chapter. Why? Soware development has changed: emphasis has shied away from
clean-slate soware construction and toward maintaining legacy systems.
Software evolution and software integration are now essential. Soware
developers must work with existing soware and applications. In addition
to providing functionality, soware developers should address the central
question, relative to soware longevity: What makes soware viable?
Book Chapter
Software Correctness
How correct is software? Many questions arise with respect to the notion of soware correctness. Does soware run without error?
How does it handle error conditions? Does it meet specied requirements?
Does it satisfy user expectations?
Book Chapter
Design and Documentation
Form affects function, in terms of ease of use and maintainability. In this chapter, we examine the design and documentation of so-
ware, using the class construct as the focal point of design. Promoting
internal control of state, we cover essential functions of a class: constructors, destructors, accessors, mutators, and private utility functions. We
note language dierences when important. e intent is to scaold so-
ware design on top of class construction, emphasizing the separation of
internal elements from the external interface. We also present an eective
means of documenting design, the specication of a contract between the
class designer and the users of a class.
Book Chapter