|
|
Books > Computing & IT > Computer programming
Building upon the success of best-sellers The Clean Coder and Clean
Code, legendary software craftsman Robert C. "Uncle Bob" Martin
shows how to bring greater professionalism and discipline to
application architecture and design. As with his other books,
Martin's Clean Architecture doesn't merely present multiple choices
and options, and say "use your best judgment": it tells you what
choices to make, and why those choices are critical to your
success. Martin offers direct, no-nonsense answers to key
architecture and design questions like: What are the best high
level structures for different kinds of applications, including
web, database, thick-client, console, and embedded apps? What are
the core principles of software architecture? What is the role of
the architect, and what is he/she really trying to achieve? What
are the core principles of software design? How do designs and
architectures go wrong, and what can you do about it? What are the
disciplines and practices of professional architects and designers?
Clean Architecture is essential reading for every software
architect, systems analyst, system designer, and software manager
-- and for any programmer who aspires to these roles or is impacted
by their work.
In Advanced Visual Basic 6, two of the world's leading VB experts take experienced developers "under the hood" with VB, introducing powerful techniques for writing high-performance, reusable code that leverages the close relationships between VB, COM, and OLE Automation. This book presents advanced VB programming from a COM data type approach, helping developers build more robust, effective code -- and overcome obstacles that appear as they "push the envelope" with VB.KEY TOPICS:Developers learn how VB describes arrays, and how to duplicate that definition manually to perform simple type casting, and gain unprecedented control over how their programs use memory. The authors introduce best practices for interface-based design using normal VB class modules; show how to partition code for optimal reuse; and more. Next, they present advanced techniques for creating COM lightweight objects; and alternate memory management techniques that allow the creation of complex systems with many objects and minimal overhead. The book also covers threading, type libraries, component versioning, and more. The accompanying CD-ROM contains extensive source code, plus powerful utilities for advanced VB development.MARKET:For all experienced Visual Basic developers.
Oxford Coding and Robotics
Novice Level 3, in partnership with Resolute Education, comprises a
Workbook and Teacher's Guide, for use together with the Novice Bot Kit
and Expansion Kit. The Level 3 Workbook provides opportunities for
learners to explore more complex coding concepts with their Novice Bot
such as loops and conditional statements, and exposes them to
electronic hardware.
Features
- Fun, interesting, practical activities encourage learner-centred
learning and teaching.
- Full-colour illustrations and high-quality photos teach the key
knowledge, skills and values, and develop visual literacy.
- A glossary with pictures of selected terms enhances the
development of key Coding and Robotics vocabulary.
- The accompanying kits provide key components that learners need
for practical coding activities, while the Resolute online platform
contains supplementary materials, interactive exercises and multimedia
resources that complement key lessons.
Oxford Coding and Robotics
Novice Level 1, in partnership with Resolute Education, comprises a
Workbook and Teacher’s Guide, for use together with the Novice Bot
Kit. The Level 1 Workbook introduces learners to the basics of logic
and coding, how computers work and store data, and applying
computational thinking skills.
Features
- Fun, interesting, practical activities encourage learner-centred
learning and teaching.
- Cut-outs and stickers enhance hand-eye coordination and fine
motor skills as well as understanding, creativity and reasoning skills.
- Full-colour illustrations and high-quality photos teach the key
knowledge, skills and values, and develop visual literacy.
- A glossary with pictures of selected terms enhances the
development of key Coding and Robotics vocabulary.
- The accompanying kit provides key components that learners need
for practical coding activities, while the Resolute online platform
contains supplementary materials, interactive exercises and multimedia
resources that complement key lessons.
Reachable Sets of Dynamic Systems: Uncertainty, Sensitivity, and
Complex Dynamics introduces differential inclusions, providing an
overview as well as multiple examples of its interdisciplinary
applications. The design of dynamic systems of any type is an
important issue as is the influence of uncertainty in model
parameters and model sensitivity. The possibility of calculating
the reachable sets may be a powerful additional tool in such tasks.
This book can help graduate students, researchers, and engineers
working in the field of computer simulation and model building, in
the calculation of reachable sets of dynamic models.
DNA or Deoxyribonucleic Acid computing is an emerging branch of
computing that uses DNA sequence, biochemistry, and hardware for
encoding genetic information in computers. Here, information is
represented by using the four genetic alphabets or DNA bases,
namely A (Adenine), G (Guanine), C (Cytosine), and T (Thymine),
instead of the binary representation (1 and 0) used by traditional
computers. This is achieved because short DNA molecules of any
arbitrary sequence of A, G, C, and T can be synthesized to order.
DNA computing is mainly popular for three reasons: (i) speed (ii)
minimal storage requirements, and (iii) minimal power requirements.
There are many applications of DNA computing in the field of
computer science. Nowadays, DNA computing is widely used in
cryptography for achieving a strong security technique, so that
unauthorized users are unable to retrieve the original data
content. In DNA-based encryption, data are encrypted by using DNA
bases (A, T, G, and C) instead of 0 and 1. As four DNA bases are
used in the encryption process, DNA computing supports more
randomness and makes it more complex for attackers or malicious
users to hack the data. DNA computing is also used for data storage
because a large number of data items can be stored inside the
condensed volume. One gram of DNA holds approx DNA bases or approx
700 TB. However, it takes approx 233 hard disks to store the same
data on 3 TB hard disks, and the weight of all these hard disks can
be approx 151 kilos. In a cloud environment, the Data Owner (DO)
stores their confidential encrypted data outside of their own
domain, which attracts many attackers and hackers. DNA computing
can be one of the best solutions to protect the data of a cloud
server. Here, the DO can use DNA bases to encrypt the data by
generating a long DNA sequence. Another application of DNA
computing is in Wireless Sensor Network (WSN). Many researchers are
trying to improve the security of WSN by using DNA computing. Here,
DNA cryptography is used along with Secure Socket Layer (SSL) that
supports a secure medium to exchange information. However, recent
research shows some limitations of DNA computing. One of the
critical issues is that DNA cryptography does not have a strong
mathematical background like other cryptographic systems. This
edited book is being planned to bring forth all the information of
DNA computing. Along with the research gaps in the currently
available books/literature, this edited book presents many
applications of DNA computing in the fields of computer science.
Moreover, research challenges and future work directions in DNA
computing are also provided in this edited book.
The 130th volume is an eclectic volume inspired by recent issues of
interest in research and development in computer science and
computer engineering. The volume is a collection of five chapters.
Principles of Big Graph: In-depth Insight, Volume 128 in the
Advances in Computer series, highlights new advances in the field
with this new volume presenting interesting chapters on a variety
of topics, including CESDAM: Centered subgraph data matrix for
large graph representation, Bivariate, cluster and suitability
analysis of NoSQL Solutions for big graph applications, An
empirical investigation on Big Graph using deep learning, Analyzing
correlation between quality and accuracy of graph clustering,
geneBF: Filtering protein-coded gene graph data using bloom filter,
Processing large graphs with an alternative representation,
MapReduce based convolutional graph neural networks: A
comprehensive review. Fast exact triangle counting in large graphs
using SIMD acceleration, A comprehensive investigation on attack
graphs, Qubit representation of a binary tree and its operations in
quantum computation, Modified ML-KNN: Role of similarity measures
and nearest neighbor configuration in multi label text
classification on big social network graph data, Big graph based
online learning through social networks, Community detection in
large-scale real-world networks, Power rank: An interactive web
page ranking algorithm, GA based energy efficient modelling of a
wireless sensor network, The major challenges of big graph and
their solutions: A review, and An investigation on socio-cyber
crime graph.
Comprehensive Metaheuristics: Algorithms and Applications presents
the foundational underpinnings of metaheuristics and a broad scope
of algorithms and real-world applications across a variety of
research fields. The book starts with fundamentals, mathematical
prerequisites, and conceptual approaches to provide readers with a
solid foundation. After presenting multi-objective optimization,
constrained optimization, and problem formation for metaheuristics,
world-renowned authors give readers in-depth understanding of the
full spectrum of algorithms and techniques. Scientists,
researchers, academicians, and practitioners who are interested in
optimizing a process or procedure to achieve a goal will benefit
from the case studies of real-world applications from different
domains. The book takes a much-needed holistic approach, putting
the most widely used metaheuristic algorithms together with an
in-depth treatise on multi-disciplinary applications of
metaheuristics. Each algorithm is thoroughly analyzed to observe
its behavior, providing a detailed tutorial on how to solve
problems using metaheuristics. New case studies and research
problem statements are also discussed, which will help researchers
in their application of the concepts.
Improve Your Creativity, Effectiveness, and Ultimately, Your Code
In Modern Software Engineering, continuous delivery pioneer David
Farley helps software professionals think about their work more
effectively, manage it more successfully, and genuinely improve the
quality of their applications, their lives, and the lives of their
colleagues. Writing for programmers, managers, and technical leads
at all levels of experience, Farley illuminates durable principles
at the heart of effective software development. He distills the
discipline into two core exercises: learning and exploration and
managing complexity. For each, he defines principles that can help
you improve everything from your mindset to the quality of your
code, and describes approaches proven to promote success. Farley's
ideas and techniques cohere into a unified, scientific, and
foundational approach to solving practical software development
problems within realistic economic constraints. This general,
durable, and pervasive approach to software engineering can help
you solve problems you haven't encountered yet, using today's
technologies and tomorrow's. It offers you deeper insight into what
you do every day, helping you create better software, faster, with
more pleasure and personal fulfillment. Clarify what you're trying
to accomplish Choose your tools based on sensible criteria Organize
work and systems to facilitate continuing incremental progress
Evaluate your progress toward thriving systems, not just more
"legacy code" Gain more value from experimentation and empiricism
Stay in control as systems grow more complex Achieve rigor without
too much rigidity Learn from history and experience Distinguish
"good" new software development ideas from "bad" ones Register your
book for convenient access to downloads, updates, and/or
corrections as they become available. See inside book for details.
Industrial Tomography: Systems and Applications, Second Edition
thoroughly explores the important techniques of industrial
tomography, also discusses image reconstruction, systems, and
applications. This book presents complex processes, including the
way three-dimensional imaging is used to create multiple
cross-sections, and how computer software helps monitor flows,
filtering, mixing, drying processes, and chemical reactions inside
vessels and pipelines. This book is suitable for materials
scientists and engineers and applied physicists working in the
photonics and optoelectronics industry or in the applications
industries.
Advances in Computers, Volume 127 presents innovations in computer
hardware, software, theory, design and applications, with this
updated volume including new chapters on Edge AI, Edge Computing,
Edge Analytics, Edge Data Analytics, Edge Native Applications, Edge
Platforms, Edge Computing, IoT, Internet of Things, etc.
|
You may like...
jQuery in Action
Bear Bibeault, Yehuda Katz, …
Paperback
R922
Discovery Miles 9 220
Web Engineering
Carson Thomas
Hardcover
R3,292
R2,982
Discovery Miles 29 820
|