Vi bøger
Levering: 1 - 2 hverdage

Bøger i Undergraduate Topics in Computer Science serien

Filter
Filter
Sorter efterSorter Serie rækkefølge
  • - Fundamental Techniques
    af Wilhelm Burger
    341,95 kr.

    This easy-to-follow textbook provides a modern, algorithmic introduction to digital image processing. It concentrates on practical applications and working implementations whilst also presenting important formal details and the necessary mathematics.

  • af Maurizio Gabbrielli
    271,95 kr.

    Programming Languages is a self-contained approach to the topic, and differentiates between the design, implementation and pragmatic aspects of programming languages overall. The main programming paradigms are presented, in a straightforward way.

  • af Torben Ægidius Mogensen
    412,95 kr.

    The third edition of this textbook has been fully revised and adds material about the SSA form, polymorphism, garbage collection, and pattern matching. It presents techniques for making realistic compilers for simple to intermediate-complexity programming languages. The techniques presented in the book are close to those used in professional compilers, albeit in places slightly simplified for presentation purposes. "Further reading" sections point to material about the full versions of the techniques.All phases required for translating a high-level language to symbolic machine language are covered, and some techniques for optimising code are presented. Type checking and interpretation are also included.Aiming to be neutral with respect to implementation languages, algorithms are mostly presented in pseudo code rather than in any specific language, but suggestions are in many places given for how these can be realised in different language paradigms.Depending on how much of the material from the book is used, it is suitable for both undergraduate and graduate courses for introducing compiler design and implementation.

  • af Sobhan Yassipour Tehrani
    457,95 kr.

    This unique, accessible textbook gives a comprehensive introduction to software architecture, using ¿clean architecture¿ concepts with agile methods and model-driven development. The work introduces the key concepts of software architectures and explains the importance of architectural design for the long-term usefulness and sustainability of software systems. In addition, it describes more than 30 architectural styles and patterns that can be used for constructing mobile applications, enterprise and web applications, machine-learning systems, and safety-critical systems.Topics and features:Combines clean-architecture principles with agile model-driven developmentEmploys practical examples and real industrial cases to illustrate architectures for mobile apps, web apps, enterprise systems, safety-critical systems and machine-learning systemsExplores support tools for architectural design and system development using the approachProvides tutorial questions and slides to support teaching and learningDelivers material that has been class-tested over 10 years with more than 1,000 studentsThe textbook can be used to support teaching of an undergraduate module in software architecture, yet also includes more advanced topics suitable for a specialised software architecture module at master¿s level. It also will be eminently suitable and relevant for software practitioners and researchers needing or wanting to explore the field in short courses or self-study.Dr. Kevin Lano is Reader in Software Engineering, Department of Informatics, King's College London, UK. Dr. Sobhan Yassipour Tehrani is a Lecturer, Department of Computer Science, University College London, UK.

  • af Joseph Migga Kizza
    516,95 kr.

  • af Takako Soma
    453,95 kr.

    This textbook presents a focused and accessible primer on the fundamentals of Java programming, with extensive use of illustrative examples and hands-on exercises.Addressing the need to acquire a good working model of objects in order to avoid possible misconceptions, the text introduces the core concepts of object-oriented programming at any stage, supported by the use of contour diagrams. Each chapter has one or more complete programs to illustrate the various ideas presented, and to help readers learn how to write programs on their own. Chapter summaries and practical exercises also are included to help the reader to review their progress and practice their skills.This substantially updated second edition has been expanded with additional exercises, and includes new material on bit manipulation and parallel processing.Topics and features:Introduces computing concepts in Chapter 0 for new programmersAdds new chapters on bit-manipulation and parallel processingContains exercises at the end of each chapter with selected answersSupports both text-based and GUI-based Input/OutputObjects can be introduced first, last, or intermixed with other materialUses contour diagrams to illustrate objects and recursionDiscusses OOP concepts such as overloading, class methods, and inheritanceIntroduces string variables and illustrates arrays and array processingDiscusses files, elementary exception processing, and the basics of JavadocThis concise and easy-to-follow textbook/guide is ideal for students in an introductory programming course. It is also suitable as a self-study guide for both practitioners and academics.

  • af Vicenc Torra
    376,95 kr.

    Data privacy technologies are essential for implementing information systems with privacy by design.Privacy technologies clearly are needed for ensuring that data does not lead to disclosure, but also that statistics or even data-driven machine learning models do not lead to disclosure.  For example, can a deep-learning model be attacked to discover that sensitive data has been used for its training?  This accessible textbook presents privacy models, computational definitions of privacy, and methods to implement them. Additionally, the book explains and gives plentiful examples of how to implement-among other models-differential privacy, k-anonymity, and secure multiparty computation.Topics and features:Provides integrated presentation of data privacy (including tools from statistical disclosure control, privacy-preserving data mining, and privacy for communications)Discusses privacy requirements and tools for different types of scenarios, including privacy for data, for computations, and for usersOffers characterization of privacy models, comparing their differences, advantages, and disadvantagesDescribes some of the most relevant algorithms to implement privacy modelsIncludes examples of data protection mechanismsThis unique textbook/guide contains numerous examples and succinctly and comprehensively gathers the relevant information. As such, it will be eminently suitable for undergraduate and graduate students interested in data privacy, as well as professionals wanting a concise overview.Vicenc Torra is Professor with the Department of Computing Science at Umea University, Umea, Sweden.

  • af Alberto Pettorossi
    452,95 kr.

    Knowledge of automata theory and formal languages is crucial for understanding human-computer interaction, as well as for understanding the various processes that take place when manipulating knowledge if that knowledge is, indeed, expressed as sentences written in a suitably formalized language. In particular, it is at the basis of the theory of parsing, which plays an important role in language translation, compiler construction, and knowledge manipulation in general.Presenting basic notions and fundamental results, this concise textbook is structured on the basis of a correspondence that exists between classes of automata and classes of languages. That correspondence is established by the fact that the recognition and the manipulation of sentences in a given class of languages can be done by an automaton in the corresponding class of automata. Four central chapters center on: finite automata and regular languages; pushdown automata and context-free languages; linear bounded automata and context-sensitive languages; and Turing machines and type 0 languages.  The book also examines decidable and undecidable problems with emphasis on the case for context-free languages.Topics and features:Provides theorems, examples, and exercises to clarify automata-languages correspondencesPresents some fundamental techniques for parsing both regular and context-free languagesClassifies subclasses of decidable problems, avoiding focus on the theory of complexityExamines finite-automata minimalization and characterization of their behavior using regular expressionsIllustrates how to derive grammars of context-free languages in Chomsky and Greibach normal formsOffers supplementary material on counter machines, stack automata, and abstract language familiesThis highly useful, varied text/reference is suitable for undergraduate and graduate courses on automata theory and formal languages, and assumes no prior exposure to these topics nor any training in mathematics or logic.Alberto Pettorossi is professor of theoretical computer science at the University of Rome Tor Vergata, Rome, Italy.

  • af Gerard O'Regan
    492,95 kr.

  • af Phillip J. Brooke & Richard F. Paige
    359,95 kr.

  • af Philippe Lalanda
    360,95 kr.

    Autonomic computing is changing the way software systems are being developed, introducing the goal of self-managed computing systems with minimal need for human input.This easy-to-follow, classroom-tested textbook/reference provides a practical perspective on autonomic computing. Through the combined use of examples and hands-on projects, the book enables the reader to rapidly gain an understanding of the theories, models, design principles and challenges of this subject while building upon their current knowledge; thus reinforcing the concepts of autonomic computing and self-management.Topics and features: provides a structured and comprehensive introduction to autonomic computing with a software engineering perspective; supported by a downloadable learning environment and source code that allows students to develop, execute, and test autonomic applications at an associated website; presents the latest information on techniques implementing self-monitoring, self-knowledge, decision-making and self-adaptation; discusses the challenges to evaluating an autonomic system, aiding the reader in designing tests and metrics that can be used to compare autonomic computing systems; reviews the most relevant sources of inspiration for autonomic computing, with pointers towards more extensive specialty literature; ideal for a 10-week lecture programme.This concise primer and practical guide will be of great use to students, researchers and practitioners alike, demonstrating how to better architect robust yet flexible software systems capable of meeting the computing demands for today and in the future.

  • af David Salomon
    436,95 kr.

    As our society grows ever more reliant on computers, so it also becomes more vulnerable to computer crime. Cyber attacks have been plaguing computer users since the 1980s, and computer security experts are predicting that smart telephones and other mobile devices will also become the targets of cyber security threats in the future.Developed from the author's highly successful Springer text, Foundations of Computer Security, this accessible, broad-ranging, and versatile textbook has been fully updated and enhanced with resources for students, instructors, and even those motivated to self-study on this topic.Topics and features: Examines the physical security of computer hardware, networks, and digital data Introduces the different forms of rogue software (or malware), discusses methods for preventing and defending against them, and thoroughly describes a selection of viruses, worms and Trojans in detail Provides numerous exercises and examples throughout the text, in addition to a Glossary of terms used in the book Investigates the important threats to network security, and explores the timely subjects of authentication, spyware, and identity theft Discusses key issues about privacy and trust in the online world, including children's privacy and safety Includes helpful appendices which discuss the definition, meaning, and history of the term "hacker"; introduce the language of "l33t Speak;" and provide a detailed virus timeline Supplies additional resources at the associated website: http://www.DavidSalomon.name/, including an introduction to cryptography, and answers to the exercisesClearly and engagingly written, this concise textbook is an ideal resource for undergraduate classes on computer security, as well as a solid reference for anyone needing to expand their security knowledge. The book is mostly non-mathematical, and is suitable for anyone familiar with the basic concepts of computers and computations.David Salomon is a professor emeritus of Computer Science at California State University, Northridge. He has authored numerous articles and Springer books, including Handbook of Data Compression, A Concise Introduction to Data Compression, Variable-length Codes for Data Compression, Transformations and Projections in Computer Graphics, Curves and Surfaces for Computer Graphics, Coding for Data and Computer Communications, Data Privacy and Security, and A Guide to Data Compression Methods.

  • af John Vince
    602,95 kr.

    The updated and expanded 4th edition of this book explores mathematical techniques and problem-solving strategies for computer games, animation, virtual reality, CAD and other areas of computer graphics. Includes 120 worked examples and some 270 illustrations.

  • - A Practical Guide Using Python
    af K. Erciyes
    359,95 kr.

    This textbook discusses the design and implementation of basic algebraic graph algorithms, and algebraic graph algorithms for complex networks, employing matroids whenever possible. The text describes the design of a simple parallel matrix algorithm kernel that can be used for parallel processing of algebraic graph algorithms.

  • - A First Guide to Numerical Concepts and Programming Methods
    af Tobias Weinzierl
    372,95 kr.

    New insight in many scientific and engineering fields is unthinkable without the use of numerical simulations running efficiently on modern computers. The faster we get new results, the bigger and accurate are the problems that we can solve. It is the combination of mathematical ideas plus efficient programming that drives the progress in many disciplines. Future champions in the area thus will have to be qualified in their application domain, they will need a profound understanding of some mathematical ideas, and they need the skills to deliver fast code.The present textbook targets students which have programming skills already and do not shy away from mathematics, though they might be educated in computer science or an application domain. It introduces the basic concepts and ideas behind applied mathematics and parallel programming that we need to write numerical simulations for today¿s multicore workstations. Our intention is not to dive into one particular applicationdomain or to introduce a new programming language ¿ we lay the generic foundations for future courses and projects in the area.The text is written in an accessible style which is easy to digest for students without years and years of mathematics education. It values clarity and intuition over formalism, and uses a simple N-body simulation setup to illustrate basic ideas that are of relevance in various different subdomains of scientific computing. Its primary goal is to make theoretical and paradigmatic ideas accessible to undergraduate students and to bring the fascination of the field across.

  • - Haskell, Logic and Automata
    af Donald Sannella
    293,94 kr.

    Computation, itself a form of calculation, incorporates steps that include arithmetical and non-arithmetical (logical) steps following a specific set of rules (an algorithm).

  • - Programming for Beginners
    af Noel Kalicharan
    492,95 kr.

    The main goal of this book is to teach fundamental programming principles to beginners using Julia, one of the fastest growing programming languages today. Chapter 5 formally treats with functions, enabling a (large) program to be broken up into smaller manageable units which work together to solve a given problem.

  • - Introducing Mathematical and Algorithmic Foundations
    af Duncan Buell
    352,95 kr.

    Cryptography, as done in this century, is heavily mathematical. But it also has roots in what is computationally feasible. This unique textbook text balances the theorems of mathematics against the feasibility of computation. Cryptography is something one actually "does", not a mathematical game one proves theorems about.

  • - A Practical Introduction
    af Konstantinos Domdouzis
    372,95 kr.

    Modern businesses depend on data for their very survival, creating a need for sophisticated databases and database technologies to help store, organise and transport their valuable data.This updated and expanded, easy-to-read textbook/reference presents a comprehensive introduction to databases, opening with a concise history of databases and of data as an organisational asset. As relational database management systems are no longer the only database solution, the book takes a wider view of database technology, encompassing big data, NoSQL, object and object-relational, and in-memory databases. Presenting both theoretical and practical elements, the new edition also examines the issues of scalability, availability, performance and security encountered when building and running a database in the real world.Topics and features:Presents review and discussion questions at the end of each chapter, in addition toskill-building, hands-on exercisesProvides new material on database adaptiveness, integration, and efficiency in relation to data growthIntroduces a range of commercial databases and encourages the reader to experiment with these in an associated learning environmentReviews use of a variety of databases in business environments, including numerous examplesDiscusses areas for further research within this fast-moving domainWith its learning-by-doing approach, supported by both theoretical and practical examples, this clearly-structured textbook will be of great value to advanced undergraduate and postgraduate students of computer science, software engineering, and information technology. Practising database professionals and application developers will also find the book an ideal reference that addresses today's business needs.

  • - A Concise Study Companion and Guide
    af K. Erciyes
    359,95 kr.

    Preface.- Part I: Fundamentals of Discrete Mathematics.- Logic.- Proofs.- Algorithms.- Set Theory.- Relations and Functions.- Sequences, Induction and Recursion.- Introduction to Number Theory.- Counting and Probability.- Boolean Algebra and Combinational Circuits.- Introduction to the Theory of Computation.- Part II: Graph Theory.- Introduction to Graphs.- Trees and Traversals.- Subgraphs.- Connectivity, Network Flows and Shortest Paths.- Graph Applications.- A:.- Pseudocode Conventions.- Index.

  • af Alexei Sourin
    522,95 kr.

  • - A Concise Introduction
    af James T. Streib
    436,95 kr.

    This concise guide is designed to enable the reader to learn how to program in assembly language as quickly as possible. Through a hands-on programming approach, readers will also learn about the architecture of the Intel processor, and the relationship between high-level and low-level languages.This updated second edition has been expanded with additional exercises, and enhanced with new material on floating-point numbers and 64-bit processing.Topics and features: provides guidance on simpli¿ed register usage, simpli¿ed input/output using C-like statements, and the use of high-level control structures; describes the implementation of control structures, without the use of high-level structures, and often with related C program code; illustrates concepts with one or more complete program; presents review summaries in each chapter, together with a variety of exercises, from short-answer questions to programming assignments; covers selection and iteration structures, logic,shift, arithmetic shift, rotate, and stack instructions, procedures and macros, arrays, and strings; includes an introduction to floating-point instructions and 64-bit processing; examines machine language from a discovery perspective, introducing the principles of computer organization.A must-have resource for undergraduate students seeking to learn the fundamentals necessary to begin writing logically correct programs in a minimal amount of time, this work will serve as an ideal textbook for an assembly language course, or as a supplementary text for courses on computer organization and architecture. The presentation assumes prior knowledge of the basics of programming in a high-level language such as C, C++, or Java.

  • af Rasmus R. Paulsen
    436,95 kr.

    reviews the basic image processing methods for segmenting or enhancing certain features in an image, with a focus on morphology methods for binary images; describes how to change the geometry within an image, how to align two images so that they are as similar as possible, and how to detect lines and paths in images;

  • af Max Bramer
    436,95 kr.

    This book explains the principal techniques of data mining, for classification, association rule mining and clustering. Each topic is clearly explained and illustrated by detailed examples, with a focus on algorithms rather than mathematical formalism.

  • - Learning and Improving Algorithms Through Contests
    af Antti Laaksonen
    381,95 kr.

    Building on what already is the most comprehensive introduction to competitive programming, this enhanced new textbook features new material on advanced topics, such as calculating Fourier transforms, finding minimum cost flows in graphs, and using automata in string problems. Critically, the text accessibly describes and shows how competitive programming is a proven method of implementing and testing algorithms, as well as developing computational thinking and improving both programming and debugging skills.Topics and features: introduces dynamic programming and other fundamental algorithm design techniques, and investigates a wide selection of graph algorithms; compatible with the IOI Syllabus, yet also covering more advanced topics, such as maximum flows, Nim theory, and suffix structures; surveys specialized algorithms for trees, and discusses the mathematical topics that are relevant in competitive programming; reviews the features of the C++ programming language, and describes how to create efficient algorithms that can quickly process large data sets; discusses sorting algorithms and binary search, and examines a selection of data structures of the C++ standard library; covers such advanced algorithm design topics as bit-parallelism and amortized analysis, and presents a focus on efficiently processing array range queries; describes a selection of more advanced topics, including square-root algorithms and dynamic programming optimization.Fully updated, expanded and easy to follow, this core textbook/guide is an ideal reference for all students needing to learn algorithms and to practice for programming contests. Knowledge of programming basics is assumed, but previous background in algorithm design or programming contests is not necessary. With its breadth of topics, examples and references, the book is eminently suitable for both beginners and more experienced readers alike.

  • af David Makinson
    492,95 kr.

  • af Kent D. Lee
    452,95 kr.

    Designed for interactive learning both inside and outside of the classroom, each programming paradigm is highlighted through the implementation of a non-trivial programming language, demonstrating when each language may be appropriate for a given problem.

Gør som tusindvis af andre bogelskere

Tilmeld dig nyhedsbrevet og få gode tilbud og inspiration til din næste læsning.