Programming and scripting languages: general Books

881 products


  • gRPC Microservices in Go

    Manning Publications gRPC Microservices in Go

    15 in stock

    Book SynopsisLearn how to build fast and secure gRPC-based microservices using the powerful Go programming language. Ideal for software developers who know the basics of Go. gRPC Microservices in Go shows you howto combine the powerful gRPC Remote Procedure Call framework with Golang's low-level efficiency and flexibility. You will learn how to develop microservice inter-service communication patterns powered by gRPC, design backwards compatible APIs, and apply hexagonal architecture to microservices. Key features: Designing and implementing a resilient microservice architecture Testing microservices Deploying microservices to the cloud with modern orchestration tools Monitoring and overseeing microservices The powerful gRPC Remote Procedure Call framework delivers superior speed and security over protocols like REST. When paired with Golang's low-level efficiency and flexibility, gRPC and Go become a killer combination for latency-sensitive microservices applications. gRPC Microservices in Go shows you how to utilise these powerful tools to build production-grade microservices. About the technology Initially developed by Google, gRPC is a high-performance messaging protocol that is extraordinarily well-suited for microservices applications. This open-source framework helps you elegantly and reliably deliver messages securely within a microservices architecture. Its seamless integration with infrastructure for load balancing, tracing, fault tolerance, and security helps you effortlessly solve many of the common challenges of microservices. gRPC's server and client stubs let your project call remote service methods and define the business logic behind them. Combined with Go's fast compilation and execution speed, it's the perfect solution for building large-scale microservices architectures.

    15 in stock

    £41.39

  • Guide to Java: A Concise Introduction to

    Springer International Publishing AG Guide to Java: A Concise Introduction to

    Out of stock

    Book SynopsisThis 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 programmers Adds new chapters on bit-manipulation and parallel processing Contains exercises at the end of each chapter with selected answers Supports both text-based and GUI-based Input/Output Objects can be introduced first, last, or intermixed with other material Uses contour diagrams to illustrate objects and recursion Discusses OOP concepts such as overloading, class methods, and inheritance Introduces string variables and illustrates arrays and array processing Discusses files, elementary exception processing, and the basics of Javadoc This 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.Table of Contents1. Variables, Input / Output and Arithmetic.- 2. Objects: An Introduction.- 3. Selection Structures.- 4. Iteration Structures.- 5. Objects: Revisited.- Strings.- 6. Arrays.- Recursion.- 7. Objects: Inheritance and Polymorphism.- 8. Elementary File Input and Output.- 9. Simple Graphical Input and Output.- 9. Exceptions.- 10. Java doc Comments.- 11. Glossary.- 12. Answers to Selected Exercises.

    Out of stock

    £30.37

  • Teaching Primary Programming with Scratch Pupil

    Legend Press Ltd Teaching Primary Programming with Scratch Pupil

    1 in stock

    Book SynopsisThese books, classroom-tested and perfected by Phil Bagge through his website code-it.co.uk and published in conjunction with Hampshire Inspection and Advisory Service (HIAS), aid teachers in providing Key Stage 2 pupils with an exciting and challenging computer science curriculum.They can be used to supplement existing programming modules or as a complete KS2 computer science program of study. They contain a series of programming projects that gradually introduce pupils to algorithm design and evaluation, generalisation and decomposition. Pupils will learn how to use sequence, repetition, selection and variables through becoming creators of a wide variety of programming projects. Maths, literacy, humanities, gaming, music and control skills are all put to the test.There are four pupil workbooks to provide structure, resources and home learning links. These are designed to work in conjunction with the teacher book. In addition, there are also two home learning books that have been devised for children to learn programming outside of school. A growing bank of online videos are also available, designed to help teachers improve their own skills and take full advantage of the crosscurricular benefits of developing depth in programming.The Scratch programming language, widely recognised in schools, is freely accessible online or as a download and is the ideal place to begin programming.

    1 in stock

    £13.49

  • Teaching Primary Programming with Scratch Pupil

    Legend Press Ltd Teaching Primary Programming with Scratch Pupil

    3 in stock

    Book SynopsisThese books, classroom-tested and perfected by Phil Bagge through his website code-it.co.uk and published in conjunction with Hampshire Inspection and Advisory Service (HIAS), aid teachers in providing Key Stage 2 pupils with an exciting and challenging computer science curriculum.They can be used to supplement existing programming modules or as a complete KS2 computer science program of study. They contain a series of programming projects that gradually introduce pupils to algorithm design and evaluation, generalisation and decomposition. Pupils will learn how to use sequence, repetition, selection and variables through becoming creators of a wide variety of programming projects. Maths, literacy, humanities, gaming, music and control skills are all put to the test.There are four pupil workbooks to provide structure, resources and home learning links. These are designed to work in conjunction with the teacher book. In addition, there are also two home learning books that have been devised for children to learn programming outside of school. A growing bank of online videos are also available, designed to help teachers improve their own skills and take full advantage of the crosscurricular benefits of developing depth in programming.The Scratch programming language, widely recognised in schools, is freely accessible online or as a download and is the ideal place to begin programming.

    3 in stock

    £13.49

  • Agile Web Development with Rails 7

    The Pragmatic Programmers Agile Web Development with Rails 7

    1 in stock

    Book SynopsisRails 7 completely redefines what it means to produce fantastic user experiences and provides a way to achieve all the benefits of single-page applications - at a fraction of the complexity. Rails 7 integrates the Hotwire frameworks of Stimulus and Turbo directly as the new defaults, together with that hot newness of import maps. The result is a toolkit so powerful that it allows a single individual to create modern applications upon which they can build a competitive business. The way it used to be. Ruby on Rails helps you produce high-quality, beautiful-looking web applications quickly - you concentrate on creating the application, and Rails takes care of the details. Rails 7 brings many improvements, and this edition is updated to cover the new features and changes in best practices. We start with a step-by-step walkthrough of building a real application, and in-depth chapters look at the built-in Rails features. Follow along with an extended tutorial as you write a web-based store application. Eliminate tedious configuration and housekeeping, seamlessly incorporate JavaScript, send and receive emails, manage background jobs with ActiveJob, and build real-time features using WebSockets and ActionCable. Test your applications as you write them using the built-in unit, integration, and system testing frameworks, internationalize your applications, and deploy your applications easily and securely. Rails 1.0 was released in December 2005. This book was there from the start, and didn't just evolve alongside Rails, it evolved with Rails. It has been developed in consultation with the Rails core team. In fact, Rails itself is tested against the code in this book. What You Need: All you need is a Windows, Mac OS X, or Linux machine to do development on. This book will take you through the steps to install Rails and its dependencies. If you aren't familiar with the Ruby programming language, this book contains a chapter that covers the basics necessary to understand the material in the book.

    1 in stock

    £45.59

  • Murach's PHP and MySQL (4th Edition)

    Mike Murach & Associates Inc. Murach's PHP and MySQL (4th Edition)

    3 in stock

    Book Synopsis

    3 in stock

    £45.74

  • Learn Concurrent Programming with Go

    Manning Publications Learn Concurrent Programming with Go

    10 in stock

    Book SynopsisWrite concurrent code in Go that improves application performance, scales up to handle bigger loads, and takes full advantage of modern multi-processor hardware. Suitable for programmers who already know the basics of Go or another C-style language. No experience in concurrent programming required. In Learn Concurrent Programming with Go you will learn how to: Implement effective concurrency for more responsive, higher performing, scalable software Avoid common concurrency problems such as deadlocks and race conditions Manage concurrency using goroutines, mutexes, readers-writer locks, and more Identify concurrency patterns such as pipelining, worker pools, and message passing Discover advantages, limits and properties of parallel computing Improve your Go coding skills with advanced multithreading About the technology Concurrent programming is essential for getting the most out of modern multi-processor computer hardware. It allows multiple tasks to execute and interact simultaneously, speeding up performance and reducing user wait time. Thanks to its baked-in concurrency models, Google's Go is one of the best languages you can use to learn and apply concurrent programming to your systems.

    10 in stock

    £45.99

  • The Definitive Guide to Security in Jakarta EE

    APress The Definitive Guide to Security in Jakarta EE

    3 in stock

    Book SynopsisRefer to this definitive and authoritative book to understand the Jakarta EE Security Spec, with Jakarta Authentication & Authorization as its underlying official foundation. Jakarta EE Security implementations are discussed, such as Soteria and Open Liberty, along with the build-in modules and Jakarta EE Security third-party modules, such as Payara Yubikey & OIDC, and OmniFaces JWT-Auth.The book discusses Jakarta EE Security in relation to SE underpinnings and provides a detailed explanation of how client-cert authentication over HTTPS takes place, how certifications work,  and how LDAP-like names are mapped to caller/user names. General (web) security best practices are presented, such as not storing passwords in plaintext, using HTTPS, sanitizing inputs to DB queries, encoding output, and explanations of various (web) attacks and common vulnerabilities are included.Practical examples of securing applications discuss commoTable of Contents1: Security History 2: Jakarta EE Foundations 3: Jakarta Authentication 4: Jakarta Authorization 5: Jakarta Security 6: Java SE Underpinnings 7: EE Implementations 8: MicroProfile JWT Appendix A: Spring Security Appendix B: Apache Shiro Appendix C: Identity Management

    3 in stock

    £46.74

  • The Rules of Programming

    O'Reilly Media The Rules of Programming

    1 in stock

    Book SynopsisThis philosophy-of-programming guide presents a unique and entertaining take on how to think about programming. A collection of 21 pragmatic rules, each presented in a standalone chapter, captures the essential wisdom that every freshly minted programmer needs to know and provides thought-provoking insights for more seasoned programmers.

    1 in stock

    £29.59

  • C++ Programming in easy steps

    In Easy Steps Limited C++ Programming in easy steps

    Out of stock

    Book SynopsisC++ Programming in easy steps, 6th edition shows you how to program in the powerful C++ native system language. Now, in its sixth edition, this guide gives complete examples that illustrate each aspect with colorized source code. Updated for the latest GNU C Compiler and Visual Studio 2022.C++ Programming in easy steps, 6th edition begins by explaining how to install a free C++ compiler so you can quickly begin to create your own executable programs by copying the book's examples. It demonstrates all the C++ language basics before moving on to provide examples of Object Oriented Programming (OOP). C++ is not platform-dependent, so programs can be created on any operating system. Most illustrations in this book depict output on the Windows operating system (purely because it is the most widely-used desktop platform) but the examples can also be created on other platforms such as Linux or macOS. The book concludes by demonstrating how you can use your acquired knowledge to create programs graphically using a modern C++ Integrated Development Environment (IDE), such as Microsoft's Visual Studio 2022. C++ Programming in easy steps, 6th edition has an easy-to-follow style that will appeal to: Anyone who wants to begin programming in C++.Programmers looking to advance from an interpreted programming language, such as Python, who want to harness the superior speed of C++.Students who are studying C++ Programming at school or college. Those seeking a career in computing who need a fundamental understanding of Object Oriented Programming. This book makes no assumption that you have previous knowledge of any programming language, so it is suitable for the beginner to programming in C++, whether you know C or not.

    Out of stock

    £11.99

  • Practical Fraud Prevention

    O'Reilly Media Practical Fraud Prevention

    1 in stock

    Book SynopsisOrganizations that conduct business online are constantly engaged in a cat-and-mouse game with these invaders. In this practical book, Gilit Saporta and Shoshana Maraney draw on their experience of fraud fighting to provide best practices, methodologies, and tools to help your organization detect and prevent fraud and other malicious activities.

    1 in stock

    £42.39

  • Clean ABAP

    SAP Press Clean ABAP

    5 in stock

    Book SynopsisABAP developers, are you looking to clean up your code? Then pick up this official companion to the Clean ABAP GitHub repository. This book is brimming with best practices, straight from the experts, to help you write effective ABAP code.

    5 in stock

    £60.29

  • Practical C Programming 3e

    O'Reilly Media Practical C Programming 3e

    1 in stock

    Book SynopsisThere are lots of introductory C books, but this is the first one that has the no-nonsense, practical approach that has made Nutshell Handbooks(r) famous. C programming is more than just getting the syntax right. Style and debugging also play a tremendous part in creating programs that run well and are easy to maintain. This book teaches you not only the mechanics of programming, but also describes how to create programs that are easy to read, debug, and update. Practical rules are stressed. For example, there are fifteen precedence rules in C (&& comes before comes before ?:). The practical programmer reduces these to two: * Multiplication and division come before addition and subtraction. Contrary to popular belief, most programmers do not spend most of their time creating code. Most of their time is spent modifying someone else's code. This books shows you how to avoid the all-too-common obfuscated uses of C (and also to recognize these uses when you encounter them in existing programs) and thereby to leave code that the programmer responsible for maintenance does not have to struggle with. Electronic Archaeology, the art of going through someone else's code, is described. This third edition introduces popular Integrated Development Environments on Windows systems, as well as UNIX programming utilities, and features a large statistics-generating program to pull together the concepts and features in the language.Table of ContentsPreface. How This Book is Organized. Chapter by Chapter. Notes on the Third Edition. Font Conventions. Obtaining Source Code. Comments and Questions. Acknowledgments. Acknowledgments to the Third Edition. I. Basics 1. What Is C? How Programming Works Brief History of C How C Works How to Learn C. 2. Basics of Program Writing Programs from Conception to Execution Creating a Real Program Creating a Program Using a Command-Line Compiler Creating a Program Using an Integrated Development Environment Getting Help on UNIX Getting Help in an Integrated Development Environment IDE Cookbooks Programming Exercises. 3. Style Common Coding Practices Coding Religion Indentation and Code Format Clarity Simplicity Summary. 4. Basic Declarations and Expressions Elements of a Program Basic Program Structure Simple Expressions Variables and Storage Variable Declarations Integers Assignment Statements printf Function Floating Point Floating Point Versus Integer Divide Characters Answers Programming Exercises. 5. Arrays, Qualifiers, and Reading Numbers Arrays Strings Reading Strings Multidimensional Arrays Reading Numbers Initializing Variables Types of Integers Types of Floats Constant Declarations Hexadecimal and Octal Constants Operators for Performing Shortcuts Side Effects ++x or x++ More Side-Effect Problems Answers Programming Exercises. 6. Decision and Control Statements if Statement else Statement How Not to Use strcmp Looping Statements while Statement break Statement continue Statement Assignment Anywhere Side Effect Answer Programming Exercises. 7. Programming Process Setting Up Specification Code Design Prototype Makefile Testing Debugging Maintenance Revisions Electronic Archaeology Marking Up the Program Using the Debugger Text Editor as a Browser Add Comments Programming Exercises. II. Simple Programming. 8. More Control Statements for Statement switch Statement switch, break, and continue Answers Programming Exercises. 9. Variable Scope and Functions Scope and Class Functions Functions with No Parameters Structured Programming Recursion Answers Programming Exercises. 10. C Preprocessor define Statement Conditional Compilation include Files Parameterized Macros Advanced Features Summary Answers Programming Exercises. 11. Bit Operations Bit Operators The and Operator (&) Bitwise or (|) The Bitwise Exclusive or (^) The Ones Complement Operator (Not) (~) The Left- and Right-Shift Operators (<<, >>) Setting, Clearing, and Testing Bits Bitmapped Graphics Answers Programming Exercises. 12. Advanced Types Structures Unions typedef enum Type Casting Bit Fields or Packed Structures Arrays of Structures Summary Programming Exercises. 13. Simple Pointers Pointers as Function Arguments const Pointers Pointers and Arrays How Not to Use Pointers Using Pointers to Split a String Pointers and Structures Command-Line Arguments Programming Exercises Answers. 14. File Input/Output Conversion Routines Binary and ASCII Files The End-of-Line Puzzle Binary I/O Buffering Problems Unbuffered I/O Designing File Formats Answers Programming Exercises. 15. Debugging and Optimization Debugging Interactive Debuggers Debugging a Binary Search Runtime Errors The Confessional Method of Debugging Optimization Answers Programming Exercises. 16. Floating Point Floating-Point Format Floating Addition/Subtraction Multiplication Division Overflow and Underflow Roundoff Error Accuracy Minimizing Roundoff Error Determining Accuracy Precision and Speed Power Series Programming Exercises. III. Advanced Programming Concepts 17. Advanced Pointers Pointers and Structures free Function Linked List Structure Pointer Operator Ordered Linked Lists Double-Linked Lists Trees Printing a Tree Rest of Program Data Structures for a Chess Program Answers Programming Exercises. 18. Modular Programming Modules Public and Private The extern Modifier Headers The Body of the Module A Program to Use Infinite Arrays The Makefile for Multiple Files Using the Infinite Array Dividing a Task into Modules Module Division Example: Text Editor Compiler Spreadsheet Module Design Guidelines Programming Exercises. 19. Ancient Compilers K&R-Style Functions Library Changes Missing Features Free/Malloc Changes lint Answers. 20. Portability Problems Modularity Word Size Byte Order Problem Alignment Problem NULL Pointer Problem Filename Problems File Types Summary Answers. 21. C's Dustier Corners do/while goto The ?: Construct The , Operator volatile Qualifier Answer. 22. Putting It All Together Requirements Specification Code Design Coding Functional Description Expandability Testing Revisions A Final Warning Program Files Programming Exercises. 23. Programming Adages General Design Declarations switch Statement Preprocessor Style Compiling Final Note Answer IV. Other Language Features A. ASCII Table B. Ranges and Parameter Passing Conversions C. Operator Precedence Rules D. A Program to Compute a Sine Using a Power Series Glossary Index

    1 in stock

    £28.79

  • Core Java Volume II

    Pearson Education Core Java Volume II

    1 in stock

    Book SynopsisCay S. Horstmann is the author of Modern JavaScript for the Impatient (2020), Core Java for the Impatient, Third Edition (2022), Scala for the Impatient, Second Edition (2016), and Java SE 8 for the Really Impatient (2014), all from Addison-Wesley. He has written more than a dozen other books for professional programmers and computer science students. He is an emeritus professor of computer science at San Jose State University and a Java Champion.

    1 in stock

    £61.19

  • Data Structure Using C

    I K International Publishing House Pvt. Ltd Data Structure Using C

    1 in stock

    Book SynopsisData Structure has the importance not only in Computer Science but for any discipline of Engineering and Technology where there is a requirement of appropriate data structures in program development.Before solving a problem, a major decision is taken about which data structure will be used to represent the data. In this book, multiple stacks and multiple queues are added to represent more complex data structures.This book broadly deals with: data structure, the basic operations and types of data structure single and multidimensional arrays and sparse matrices concepts, types, and implementation of linked list concepts of stacks, recursion and queue, their operations and applications and types circular, priority and double ended queues concepts of tree and binary search tree basic as well as advanced topics of tree basic terminology and representation of graph, shortest path algorithm sorting and searching algorithms and complexity of these algorithms file organization and different types of files Salient Features: Concise presentation of data structures with solved and programming problems How to write an algorithm and its implementation in C++ A set of questions with answers are for interviews. Sufficient number of problems and questions. Table of Contents 1. Introduction 8. Graph 2. Array 9. Sorting 3. Linked List 10. Searching and Hashing 4. Stack and Recursion 11. File 5. Queue Interview Question with Answers 6. Tree Important Question 7. Binary Search Tree Index

    1 in stock

    £26.21

  • Designing Elixir Systems With OTP

    The Pragmatic Programmers Designing Elixir Systems With OTP

    1 in stock

    Book SynopsisYou know how to code in Elixir; now learn to think in it. Learn to design libraries with intelligent layers that shape the right data structures, flow from one function into the next, and present the right APIs. Embrace the same OTP that's kept our telephone systems reliable and fast for over 30 years. Move beyond understanding the OTP functions to knowing what's happening under the hood, and why that matters. Using that knowledge, instinctively know how to design systems that deliver fast and resilient services to your users, all with an Elixir focus. Elixir is gaining mindshare as the programming language you can use to keep you software running forever, even in the face of unexpected errors and an ever growing need to use more processors. This power comes from an effective programming language, an excellent foundation for concurrency and its inheritance of a battle-tested framework called the OTP. If you're using frameworks like Phoenix or Nerves, you're already experiencing the features that make Elixir an excellent language for today's demands. This book shows you how to go beyond simple programming to designing, and that means building the right layers. Embrace those data structures that work best in functional programs and use them to build functions that perform and compose well, layer by layer, across processes. Test your code at the right place using the right techniques. Layer your code into pieces that are easy to understand and heal themselves when errors strike. Of all Elixir's boons, the most important one is that it guides us to design our programs in a way to most benefit from the architecture that they run on. The experts do it and now you can learn to design programs that do the same.What You Need: Elixir Version 1.7 or greater.

    1 in stock

    £31.82

  • Manning Publications Go in Practice Second Edition

    1 in stock

    Book Synopsis

    1 in stock

    £46.88

  • The Book of Useless Information

    Penguin Putnam Inc The Book of Useless Information

    10 in stock

    Book Synopsis

    10 in stock

    £12.75

  • C Brain Teasers

    Pragmatic Programmers C Brain Teasers

    1 in stock

    Book Synopsis

    1 in stock

    £22.79

  • Freud Inventor of the Modern Mind

    HarperCollins Publishers Inc Freud Inventor of the Modern Mind

    Out of stock

    Book Synopsis

    Out of stock

    £17.56

  • Uninterruptible Power Supplies

    McGraw-Hill Education LLC (Professional Pod) Uninterruptible Power Supplies

    15 in stock

    15 in stock

    £56.95

  • Programming Language Pragmatics

    Elsevier Science Programming Language Pragmatics

    Out of stock

    Book Synopsis

    Out of stock

    £63.52

  • API Design for C

    Elsevier Science API Design for C

    Out of stock

    Book SynopsisThe design of application programming interfaces can affect the behavior, capabilities, stability, and ease of use of end-user applications. This book helps you learn how to design a good API for large-scale long-term projects. With C++ code to illustrate each concept, it covers the various strategies of API development.Trade Review"Martin Reddy draws from his experience on large scale, collaborative software projects to present patterns and practices that provide real value to individual developers as well as organizations. API Design for C++ explores often overlooked issues, both technical and non- technical, contributing to successful design decisions that produce high quality, robust, and long-lived APIs." --Eric Gregory, Software Architect, Pixar Animation Studios"Intended for programmers with intermediate to advanced skills in the C++ programming language, this guide to the building of useful and robust application programming interfaces (APIs) provides practical instruction for software engineers developing systems on which downstream software engineers depend. The work provides a methodical approach to API design covering solution based API design, performance, versioning, documentation, testing, scripting, extensibility and libraries. The work includes numerous illustrations and code examples and access to additional online resources is provided. Reddy is a software development consultant." --Book News, Reference & ResearchTable of ContentsIntroduction 1. Qualities 2. Patterns 3. Design 4. Styles 5. C++ Usage 6. Performance 7. Versioning 8. Documentation 9. Testing 10. Scripting 11. Extensibility Appendix A: Libraries Bibliography Index

    Out of stock

    £44.99

  • Learning Processing

    Elsevier Science Learning Processing

    1 in stock

    Book SynopsisTeaches you the basic building blocks of programming needed to create advanced graphics applications including interactive art, live video processing, and data visualization. This title offers graphic and web designers working with the Processing programming environment instructions on the basic principles of the language.Table of ContentsLesson 1: The Beginning1. Pixels2. Processing3. InteractionLesson 2: Everything You Need to Know4. Variables5. Conditionals6. LoopsLesson 3: Organization7. Functions8. ObjectsLesson 4: More of the Same9. ArraysLesson 5: Putting It All Together10. Algorithms11. Debugging12. LibrariesLesson 6: The World Revolves Around You13. Mathematics14. Translation and Rotation (in 3D!)Lesson 7: Pixels Under Microscope15. Images16. VideoLesson 8: The Outside World17. Text18. Data Input19. Data StreamsLesson 9: Making Noise20. Sound21. ExportingLesson 10: Beyond Processing22. Advanced Object-Oriented Programming23. JavaAppendix: Common ErrorsIndexwww.learningprocessing.com

    1 in stock

    £37.99

  • Programming Language Pragmatics

    Morgan Kaufmann Programming Language Pragmatics

    15 in stock

    Book SynopsisTrade Review"Michael Scott's book could have been entitled 'Why Programming Languages Work' ... Its comprehensive and integrated presentation of language design and implementation illustrates and explains admirably the many deep and profitable connections among these fields." -Jim Larus, Microsoft Research "This book is the best and most complete on this topic that I've seen." -Klaus Ostermann, Darmstadt University of TechnologyTable of ContentsI. Foundations 1. Introduction 2. Programming Language Syntax 3. Names, Scopes, Bindings 4. Semantic Analysis 5. Target Machine Architecture II. Core Issues in Language Design 6. Control Flow 7. Data Types 8. Composite Types 9. Subroutines and Control Abstraction 10. Data Abstraction and Object Orientation III. Alternative Programming Models 11. Functional Languages 12. Logic Languages 13. Concurrency 14. Scripting Languages IV. A Closer Look at Implementation 15. Building a Runnable Program 16. Run-time Program Management 17. Code Improvement

    15 in stock

    £67.44

  • An Introduction to Parallel Programming

    Elsevier Science & Technology An Introduction to Parallel Programming

    15 in stock

    Book SynopsisTable of Contents1. Why parallel computing 2. Parallel hardware and parallel software 3. Distributed memory programming with MPI 4. Shared-memory programming with Pthreads 5. Shared-memory programming with OpenMP 6. GPU programming with CUDA 7. Parallel program development 8. Where to go from here

    15 in stock

    £62.99

  • OCUP 2 Certification Guide

    Elsevier Science OCUP 2 Certification Guide

    2 in stock

    Book SynopsisTable of Contents1. What is UML? 2. What is OCUP? 3. Questions for Chapter 2 4. The Organization of UML 5. Questions for Chapter 4 6. Objects and Classes 7. Questions for Chapter 6 8. Packages and Namespaces 9. Questions for Chapter 8 10. Finishing the Static Model 11. Questions for Chapter 10 12. Use Cases 13. Questions for Chapter 12 14. Behavior: Sequence Diagrams 15. Questions for Chapter 14 16. Behavior: Activity Diagrams 17. Questions for Chapter 16 18. Behavior: State Machine Diagrams 19. Questions for Chapter 18

    2 in stock

    £48.44

  • Analyzing Social Media Networks with NodeXL

    Elsevier Science & Technology Analyzing Social Media Networks with NodeXL

    4 in stock

    Book SynopsisTable of ContentsPart I. Getting Started with Analyzing Social Media Networks 1. Introduction to Social Media and Social Networks 2. Social Media: New Technologies of Collaboration 3. Social Network Analysis: Measuring, Mapping, and Modeling Collections of Connections Part II. NodeXL Tutorial: Learning by Doing 4. Installation, Orientation, and Layout 5. Labeling and Visual Attributes 6. Calculating and Visualizing Network Metrics 7. Grouping and Filtering 8. Semantic Networks Part III. Social Media Network Analysis Case Studies 9. Email: The Lifeblood of Modern Communication 10. Thread Networks: Mapping Message Boards and Email Lists 11. Twitter: Information Flows, Influencers, and Organic Communities 12. Facebook: Public Pages and Inter-Organizational Networks 13. YouTube: Exploring Video Networks 14. Wiki Networks: Connections of Culture and Collaboration

    4 in stock

    £35.06

  • C A Reference Manual

    Pearson Education C A Reference Manual

    Out of stock

    Book SynopsisThis reference manual provides a complete description of the C language, the run-time libraries, and a style of C programming that emphasizes correctness, portability, and maintainability. It should be suitable for course in departments of computer science, CIS, MIS and IT.Table of ContentsI. THE C LANGUAGE. 1. Introduction. 2. Lexical Elements. 3. The C Preprocessor. 4. Declarations. 5. Types. 6. Conversions and Representations. 7. Expressions. 8. Statements. 9. Functions. II. THE C LIBRARIES. 10. Introduction to the Libraries. 11. Standard Language Additions. 12. Character Processing. 13. String Processing. 14. Memory Functions. 15. Input/Output Facilities. 16. General Utilities. 17. Mathematical Functions. 18. Time and Date Functions. 19. Control Functions. 20. Locale. 21. Extended Integer Types. 22. Floating-point Environment. 23. Complex Arithmetic. 24. Wide and Multibyte Facilities Appendix A. The ASCII Character Set. Appendix B. Syntax of the C Language. Appendix C. Answers to the Exercises. Index.

    Out of stock

    £64.49

  • Agile Principles Patterns and Practices in C

    Pearson Education (US) Agile Principles Patterns and Practices in C

    15 in stock

    Book SynopsisRobert C. Martin has been a software professional since 1970 and an international software consultant since 1990. He is founder and president of Object Mentor, Inc., a team of experienced consultants who mentor their clients in the fields of C++, Java, OO, Patterns, UML, Agile Methodologies, and Extreme Programming. Micah Martin works with Object Mentor as a developer, consultant, and mentor on topics ranging from object-oriented principles and patterns to agile software development practices. Micah is the cocreator and lead developer of the open source FitNesse project. He is also a published author and speaks regularly at conferences. Table of Contents Chapter 1: Agile Practices Chapter 2: Overview of Extreme Programming Chapter 3: Planning Chapter 4: Testing Chapter 5: Refactoring Chapter 6: A Programming Episode Chapter 7: What Is Agile Design? Chapter 8: The Single-Responsibility Principle (SRP) Chapter 9: The Open/Closed Principle (OCP) Chapter 10: The Liskov Substitution Principle (LSP) Chapter 11: The Dependency-Inversion Principle (DIP) Chapter 12: The Interface Segregation Principle (ISP) Chapter 13: Overview of UML for C# Programmers Chapter 14: Working with Diagrams Chapter 15: State Diagrams Chapter 16: Object Diagrams Chapter 17: Use Cases Chapter 18: Sequence Diagrams Chapter 19: Class Diagrams Chapter 20: Heuristics and Coffee Chapter 21: Command and Active Object: Versatility and Multitasking Chapter 22: Template Method and Strategy: Inheritance versus Delegation Chapter 23: Facade and Mediator Chapter 24: Singleton and Monostate Chapter 25: Null Object Chapter 26: The Payroll Case Study: Iteration 1 Chapter 27: The Payroll Case Study: Implementation Chapter 28: Principles of Package and Component Design Chapter 29: Factory Chapter 30: The Payroll Case Study: Package Analysis Chapter 31: Composite Chapter 32: Observer: Evolving into a Pattern Chapter 33: Abstract Server, Adapter, and Bridge Chapter 34: Proxy and Gateway: Managing Third-Party APIs Chapter 35: Visitor Chapter 36: State Chapter 37: The Payroll Case Study: The Database Chapter 38: The Payroll User Interface: Model View Presenter Appendix A: A Satire of Two Companies Appendix B: What Is Software?

    15 in stock

    £53.54

  • ObjectOriented COBOL

    SIGS ObjectOriented COBOL

    15 in stock

    Book SynopsisThis is the only book that walks COBOL users through the next phase of COBOL: Object-Oriented COBOL (OOCOBOL). Written by experts in COBOL programming, Object-Oriented COBOL teaches you how to integrate COBOL with object-oriented methodologies. It provides explanations and roadmaps that will help you understand, navigate, and successfully integrate analysis and design concepts with enabling OOCOBOL constructs. Designed for current COBOL users and based on the authors' experience teaching Object-Oriented COBOL, experienced COBOL programmers can use Object-Oriented COBOL to begin programming effectively with objects in as little as twelve weeks, significantly less than the steep learning curve of twelve to twenty-four months for Smalltalk and C++. Object-Oriented COBOL also includes extensive examples and experiences, written in OOCOBOL, that explain the defining traits of an object-oriented language, such as encapsulation, inheritance, and polymorphism.Trade Review"I would recommend this book for those interested in seeing how an object-oriented structure can be imposed on a flat language like COBOL." Computing ReviewsTable of ContentsPart I. Concepts: 1. COBOL and objects; 2. An object-oriented COBOL model; Part II. Constructs: 3. Classes - a matter of structure; 4. Objects; 5. Inheritance; Part III. Objects in Action: 6. Messages; 7. Creating and destroying objects; 8. Working with objects; 9. Collections; Part IV. Putting Objects to Work: 10. Object-oriented analysis and design; 11. Migrating Legacy Systems; Appendix A. Object-oriented COBOL vendors: Hitachi, IBM, and Micro Focus; Appendix B. The Library Application; Appendix C. COBOL reserved words; Appendix D. New COBOL reserved words; Appendix E. Intrinsic functions; Appendix F. COBOL 85/89 features.

    15 in stock

    £67.99

  • Starting Out with Alice

    Pearson Education Starting Out with Alice

    Out of stock

    Book Synopsis Tony Gaddis is the principal author of the Starting Out with series of textbooks. He has nearly two decades of experience teaching computer science courses, primarily at Haywood Community College. Tony is a highly acclaimed instructor who was previously selected as the North Carolina Community College Teacher of the Year, and has received the Teaching Excellence award from the National Institute for Staff and Organizational Development. Tony, Haywood Community College 1981 Business Administration and 1985 Electronic Data Processing graduate, was selected as Outstanding Alumni Recipient for 2012 for the college. His Starting Out with series includes introductory textbooks covering Programming Logic and Design, Alice, C++, Java, Microsoft Visual Basic, and Python.

    Out of stock

    £141.86

  • C How to Program

    Pearson Education C How to Program

    Out of stock

    Book SynopsisPaul Deitel, CEO and Chief Technical Officer of Deitel & Associates, Inc., is a graduate of MIT, where he studied Information Technology. Through Deitel & Associates, Inc., he has delivered hundreds of programming courses to industry clients, including Cisco, IBM, Siemens, Sun Microsystems, Dell, Lucent Technologies, Fidelity, NASA at the Kennedy Space Center, the National Severe Storm Laboratory, White Sands Missile Range, Hospital Sisters Health System, Rogue Wave Software, Boeing, SunGard Higher Education, Stratus, Cambridge Technology Partners, One Wave, Hyperion Software, Adra Systems, Entergy, CableData Systems, Nortel Networks, Puma, iRobot, Invensys and many more. He and his co-author, Dr. Harvey M. Deitel, are the world's best-selling programming-language textbook/professional book/video authors. Dr. Harvey M. Deitel, Chairman and Chief Strategy Officer of Deitel & Associates, Inc., has 54 years of experience in the computer field. DTable of ContentsChapter 1: Introduction to Computers, the Internet, and the Web Chapter 2: Introduction to C Programming Chapter 3: Structured Program Development in C Chapter 4: C Program Control Chapter 5: C Functions Chapter 6: C Arrays Chapter 7: C Pointers Chapter 8: C Characters and Strings Chapter 9: C Formatted Input/Output Chapter 10: C Structures, Unions, Bit Manipulations, and Enumerations Chapter 11: C File Processing Chapter 12: C Data Structures Chapter 13: C Preprocessor Chapter 14: Other C Topics Chapter 15: C++ as a Better C; Introducing Object Technology Chapter 16: Introduction to Classes, Objects, and Strings Chapter 17: Classes: A Deeper Look; Throwing Exceptions Chapter 18: Operator Overloading: Class String Chapter 19: Object-Oriented Programming: Inheritance Chapter 20: Object-Oriented Programming: Polymorphism Chapter 21: Stream Input/Output: A Deeper Look Chapter 22: Exception Handling: A Deeper look Chapter 23: Introduction to Custom Templates Appendix A: C and C++ Operator Precedence Charts Appendix B: ASCII Character Set Appendix C: Number Systems Appendix D: Storing: A Deeper Look Appendix E: Multithreading and other C11 and C99 Topics

    Out of stock

    £151.42

  • Go Programming Language The

    Pearson Education (US) Go Programming Language The

    2 in stock

    Book SynopsisAlan A. A. Donovan is a member of Google's Go team in New York. He holds computer science degrees from Cambridge and MIT and has been programming in industry since 1996. Since 2005, he has worked at Google on infrastructure projects and was the co-designer of its proprietary build system, Blaze. He has built many libraries and tools for static analysis of Go programs, including oracle, godoc -analysis, eg, and gorename. Brian W. Kernighan is a professor in the Computer Science Department at Princeton University. He was a member of technical staff in the Computing Science Research Center at Bell Labs from 1969 until 2000, where he worked on languages and tools for Unix. He is the co-author of several books, including The C Programming Language, Second Edition (Prentice Hall, 1988), and The Practice of Programming (Addison-Wesley, 1999).Table of ContentsPreface xi Chapter 1: Tutorial 1 1.1 Hello, World 1 1.2 Command-Line Arguments 4 1.3 Finding Duplicate Lines 8 1.4 Animated GIFs 13 1.5 Fetching a URL 15 1.6 Fetching URLs Concurrently 17 1.7 A Web Server 19 1.8 Loose Ends 23 Chapter 2: Program Structure 27 2.1 Names 27 2.2 Declarations 28 2.3 Variables 30 2.4 Assignments 36 2.5 Type Declarations 39 2.6 Packages and Files 41 2.7 Scope 45 Chapter 3: Basic Data Types 51 3.1 Integers 51 3.2 Floating-Point Numbers 56 3.3 Complex Numbers 61 3.4 Booleans 63 3.5 Strings 64 3.6 Constants 75 Chapter 4: Composite Types 81 4.1 Arrays 81 4.2 Slices 84 4.3 Maps 93 4.4 Structs 99 4.5 JSON 107 4.6 Text and HTML Templates 113 Chapter 5: Functions 119 5.1 Function Declarations 119 5.2 Recursion 121 5.3 Multiple Return Values 124 5.4 Errors 127 5.5 Function Values 132 5.6 Anonymous Functions 135 5.7 Variadic Functions 142 5.8 Deferred Function Calls 143 5.9 Panic 148 5.10 Recover 151 Chapter 6:. Methods 155 6.1 Method Declarations 155 6.2 Methods with a Pointer Receiver 158 6.3 Composing Types by Struct Embedding 161 6.4 Method Values and Expressions 164 6.5 Example: Bit Vector Type 165 6.6 Encapsulation 168 Chapter 7: Interfaces 171 7.1 Interfaces as Contracts 171 7.2 Interface Types 174 7.3 Interface Satisfaction 175 7.4 Parsing Flags with flag.Value 179 7.5 Interface Values 181 7.6 Sorting with sort.Interface 186 7.7 The http.Handler Interface 191 7.8 The error Interface 196 7.9 Example: Expression Evaluator 197 7.10 Type Assertions 205 7.11 Discriminating Errors with Type Assertions 206 7.12 Querying Behaviors with Interface Type Assertions 208 7.13 Type Switches 210 7.14 Example: Token-Based XML Decoding 213 7.15 A Few Words of Advice 216 Chapter 8: Goroutines and Channels 217 8.1 Goroutines 217 8.2 Example: Concurrent Clock Server 219 8.3 Example: Concu rent Echo Server 222 8.4 Channels 225 8.5 Looping in Parallel 234 8.6 Example: Concurrent Web Crawler 239 8.7 Multiplexing with select 244 8.8 Example: Concurrent Directory Traversal 247 8.9 Cancellation 251 8.10 Example: Chat Server 253 Chapter 9: Concurrency with Shared Variables 257 9.1 Race Conditions 257 9.2 Mutual Exclusion: sync.Mutex 262 9.3 Read/Write Mutexes: sync.RWMutex 266 9.4 Memory Synchronization 267 9.5 Lazy Initialization: sync.Once 268 9.6 The Race Detector 271 9.7 Example: Concurrent Non-Blocking Cache 272 9.8 Goroutines and Threads 280 Chapter 10: Packages and the Go Tool 283 10.1 Introduction 283 10.2 Import Paths 284 10.3 The Package Declaration 285 10.4 Import Declarations 285 10.5 Blank Imports 286 10.6 Packages and Naming 289 10.7 The Go Tool 290 Chapter 11: Testing 301 11.1 The go test Tool 302 11.2 Test Functions 302 11.3 Coverage 318 11.4 Benchmark Functions 321 11.5 Profiling 323 11.6 Example Functions 326 Chapter 12: Reflection 329 12.1 Why Reflection? 329 12.2 reflect.Type and reflect.Value 330 12.3 Display, a Recursive Value Printer 333 12.4 Example: Encoding S-Expressions 338 12.5 Setting Variables with reflect.Value 341 12.6 Example: Decoding S-Expressions 344 12.7 Accessing Struct Field Tags 348 12.8 Displaying the Methods of a Type 351 12.9 A Word of Caution 352 Chapter 13: Low-Level Programming 353 13.1 unsafe.Sizeof, Alignof, and Offsetof 354 13.2 unsafe.Pointer 356 13.3 Example: Deep Equivalence 358 13.4 Calling C Code with cgo 361 13.5 Another Word of Caution 366 Index 367

    2 in stock

    £30.39

  • Discovering Modern C

    Pearson Education (US) Discovering Modern C

    1 in stock

    Book SynopsisPeter Gottschling is founder of SimuNova, a company that works on developing the Matrix Template Library (MTL4) and offers C++ training. He is a member of the ISO C++ standards committee, vice-chair of Germany's programming language standards committee, and founder of the C++ User Group in Dresden. He earned his Ph.D. in computer science at Technische Universität Dresden in 2002.Table of ContentsPreface xviiReasons to Learn C++ xvii Reasons to Read This Book xviii The Beauty and the Beast xviii Languages in Science and Engineering xix Typographical Conventions xx Acknowledgments xxiii About the Author xxv Chapter 1: C++ Basics 1 1.1 Our First Program 1 1.2 Variables 3 1.3 Operators 10 1.4 Expressions and Statements 21 1.5 Functions 28 1.6 Error Handling 34 1.7 I/O 40 1.8 Arrays, Pointers, and References 47 1.9 Structuring Software Projects 58 1.10 Exercises 63 Chapter 2: Classes 65 2.1 Program for Universal Meaning Not for Technical Details 65 2.2 Members 67 2.3 Setting Values: Constructors and Assignments 72 2.4 Destructors 89 2.5 Method Generation Résumé 95 2.6 Accessing Member Variables 96 2.7 Operator Overloading Design 100 2.8 Exercises 104 Chapter 3: Generic Programming 107 3.1 Function Templates 107 3.2 Namespaces and Function Lookup 115 3.3 Class Templates 123 3.4 Type Deduction and Definition 131 3.5 A Bit of Theory on Templates: Concepts 136 3.6 Template Specialization 136 3.7 Non-Type Parameters for Templates 144 3.8 Functors 146 3.9 Lambda 154 3.10 Variadic Templates 159 3.11 Exercises 161 Chapter 4: Libraries 165 4.1 Standard Template Library 165 4.2 Numerics 186 4.3 Meta-programming 198 4.4 Utilities 202 4.5 The Time Is Now 209 4.6 Concurrency 211 4.7 Scientific Libraries Beyond the Standard 213 4.8 Exercises 215 Chapter 5: Meta-Programming 219 5.1 Let the Compiler Compute 219 5.2 Providing and Using Type Information 226 5.3 Expression Templates 245 5.4 Meta-Tuning: Write Your Own Compiler Optimization 253 5.5 Exercises 283 Chapter 6: Object-Oriented Programming 287 6.1 Basic Principles 287 6.2 Removing Redundancy 298 6.3 Multiple Inheritance 299 6.4 Dynamic Selection by Sub-typing 306 6.5 Conversion 308 6.6 CRTP 316 6.7 Exercises 320 Chapter 7: Scientific Projects 321 7.1 Implementation of ODE Solvers 321 7.2 Creating Projects 332 7.3 Some Final Words 345 Appendix A: Clumsy Stuff 347 A.1 More Good and Bad Scientific Software 347 A.2 Basics in Detail 353 A.3 Real-World Example: Matrix Inversion 362 A.4 Class Details 371 A.5 Method Generation 375 A.6 Template Details 386 A.7 Using std::vector in C++03 391 A.8 Dynamic Selection in Old Style 392 A.9 Meta-Programming Details 392 Appendix B: Programming Tools 403 B.1 gcc 403 B.2 Debugging 404 B.3 Memory Analysis 408 B.4 gnuplot 409 B.5 Unix, Linux, and Mac OS 411 Appendix C: Language Definitions 413 C.1 Value Categories 413 C.2 Operator Overview 413 C.3 Conversion Rules 416 Bibliography 419 Index 423

    1 in stock

    £33.29

  • Engineering Problem Solving With C

    Pearson Education (US) Engineering Problem Solving With C

    5 in stock

    Book SynopsisTable of ContentsIntroduction to Computing and Engineering 1 Problem Solving 1.1 Historical Perspective 1.2 Recent Engineering Achievements Changing Engineering Environment 1.3 Computing Systems Computer Hardware Computer Software 1.4 Data Representation and Storage Number Systems Data Types and Storage 1.5 An Engineering Problem-Solving Methodology Summary 2 Simple C++ Programs ENGINEERING CHALLENGE: Vehicle Performance 2.1 Program Structure 2.2 Constants and Variables Scientific Notation Numeric Data Types Boolean Data Type Character Data Type String Data Symbolic Constants Auto Type Specifier 2.3 C++ Classes Class Declaration Class Implementation 2.4 Building C++ Solutions with IDEs: Xcode Xcode 2.5 C++ Operators Assignment Operator Arithmetic Operators Precedence of Operators Overflow and Underflow Increment and Decrement Operators Abbreviated Assignment Operators 2.6 Standard Input and Output The cout Object Stream Objects Manipulators The cin Object 2.7 Building C++ Solutions with IDEs: NetBeans NetBeans 2.8 Basic Functions Included in the C++ Standard Library Elementary Math Functions Trigonometric Functions Hyperbolic Functions* Character Functions 2.9 Problem Solving Applied: Velocity Computation 2.10 System Limitations Summary 3 Control Structures: Selection ENGINEERING CHALLENGE: Global Change 3.1 Algorithm Development Top-Down Design 3.2 Structured Programming Pseudocode Evaluation of Alternative Solutions 3.3 Conditional Expressions Relational Operators Logical Operators Precedence and Associativity 3.4 Selection Statements: if Statement Simple if Statements if/else Statement 3.5 Numerical Technique: Linear Interpolation 3.6 Problem Solving Applied: Freezing Temperature of Seawater 3.7 Selection Statements: switch Statement 3.8 Building C++ Solutions with IDEs: NetBeans NetBeans 3.9 Defining Operators for Programmer-Defined Data Types Summary 4 Control Structures: Repetition ENGINEERING CHALLENGE: Data Collection 4.1 Algorithm Development Pseudocode and Flowchart Description 4.2 Repetition Structures 156 while Loop do/while Loop for Loop 4.3 Problem Solving Applied: GPS 4.4 break and continue Statements 4.5 Structuring Input Loops Counter-Controlled Loops Sentinel-Controlled Loop End-Of-Data Loop 4.6 Problem Solving Applied: Weather Balloons 4.7 Building C++ Solutions with IDEs: Microsoft Visual C++ Microsoft Visual C++ Summary 5 Working with Data Files ENGINEERING CHALLENGE: Weather Prediction 5.1 Defining File Streams Stream Class Hierarchy ifstream Class ofstream Class 5.2 Reading Data Files Specified Number of Records Trailer or Sentinel Signals End-of-File 5.3 Generating a Data File 5.4 Problem Solving Applied: Data Filters–Modifying an HTML File 5.5 Error Checking The Stream State 5.6 Numerical Technique: Linear Modeling 5.7 Problem Solving Applied: Ozone Measurements 5.8 Building C++ Solutions with IDEs: Xcode-Weather Patterns Summary 6 Modular Programming with Functions ENGINEERING CHALLENGE: Simulation 6.1 Modularity 6.2 Programmer-Defined Functions Function Definition Solution 1 Solution 2 Function Prototype 6.3 Parameter Passing Pass by Value Pass by Reference Storage Class and Scope 6.4 Problem Solving Applied: Calculating a Center of Gravity 6.5 Random Numbers Integer Sequences Floating-Point Sequences 6.6 Problem Solving Applied: Instrumentation Reliability 6.7 Defining Class Methods Public Interface Accessor Methods Mutator Methods 6.8 Problem Solving Applied: Design of Composite Materials Solution 1: Solution 2: 6.9 Numerical Technique: Roots of Polynomials Polynomial Roots Incremental-Search Technique 6.10 Problem Solving Applied: System Stability Newton—Raphson Method 6.11 Numerical Technique: Integration Integration Using the Trapezoidal Rule Summary 7 One-Dimensional Arrays ENGINEERING CHALLENGE: Tsunami Warning Systems 7.1 Arrays Definition and Initialization Pseudocode Range-based for Statement Computation and Output Function Arguments 7.2 Problem Solving Applied: Hurricane Categories 357 7.3 Statistical Measurements Simple Analysis Variance and Standard Deviation Custom Header Files 7.4 Problem Solving Applied: Speech Signal Analysis 7.5 Sorting and Searching Algorithms Selection Sort Search Algorithms Unordered Lists Ordered Lists 7.6 Problem Solving Applied: Tsunami Warning Systems 7.7 Character Strings C Style String Definition and I/O String Functions 7.8 The string Class 7.9 Building C++ Solutions with IDEs: Xcode Vegetation Maps 7.10 The vector class Parameter Passing 7.11 Problem Solving Applied: Calculating Probabilities Summary 8 Two-Dimensional Arrays ENGINEERING CHALLENGE: Terrain Navigation 8.1 Two-Dimensional Arrays Declaration and Initialization Computations and Output Function Arguments 8.2 Problem Solving Applied: Terrain Navigation 8.3 Two-Dimensional Arrays and the vector class Function Arguments 8.4 Matrices Determinant Transpose Matrix Addition and Subtraction Matrix Multiplication 8.5 Numerical Technique: Solution to Simultaneous Equations Graphical Interpretation Gauss Elimination 8.6 Problem Solving Applied: Electrical Circuit Analysis 8.7 Higher-Dimensional Arrays Summary 9 An Introduction to Pointers ENGINEERING CHALLENGE: Weather Patterns 9.1 Addresses and Pointers Address Operator Pointer Assignment Pointer Arithmetic 9.2 Pointers to Array Elements One-Dimensional Arrays Character Strings Pointers as Function Arguments 9.3 Problem Solving Applied: El Niño-Southern Oscillation Data 9.4 Dynamic Memory Allocation The new Operator Dynamically Allocated Arrays The delete Operator 9.5 Problem Solving Applied: Seismic Event Detection 9.6 Common Errors Using new and delete 9.7 Linked Data Structures Linked Lists Stacks Queue 518 9.8 The C++ Standard Template Library The list class The stack class The queue class 9.9 Problem Solving Applied: Concordance of a Text File 525 Summary 10 Advanced Topics ENGINEERING CHALLENGE: Artificial Intelligence 10.1 Data Abstraction Overloading Operators The Pixel class \Arithmetic Operators friend Functions Validating Objects Bitwise Operators 10.2 Building C++ Solutions with IDEs: Xcode Image Files 10.3 Binary File Input and Output Opening Binary Files Reading and Writing Binary Files Contents 10.4 Problem Solving Applied: Color Image Processing 10.5 Recursion Factorial Function Fibonacci Sequence The BinaryTree class 10.6 Generic Programming Function Templates Class Templates 10.7 Inheritance The Rectangle class The Square Class The Cube class 10.8 virtual Methods 10.9 Problem Solving Applied: Iterated Prisoner’s Dilemma Summary C++ Standard Library B ASCII Character Codes C Using MATLAB to Plot Data from ASCII Files C++ Program to Generate a Data File ASCII Data File Generated by the C++ Program 649 Generating a Plot with MATLAB D References E PRACTICE! Solutions Index

    5 in stock

    £172.52

  • Language of SQL The

    Pearson Education (US) Language of SQL The

    Out of stock

    Book Synopsis LARRY ROCKOFF has been involved with SQL and business intelligence development for many years. His primary area of interest is using reporting tools to explore and analyze data in complex databases. He holds an MBA from the University of Chicago, with a specialization in Management Science. He currently works with data warehouse and reporting applications for a major retail pharmacy. He also maintains a website that features book reviews on technology topics, focusing on analytics and business intelligence as well as broader societal issues at  larryrockoff.comTable of ContentsThe Language of SQL, 2nd Edition Introduction Topics and Features What’s New in the Second Edition Plan of the Book Companion Website 1. Relational Databases and SQL What Is SQL? Microsoft SQL Server, MySQL, and Oracle Relational Databases Primary and Foreign Keys Datatypes NULL Values The Significance of SQL 2. Basic Data Retrieval A Simple SELECT Syntax Notes Comments Specifying Columns Column Names with Embedded Spaces Preview of the Full SELECT 3. Calculated Fields and Aliases Literal Values Arithmetic Calculations Concatenating Fields Column Aliases Table Aliases 4. Using Functions What Is a Function? Character Functions Composite Functions Date/Time Functions Numeric Functions Conversion Functions 5. Sorting Data Sorting in Ascending Order Sorting in Descending Order Sorting by Multiple Columns Sorting by a Calculated Field Sort Sequences 6. Selection Criteria Applying Selection Criteria WHERE Clause Operators Limiting Rows Limiting Rows with a Sort Pattern Matching Wildcards 7. Boolean Logic Complex Logical Conditions The AND Operator The OR Operator Using Parentheses Multiple Sets of Parentheses The NOT Operator The BETWEEN Operator The IN Operator Boolean Logic and NULL Values 8. Conditional Logic The CASE Expression The Simple CASE Format The Searched CASE Format Conditional Logic in ORDER BY Clauses Conditional Logic in WHERE Clauses 9. Summarizing Data Eliminating Duplicates Aggregate Functions The COUNT Function Grouping Data Multiple Columns and Sorting Selection Criteria on Aggregates Conditional Logic in GROUP BY Clauses Conditional Logic in HAVING Clauses Ranking Functions Partitions 10. Subtotals and Crosstabs Adding Subtotals with ROLLUP Adding Subtotals with CUBE Creating Crosstab Layouts 11. Inner Joins Joining Two Tables The Inner Join Table Order in Inner Joins An Alternate Specification of Inner Joins Table Aliases Revisited 12. Outer Joins The Outer Join Left Joins Testing for NULL Values Right Joins Table Order in Outer Joins Full Joins Cross Joins 13. Self Joins and Views Self Joins Creating Views Referencing Views Benefits of Views Modifying and Deleting Views 14. Subqueries Types of Subqueries Using a Subquery as a Data Source Using a Subquery in Selection Criteria Correlated Subqueries The EXISTS Operator Using a Subquery as a Calculated Column Common Table Expressions 15. Set Logic Using the UNION Operator Distinct and Non-Distinct Unions Intersecting Queries 16. Stored Procedures and Parameters Creating Stored Procedures Parameters in Stored Procedures Executing Stored Procedures Modifying and Deleting Stored Procedures Functions Revisited 17. Modifying Data Modification Strategies Inserting Data Deleting Data Updating Data Correlated Subquery Updates 18. Maintaining Tables Data Definition Language Table Attributes Table Columns Primary Keys and Indexes Foreign Keys Creating Tables Creating Indexes 19. Principles of Database Design Goals of Normalization How to Normalize Data The Art of Database Design Alternatives to Normalization 20. Strategies for Displaying Data Crosstab Layouts Revisited Excel and External Data Excel Pivot Tables A. Getting Started with Microsoft SQL Server Installing SQL Server 2016 Express Installing SQL Server 2016 Management Studio Express Using SQL Server 2016 Management Studio Express B. Getting Started with MySQL Installing MySQL on Windows Installing MySQL on Mac Using MySQL Workbench C. Getting Started with Oracle Installing Oracle Database Express Edition Using Oracle Database Express Edition

    Out of stock

    £20.89

  • Introduction to Game Design Prototyping and

    Pearson Education (US) Introduction to Game Design Prototyping and

    1 in stock

    Book SynopsisTable of Contents P1 Game Design and Paper Prototyping 0 Introduction 1 Thinking Like a Designer 2 Game Analysis Lexicons 3 The Layered Tetrad 4 Acting Like a Designer 5 Design Goals 6 The Inscribed Layer 7 The Dynamic Layer 8 The Cultural Layer 9 Paper Prototyping and Iteration 10 Playtesting and Usability Testing 11 Math & Game Balance 12 Puzzle Design 13 Guiding the Player 14 The Digital Game Industry 15 The Agile Development Prototyping Mentality P2 Digital Prototyping 16 Thinking in Digital Systems 17 Introducing our Development Environment: Unity 18 Introducing our Language: C# 19 Your First Program: Hello World 20 Debugging 21 Variables and Components 22 Boolean Operations and Conditionals 23 Loops 24 Lists and Arrays 25 Functions and Parameters 26 Classes 27 Object-Oriented Thinking P3 Game Prototype Examples and Tutorials 28 Prototype 1: Apple Picker 29 Prototype 2: Mission Demolition 30 Prototype 3: Space SHMUP 31 Prototype 4: Prospector Solitaire 32 Prototype 5: Bartok 33 Prototype 6: Word Game 34 Prototype 7: QuickSnap 35 Prototype 8: Omega Mage P4 Appendices 36 Standard Project Setup Procedure 37 Useful Concepts Reference 38 Online References

    1 in stock

    £44.62

  • Python Without Fear

    Pearson Education (US) Python Without Fear

    2 in stock

    Book SynopsisBrian Overland is a textbook author, sometime actor, programmer, film reviewer, and novelist. He has been professionally programming with the C family of languages since the early 1980s and spent 10 years at Microsoft, first as a software tester and then as programmer/writer, manager, and project lead. Almost unique among programmers, he is an award-winning writer deeply committed to teaching and simplifying advanced concepts.Table of ContentsPreface xvii Acknowledgments xxi Author Bio xxiii Chapter 1: Meet the Python 1 A Brief History of Python 1 How Python Is Different 2 How This Book Works 3 Installing Python 4 Begin Using Python with IDLE 6 Correcting Mistakes from Within IDLE 6 Dealing with Ends of Lines 7 Additional Help: Online Sources 8 Chapter 2: A Python Safari: Numbers 9 Python and Numbers 9 Python and Floating-Point Numbers 14 Assigning Numbers to Variables 17 Variable-Naming Conventions in This Book 23 Some Python Shortcuts 23 Chapter 2 Summary 26 Chapter 3: Your First Programs 29 Temperatures Rising? 29 Putting in a Print Message 35 Syntax Summaries 36 Getting String Input 41 Getting Numeric Input 43 Formatted Output String 46 Chapter 3 Summary 50 Chapter 4: Decisions and Looping 53 Decisions Inside a Computer Program 53 Conditional and Boolean Operators 55 The if, elif, and else Keywords 56 while: Looping the Loop 60 “Give Me a break” Statement 70 Chapter 4 Summary 75 Chapter 5: Python Lists 77 The Python Way: The World Is Made of Collections 77 Processing Lists with for 80 Modifying Elements with for (You Can't!) 82 Indexing and Slicing 85 Copying Data to Slices 88 Ranges 89 List Functions and the in Keyword 97 Chapter 5 Summary 99 Chapter 6: List Comprehension and Enumeration 101 Indexes and the enumerate Function 101 The Format String Method Revisited 103 Simple List Comprehension 106 “Two-Dimensional” List Comprehension 112 List Comprehension with Conditional 114 Chapter 6 Summary 123 Chapter 7: Python Strings 125 Creating a String with Quote Marks 125 Indexing and “Slicing” 127 String/Number Conversions 130 Stripping for Fun and Profit 135 Let’s Split: The split Method 138 Building Strings with Concatenation (+) 139 The join Method 143 Chapter 7 Summary 144 Chapter 8: Single-Character Ops 147 Naming Conventions in This Chapter 147 Accessing Individual Characters (A Review) 148 Getting Help with String Methods 148 Testing Uppercase vs. Lowercase 149 Converting Case of Letters 150 Testing for Palindromes 151 Converting to ASCII Code 159 Converting ASCII to Character 160 Chapter 8 Summary 166 Chapter 9: Advanced Function Techniques 167 Multiple Arguments 167 Returning More Than One Value 168 Arguments by Name 173 Default Arguments 174 Importing Functions from Modules 178 Chapter 9 Summary 185 Chapter 10: Local and Global Variables 187 Local Variables, What Are They Good For? 187 Locals vs. Globals 188 Introducing the global Keyword 190 The Python “Local Variable Trap” 190 Chapter 10 Summary 204 Chapter 11: File Ops 207 Text Files vs. Binary Files 207 The Op System (os) Module 208 Open a File 211 Let’s Write a Text File 213 Read a Text File 216 Files and Exception Handling 217 Other File Modes 223 Chapter 11 Summary 224 Chapter 12: Dictionaries and Sets 227 Why Do We Need Dictionaries, Ms. Librarian? 227 Adding and Changing Key-Value Pairs 229 Accessing Values 230 Searching for Keys 231 Converting Dictionaries to Lists 235 All About Sets 241 Operations on Sets 242 Chapter 12 Summary 246 Chapter 13: Matrixes: 2-D Lists 249 Simple Matrixes 249 Accessing Elements 250 Irregular Matrixes and Length of a Row 251 Multiplication (*) and Lists 252 The Python Matrix Problem 253 How to Create N*M Matrixes: The Solution 254 How to Rotate a Matrix 261 Chapter 13 Summary 268 Chapter 14: Winning at Tic-Tac-Toe 271 Design of a Tic-Tac-Toe Board 271 Plan of This Chapter 273 Python One-Line if/else 274 The count Method for Lists 279 Introducing the Computer Player 285 Chapter 14 Summary 294 Chapter 15: Classes and Objects I 295 What’s an Object? 295 Classes in Python 296 The All-Important _ _init_ Method 301 Design for a Database Class 303 Defining Other Methods 309 Design for a Point3D Class 310 Point3D Class and Default Arguments 312 Three-Dimensional Tic-Tac-Toe 312 Chapter 15 Summary 318 Chapter 16: Classes and Objects II 321 Getting Help from Doc Strings 321 Function Typing and “Overloading” 323 Variable-Length Argument Lists 326 Inheritance 331 The Fraction Class 333 Class Variables and Methods 337 Instance Variables as “Default” Values 339 Chapter 16 Summary 344 Chapter 17: Conway’s Game of Life 347 Game of Life: The Rules of the Game 348 Generating the Neighbor Count 350 Design of the Program 352 Moving the Matrix Class to a Module 354 The Famous Slider Pattern 358 Chapter 17 Summary 364 Chapter 18: Advanced Pythonic Techniques 367 Generators 367 Exploiting the Power of Generators 369 Properties 375 Decorators: Functions Enclosing Other Functions 382 Python Decoration 385 Chapter 18 Summary 389 Appendix A: Python Operator Precedence Table 391 Appendix B: Summary of Most Important Formatting Rules for Python 3.0 393 1. Formatting Ordinary Text 393 2. Formatting Arguments 393 3. Specifying Order of Arguments 393 4. Right Justification Within Field of Size N 394 5. Left Justification Within Field of Size N 394 6. Truncation: Limit Size of Print Field 394 7. Combined Truncation and Justification 395 8. Length and Precision of Floating-Point Numbers 395 9. The Padding Character 395 Appendix C: Glossary 397 Index 407

    2 in stock

    £26.54

  • Starting Out with Java From Control Structures

    Pearson Education (US) Starting Out with Java From Control Structures

    Out of stock

    Book SynopsisTable of Contents1. Introduction to Computers and Java 2. Java Fundamentals 3. Decision Structures 4. Loops and Files 5. Methods 6. A First Look at Classes 7. Arrays and the ArrayList Class 8. A Second Look at Classes and Objects 9. Text Processing and More about Wrapper Classes 10. Inheritance 11. Exceptions and Advanced File I/O 12. JavaFX: GUI Programming and Basic Controls 13. JavaFX: Advanced Controls 14. JavaFX: Graphics, Effects, and Media 15. Recursion 16. Sorting, Searching, and Algorithm Analysis 17. Generics 18. Collections and the Stream API 19. Linked Lists 20. Stacks and Queues 21. Binary Trees, AVL Trees, and Priority Queues

    Out of stock

    £186.31

  • Core Java

    Pearson Education (US) Core Java

    Out of stock

    Book SynopsisCay S. Horstmann is a professor of computer science at San Jose State University and a Java Champion. He is also the author of Core Java, Volumes I and II , Eleventh Edition (forthcoming from Pearson in 2018), Core Java SE 9 for the Impatient, Second Edition (Addison-Wesley, 2018), and Scala for the Impatient, Second Edition (Addison-Wesley, 2017). He has written more than a dozen other books for professional programmers and computer science students.Table of Contents Preface xix Acknowledgments xxv Chapter 1: An Introduction to Java 1 1.1 Java as a Programming Platform 1 1.2 The Java “White Paper” Buzzwords 2 1.3 Java Applets and the Internet 9 1.4 A Short History of Java 10 1.5 Common Misconceptions about Java 13 Chapter 2: The Java Programming Environment 17 2.1 Installing the Java Development Kit 18 2.2 Using the Command-Line Tools 23 2.3 Using an Integrated Development Environment 29 2.4 JShell 32 Chapter 3: Fundamental Programming Structures in Java 37 3.1 A Simple Java Program 38 3.2 Comments 41 3.3 Data Types 42 3.4 Variables and Constants 48 3.5 Operators 52 3.6 Strings 62 3.7 Input and Output 75 3.8 Control Flow 86 3.9 Big Numbers 105 3.10 Arrays 108 Chapter 4: Objects and Classes 125 4.1 Introduction to Object-Oriented Programming 126 4.2 Using Predefined Classes 131 4.3 Defining Your Own Classes 141 4.4 Static Fields and Methods 156 4.5 Method Parameters 163 4.6 Object Construction 170 4.7 Packages 180 4.8 JAR Files 192 4.9 Documentation Comments 198 4.10 Class Design Hints 204 Chapter 5: Inheritance 207 5.1 Classes, Superclasses, and Subclasses 208 5.2 Object: The Cosmic Superclass 232 5.3 Generic Array Lists 248 5.4 Object Wrappers and Autoboxing 256 5.5 Methods with a Variable Number of Parameters 260 5.6 Enumeration Classes 261 5.7 Reflection 264 5.8 Design Hints for Inheritance 290 Chapter 6: Interfaces, Lambda Expressions, and Inner Classes 295 6.1 Interfaces 296 6.2 Lambda Expressions 322 6.3 Inner Classes 340 6.4 Service Loaders 360 6.5 Proxies 362 Chapter 7: Exceptions, Assertions, and Logging 371 7.1 Dealing with Errors 372 7.2 Catching Exceptions 381 7.3 Tips for Using Exceptions 396 7.4 Using Assertions 399 7.5 Logging 403 7.6 Debugging Tips 425 Chapter 8: Generic Programming 431 8.1 Why Generic Programming? 432 8.2 Defining a Simple Generic Class 434 8.3 Generic Methods 437 8.4 Bounds for Type Variables 438 8.5 Generic Code and the Virtual Machine 441 8.6 Restrictions and Limitations 447 8.7 Inheritance Rules for Generic Types 457 8.8 Wildcard Types 459 8.9 Reflection and Generics 467 Chapter 9: Collections 481 9.1 The Java Collections Framework 482 9.2 Interfaces in the Collections Framework 492 9.3 Concrete Collections 494 9.4 Maps 519 9.5 Views and Wrappers 532 9.6 Algorithms 541 9.7 Legacy Collections 552 Chapter 10: Graphical User Interface Programming 565 10.1 A History of Java User Interface Toolkits 565 10.2 Displaying Frames 567 10.3 Displaying Information in a Component 574 10.4 Event Handling 598 10.5 The Preferences API 624 Chapter 11: User Interface Components with Swing 631 11.1 Swing and the Model-View-Controller Design Pattern 632 11.2 Introduction to Layout Management 636 11.3 Text Input 643 11.4 Choice Components 651 11.5 Menus 671 11.6 Sophisticated Layout Management 690 11.7 Dialog Boxes 706 Chapter 12: Concurrency 733 12.1 What Are Threads? 734 12.2 Thread States 739 12.3 Thread Properties 743 12.4 Synchronization 750 12.5 Thread-Safe Collections 781 12.6 Tasks and Thread Pools 800 12.7 Asynchronous Computations 814 12.8 Processes 831 Appendix: Java Keywords 839 Index 843

    Out of stock

    £41.79

  • Starting Out With Visual Basic

    Pearson Education (US) Starting Out With Visual Basic

    Out of stock

    Book SynopsisAbout our authors Tony Gaddis is the principal author of the Starting Out With series of textbooks. Tony has nearly two decades of experience teaching computer science courses, primarily at Haywood Community College. He is a highly acclaimed instructor who was previously selected as the North Carolina Community College Teacher of the Year and has received the Teaching Excellence award from the National Institute for Staff and Organizational Development. The Starting Out With series includes introductory books covering C++, JavaTM, Microsoft Visual Basic, Microsoft C#, Python, Programming Logic and Design, Alice, and App Inventor, all published by Pearson. Kip Irvine holds MS (computer science) and DMA (music composition) degrees from the University of Miami. He was formerly on the faculty at Miami-Dade Community College, and is presently a member of the School of Computing and Information Sciences at Florida International University.Table of ContentsBrief Contents Introduction to Programming and Visual Basic Creating Applications with Visual Basic Variables and Calculations Making Decisions Lists and Loops Procedures and Functions Multiple Forms, Modules, and Menus Arrays and More Files, Printing, and Structure Working with Databases Developing Web Applications Classes, Collections, and Inheritance Appendix A. Advanced User Interface Controls and Techniques Appendix B. Windows Presentation Foundation (WPF) Appendix C. Converting Mathematical Expressions to Programming Statements Appendix D. Answers to Checkpoint

    Out of stock

    £178.89

  • Java Foundations

    Pearson Education (US) Java Foundations

    Out of stock

    Book SynopsisAbout our authors John Lewis is the coauthor of the best-selling introductory Java programming book Java Software Solutions as well as Java Software Structures, Programming with Alice and Java and books for AP computer science. He teaches courses at both Virginia Tech and Radford University. He received his PhD from Virginia Tech. Peter DePasquale is an assistant professor of computer science at the College of New Jersey (TCNJ). He is the author of Addison-Wesley's Java Backpack Reference Guide and Addison-Wesley's C++ Backpack Reference Guide, as well as Programming with Alice and Java. Joe Chase is an associate professor of computer science at Radford University. He is the coauthor of Java Software Structures and Java Software Structures for AP* Computer Science AB.Table of ContentsBrief Contents Data and Expressions Using Classes and Objects Conditionals and Loops Writing Classes Graphical User Interfaces Arrays Inheritance Polymorphism Exceptions Analysis of Algorithms Introduction to Collections–Stacks Linked Structures–Stacks Queues Lists Iterators Recursion Searching and Sorting Trees Binary Search Trees Heaps and Priority Queues Sets and Maps Multi-way Search Trees Graphs Databases Appendix A Glossary Appendix B Number Systems Appendix C The Unicode Character Set Appendix D Java Operators Appendix E Java Modifiers Appendix F JavaFX Graphics Appendix G JavaFX Scene Builder Appendix H Regular Expressions Appendix I Hashing Appendix J Java Syntax

    Out of stock

    £183.51

  • Introduction to JavaScript Programming

    Pearson Education Introduction to JavaScript Programming

    1 in stock

    Book SynopsisAbout our author Eric Roberts is the Charles Simonyi Professor of Computer Science, emeritus, at Stanford University. Throughout his career, Roberts was a widely acknowledged leader in computer science education and received numerous national and international awards, including the Outstanding Contribution to Computer Science Education Award from the Association for Computing Machinery's Special Interest Group in Computer Science Education (ACM SIGCSE), the Karl V. Karlstrom Outstanding Educator Award from the ACM, and the Taylor Booth Education Award from the Institute for Electrical and Electronic Engineers Computer Society (IEEE-CS).Table of ContentsTable of Contents A Gentle Introduction 1.1 Introducing Karel 1.2 Teaching Karel to solve problems 1.3 Control statements 1.4 Stepwise refinement 1.5 Algorithms in Karel’s world Summary Review questions Exercises Introducing JavaScript 2.1 Data and types 2.2 Numeric data 2.3 Variables 2.4 Functions 2.5 String data 2.6 Running JavaScript in the browser 2.7 Testing and debugging 2.8 Software maintenance Summary Review questions Exercises Control Statements 3.1 Boolean Data 3.2 The if statement 3.3 The switch statement 3.4 The while statement 3.5 The for statement 3.6 Algorithmic programming 3.7 Avoiding fuzzy standards of truth Summary Review questions Exercises Simple Graphics 4.1 A graphical version of “Hello World” 4.2 Classes, objects, and methods 4.3 Graphical objects 4.4 The graphics window 4.5 Creating graphical applications Summary Review questions Exercises Functions 5.1 A quick review of functions 5.2 Libraries 5.3 A library to support randomness 5.4 The mechanics of function calls 5.5 Recursive functions Summary Review questions Exercises Writing Interactive Programs 6.1 First-class functions 6.2 A simple interactive example 6.3 Controlling properties of objects 6.4 Responding to mouse events 6.5 Timer-based animation 6.6 Expanding the graphics library Summary Review questions Exercises Strings 7.1 Binary representation 7.2 String operations 7.3 Classifying characters 7.4 Common string patterns 7.5 String applications 7.6 Reading from the console Summary Review questions Exercises Arrays 8.1 Introduction to arrays 8.2 Array operations 8.3 Using arrays for tabulation 8.4 Reading text from files 8.5 Multidimensional arrays 8.6 Image processing Summary Review questions Exercises Objects 9.1 Objects in JavaScript 9.2 Using objects as maps 9.3 Representing points 9.4 Rational numbers 9.5 Linking objects together Summary Review questions Exercises Designing Data Structures 10.1 Abstract data types 10.2 Implementing a token scanner 10.3 Efficiency and representation 10.4 Representing real-world data Summary Review questions Exercises Inheritance 11.1 Class hierarchies 11.2 Defining an employee hierarchy 11.3 Extending graphical classes 11.4 Decomposition and inheritance 11.5 Alternatives to inheritance Summary Review questions Exercises JavaScript and the Web 12.1 A simple interactive example 12.2 An expanded look at HTML 12.3 Controlling style using CSS 12.4 Connecting JavaScript and HTML 12.5 Storing data in the index.html file Summary Review questions Exercises

    1 in stock

    £103.70

  • Quick Start Guide to Large Language Models

    Pearson Education Quick Start Guide to Large Language Models

    3 in stock

    Book SynopsisSinan Ozdemir is currently the founder and CTO of LoopGenius and an advisor to several AI companies. Sinan is a former lecturer of Data Science at Johns Hopkins University and the author of multiple textbooks on data science and machine learning. Additionally, he is the founder of the recently acquired Kylie.ai, an enterprise-grade conversational AI platform with RPA capabilities. He holds a master's degree in Pure Mathematics from Johns Hopkins University and is based in San Francisco, CA.

    3 in stock

    £35.99

  • Sams Publishing Beginning Programming in 24 Hours Sams Teach

    Out of stock

    Book Synopsis

    Out of stock

    £23.99

  • Problem Solving Abstraction and Design using C

    Pearson Education (US) Problem Solving Abstraction and Design using C

    Out of stock

    Book SynopsisElliot Koffman is a professor of computer and information science at Temple University. He is one of the country's foremost CS educators, a former chairman of the ACM Task Force for introductory programming methods courses, and the co-author of Problem Solving, Abstraction, and Design, Problem Solving and Program Design in C, (both with Pearson) Objects, Abstraction, Data Structures and Design Using C++, and Objects, Abstraction, Data Structures and Design Using Java Version 5.0 (both with John Wiley & Sons). Dr. Frank L. Friedman is Professor and Chairman of Computer and Information Science at Temple University. He received M.S. degrees from Johns Hopkins University and Purdue University and his Ph.D. in Computer Science from Purdue University. Dr. Friedman is the co-author of Problem Solving, Abstraction, and Design Using C++ and other textbooks on programming in Fortran and Basic. His currentTable of ContentsBrief Contents chapter 0: Computer Science as a Career Path 1 chapter 1: Introduction to Computers, Problem Solving, and Programming 15 chapter 2: Overview of C++ 53 chapter 3: Top-Down Design with Functions and Classes 117 chapter 4: Selection Structures: if and switch Statements 197 chapter 5: Repetition and Loop Statements 259 chapter 6: Modular Programming 333 chapter 7: Simple Data Types 387 chapter 8: Streams and Files 443 chapter 9: Data Structures:Arrays and Structs 487 chapter 10: User-Defined Classes 565 chapter 11: Data Abstraction and Object-Oriented Design 627 chapter 12: Recursion 691 chapter 13: Pointers and Dynamic Data Structures 729 chapter 14: Multiprocessing Using Processes and Threads 795 Index 851 The following are available online: Appendix A ASCII Character Set Appendix B Reserved Words and Special Characters Appendix C Selected C++ Library Facilities Appendix D Operators Appendix E A Brief Introduction to Inheritance and Polymorphism Answers to Odd-Numbered Questions

    Out of stock

    £145.42

  • Foundational Python for Data Science

    Pearson Education (US) Foundational Python for Data Science

    15 in stock

    Book Synopsis Kennedy Behrman is a veteran software and data engineer. He first used Python writing asset management systems in the Visual Effects industry. He then moved into the startup world, using Python at startups using machine learning to characterize videos and predict the social media power of athletes. Table of ContentsPreface xiii I: Learning Python in a Notebook Environment 1 1 Introduction to Notebooks 3 2 Fundamentals of Python 13 3 Sequences 25 4 Other Data Structures 37 5 Execution Control 55 6 Functions 67 II: Data Science Libraries 83 7 NumPy 85 8 SciPy 103 9 Pandas 113 10 Visualization Libraries 135 11 Machine Learning Libraries 153 12 Natural Language Toolkit 159 III: Intermediate Python 171 13 Functional Programming 173 14 Object-Oriented Programming 187 15 Other Topics 201 A Answers to End-of-Chapter Questions 215 Index 221

    15 in stock

    £42.74

© 2026 Book Curl

    • American Express
    • Apple Pay
    • Diners Club
    • Discover
    • Google Pay
    • Maestro
    • Mastercard
    • PayPal
    • Shop Pay
    • Union Pay
    • Visa

    Login

    Forgot your password?

    Don't have an account yet?
    Create account