![]() |
Welcome to Loot.co.za!
Sign in / Register |Wishlists & Gift Vouchers |Help | Advanced search
|
Your cart is empty |
||
|
Books > Computing & IT > Computer programming > Programming languages
Encompassing a broad range of forms and sources of data, this textbook introduces data systems through a progressive presentation. Introduction to Data Systems covers data acquisition starting with local files, then progresses to data acquired from relational databases, from REST APIs and through web scraping. It teaches data forms/formats from tidy data to relationally defined sets of tables to hierarchical structure like XML and JSON using data models to convey the structure, operations, and constraints of each data form. The starting point of the book is a foundation in Python programming found in introductory computer science classes or short courses on the language, and so does not require prerequisites of data structures, algorithms, or other courses. This makes the material accessible to students early in their educational career and equips them with understanding and skills that can be applied in computer science, data science/data analytics, and information technology programs as well as for internships and research experiences. This book is accessible to a wide variety of students. By drawing together content normally spread across upper level computer science courses, it offers a single source providing the essentials for data science practitioners. In our increasingly data-centric world, students from all domains will benefit from the "data-aptitude" built by the material in this book.
Electronic Chips & Systems Design Languagesoutlines and describes the latest advances in design languages. The challenge of System on a Chip (SOC) design requires designers to work in a multi-lingual environment which is becoming increasingly difficult to master. It is therefore crucial for them to learn, almost in real time, from the experiences of their colleagues in the use of design languages and how these languages have become more advanced to cope with system design. System designers, as well as students willing to become system designers, often do not have the time to attend all scientific events where they could learn the necessary information. This book will bring them a selected digest of the best contributions and industry strength case studies. All the levels of abstraction that are relevant, from the informal user requirements down to the implementation specifications, are addressed by different contributors. The author, together with colleague authors who provide valuable additional experience, presents examples of actual industrial world applications. Furthermore the academic concepts presented in this book provide excellent theories to student readers and the concepts described are up to date and in so doing provide most suitable root information for Ph.D. postgraduates.
A Tour of Data Science: Learn R and Python in Parallel covers the fundamentals of data science, including programming, statistics, optimization, and machine learning in a single short book. It does not cover everything, but rather, teaches the key concepts and topics in Data Science. It also covers two of the most popular programming languages used in Data Science, R and Python, in one source. Key features: Allows you to learn R and Python in parallel Cover statistics, programming, optimization and predictive modelling, and the popular data manipulation tools - data.table and pandas Provides a concise and accessible presentation Includes machine learning algorithms implemented from scratch, linear regression, lasso, ridge, logistic regression, gradient boosting trees, etc. Appealing to data scientists, statisticians, quantitative analysts, and others who want to learn programming with R and Python from a data science perspective.
Entering the field of artificial intelligence and data science can seem daunting to beginners with little to no prior background, especially those with no programming experience. The concepts used in self-driving cars and virtual assistants like Amazon's Alexa may seem very complex and difficult to grasp. The aim of Artificial Intelligence in Python is to make AI accessible and easy to understand for people with little to no programming experience though practical exercises. Newcomers will gain the necessary knowledge on how to create such systems, which are capable of executing tasks that require some form of human-like intelligence. This book introduces readers to various topics and examples of programming in Python, as well as key concepts in artificial intelligence. Python programming skills will be imparted as we go along. Concepts and code snippets will be covered in a step-by-step manner, to guide and instill confidence in beginners. Complex subjects in deep learning and machine learning will be broken down into easy-to-digest content and examples. Artificial intelligence implementations will also be shared, allowing beginners to generate their own artificial intelligence algorithms for reinforcement learning, style transfer, chatbots, speech, and natural language processing.
If you're an experienced programmer, you already have a rock-solid
foundation for learning Java. All you need is a resource that takes
your experience into account and explains Java's key principles and
techniques in an intelligent, efficient way.
Author has unique knowledge of Visual C++ 2005 development at Microsoft, including many undocumented features, hints and tips which he records for the first time in this book Presents a fast-track entry for developers familiar with C#, into the VC++ world Complete coverage of Visual C++ 2005 to ensure that readers will have broad understanding necessary to leverage the unique, powerful features
The Unified Modeling Language (UML) is an evolutionary general-purpose, tool-supported, and industry-standardized (OMG) modeling language for specifying, visualizing, constructing, and documenting the artifacts of a system-intensive process. "Guide to Applying the UML" offers a practical bridge between tutorials and reference works, demonstrating how all of the elements of the UML fit together holistically and cohesively. It closes the gap between the UML and process using a ¿roadmap¿ that addresses the key decision points and their relationships, providing a comprehensive framework. The focus is on rules of usage and principles of composition, style guidelines, practical real-world examples, and a tool-, process-, and technology-independent roadmap for effectively and successfully applying the UML. Topics and features: * Essential rules for using the UML and composing UML models are collated around important UML constructs *Presents a broad introduction to applying the UML, without having to prematurely adopt a particular process *Provides detailed examples, enabling readers to make informed decisions when modeling across the system development life cycle *Demonstrates how UML elements are related and how the UML supports traceability and scales for the life cycle process *Clear, well-developed diagrams simplify learning and applying core concepts and techniques With its focused, yet highly accessible approach, this guide strikes an integrated balance between UML rules and practices. It is an authoritative and comprehensive reference for software practitioners and professionals involved in the design, development, and management of UML-related software projects. About the author: Sinan Si Alhir is a highly respected consultant and has extensive information systems/technology experience, and breadth and depth in all phases of the system development life cycle. With experience in both high- and low-level project work, and broad and deep knowledge of technology and methodology, he endeavors to deliver quality solution-oriented results within various application domains using a multitude of technologies and approaches. He specializes in object-orientation, methodology/process, the Unified Modeling Language (UML), and various other disciplines and subjects, and focuses on empowering organizations to benefit from their application.
This edited book presents scientific results of the 14th International Conference on Software Engineering, Artificial Intelligence Research, Management and Applications (SERA 2016) held on June 8-10, 2016 at Towson University, USA. The aim of this conference was to bring together researchers and scientists, businessmen and entrepreneurs, teachers, engineers, computer users, and students to discuss the numerous fields of computer science and to share their experiences and exchange new ideas and information in a meaningful way. Research results about all aspects (theory, applications and tools) of computer and information science, and to discuss the practical challenges encountered along the way and the solutions adopted to solve them. The conference organizers selected the best papers from those papers accepted for presentation at the conference. The papers were chosen based on review scores submitted by members of the program committee, and underwent further rigorous rounds of review. This publication captures 13 of the conference's most promising papers, and we impatiently await the important contributions that we know these authors will bring to the field of computer and information science.
This is a one-semester, introductory programming textbook in Java that uses game applications as a central pedagogical tool to improve student engagement, learning outcomes, and retention. Game programming is incorporated into the text in a way that does not compromise the amount of material traditionally covered in a basic programming course and permits instructors who are not familiar with game programming and computer graphics concepts to realize the verified pedagogical advantages of game applications. The companion disc includes a game environment that is easily integrated into projects created with the popular Java Development Environments, including Eclipse, NetBeans, and JCreator in a student-friendly way and also includes a set of executable student games to peak their interest by giving them a glimpse into their future capabilities. The material presented in the book is in full compliance with the 2013 ACM/IEEE computer science curriculum guidelines. It has been used to teach programming to students whose majors are within and outside of the computing fields. Ancillaries include a comprehensive instructor's resource disc with programming solutions, slides, quizzes, projects, and more. Features: Uses an objects-early approach to learning Java Follows the 2013 ACM/IEEE computer science curriculum guidelines Integrates game applications as a central pedagogical tool to improve student engagement, learning outcomes, and retention Includes a companion disc with projects created with the popular Java Development Environments; also includes a set of executable student games, source code, and figures Uses working programs to illustrate concepts under discussion Complete instructor's resource package available upon adoption
The Rust programming language is consistent and does its best to avoid surprising the programmer. Like all languages, though, Rust still has its quirks. But these quirks present a teaching opportunity. In this book, you'll work through a series of brain teasers that will challenge your understanding of Rust. By understanding the gaps in your knowledge, you can become better at what you do and avoid mistakes. Many of the teasers in this book come from the author's own experience creating software. Others derive from commonly asked questions in the Rust community. Regardless of their origin, these brain teasers are fun, and let's face it: who doesn't love a good puzzle, right? What better way to exercise your brain and increase your Rust programming knowledge than with a collection of dynamic brain teasers? As you read through each of these puzzles and try to work out the answers, you'll not only learn about Rust's unique quirks and peculiarities, you'll also have loads of fun along the way. Dive right in and get started with example code and sample problems that cover numbers and text, shadowing and memory, and everything in between. Try to figure out why a particular program won't compile, why it produces unexpected output, or why it panics and terminates with an error message. Once you've run the code and read the answer, it's time to get to the heart of the matter with a detailed explanation. Learn why a program produced the result it did, and discover how similar issues might affect the code you write in your own programs, even in production. Sourced from engaging discussions within the Rust community, real-world problems, and even reader feedback, these challenges will certainly surprise, enlighten, and entertain you. Are you ready to experience Rust like never before? Then sharpen your brain and get ready for a challenge! What You Need: This book assumes you have some knowledge of the Rust programming language. To work through the brain teasers in this book, you'll need a working Rust environment on any platform. You can install Rust by visiting https: //rustup.rs/. You'll also need a text editor or Rust-friendly IDE.
In the past few decades Computer Hardware Description Languages (CHDLs) have been a rapidly expanding subject area due to a number of factors, including the advancing complexity of digital electronics, the increasing prevalence of generic and programmable components of software-hardware and the migration of VLSI design to high level synthesis based on HDLs. Currently the subject has reached the consolidation phase in which languages and standards are being increasingly used, at the same time as the scope is being broadened to additional application areas. This book presents the latest developments in this area and provides a forum from which readers can learn from the past and look forward to what the future holds.
Groovy Programming is an introduction to the Java-based scripting
language Groovy. Groovy has much in common with popular scripting
languages such as Perl, Python, and Ruby, but is written in a
Java-like syntax. And, unlike these other languages, Groovy is
sanctioned by the Java community for use on the Java platform.
Since it is based on Java, applications written in Groovy can make
full use of the Java Application Programmer Interfaces (APIs). This
means Groovy can integrate seamlessly with applications written in
Java, while avoiding the complexities of the full Java language.
This bare-bones structure also means Groovy can be used as an
introduction to Java and to programming in general. Its simpler
constructions and modern origins make it ideal as a first language
and for introducing principles such as object-oriented
programming.
This classroom-tested and clearly-written textbook presents a focused guide to the conceptual foundations of compilation, explaining the fundamental principles and algorithms used for defining the syntax of languages, and for implementing simple translators. This significantly updated and expanded third edition has been enhanced with additional coverage of regular expressions, visibly pushdown languages, bottom-up and top-down deterministic parsing algorithms, and new grammar models. Topics and features: describes the principles and methods used in designing syntax-directed applications such as parsing and regular expression matching; covers translations, semantic functions (attribute grammars), and static program analysis by data flow equations; introduces an efficient method for string matching and parsing suitable for ambiguous regular expressions (NEW); presents a focus on extended BNF grammars with their general parser and with LR(1) and LL(1) parsers (NEW); introduces a parallel parsing algorithm that exploits multiple processing threads to speed up syntax analysis of large files; discusses recent formal models of input-driven automata and languages (NEW); includes extensive use of theoretical models of automata, transducers and formal grammars, and describes all algorithms in pseudocode; contains numerous illustrative examples, and supplies a large set of exercises with solutions at an associated website. Advanced undergraduate and graduate students of computer science will find this reader-friendly textbook to be an invaluable guide to the essential concepts of syntax-directed compilation. The fundamental paradigms of language structures are elegantly explained in terms of the underlying theory, without requiring the use of software tools or knowledge of implementation, and through algorithms simple enough to be practiced by paper and pencil.
This book is about describing the meaning of programming languages. The author teaches the skill of writing semantic descriptions as an efficient way to understand the features of a language. While a compiler or an interpreter offers a form of formal description of a language, it is not something that can be used as a basis for reasoning about that language nor can it serve as a definition of a programming language itself since this must allow a range of implementations. By writing a formal semantics of a language a designer can yield a far shorter description and tease out, analyse and record design choices. Early in the book the author introduces a simple notation, a meta-language, used to record descriptions of the semantics of languages. In a practical approach, he considers dozens of issues that arise in current programming languages and the key techniques that must be mastered in order to write the required formal semantic descriptions. The book concludes with a discussion of the eight key challenges: delimiting a language (concrete representation), delimiting the abstract content of a language, recording semantics (deterministic languages), operational semantics (non-determinism), context dependency, modelling sharing, modelling concurrency, and modelling exits. The content is class-tested and suitable for final-year undergraduate and postgraduate courses. It is also suitable for any designer who wants to understand languages at a deep level. Most chapters offer projects, some of these quite advanced exercises that ask for complete descriptions of languages, and the book is supported throughout with pointers to further reading and resources. As a prerequisite the reader should know at least one imperative high-level language and have some knowledge of discrete mathematics notation for logic and set theory.
Formal Languages and Applications provides a comprehensive study-aid and self-tutorial for graduates students and researchers. The main results and techniques are presented in an readily accessible manner and accompanied by many references and directions for further research. This carefully edited monograph is intended to be the gateway to formal language theory and its applications, so it is very useful as a review and reference source of information in formal language theory.
Learn how to combine different technologies to create sophisticated, database-driven Web sites This text allows readers to gain the core programming knowledge needed to build a database-driven Web site using a step-by-step approach. Each stage of Web site development is carefully explained, from installation to production of the site. The book, based on a course developed by the author, features a carefully constructed organization that shows readers how to begin creating Web pages, and then incrementally add greater functionality as they progress through the text. A key strength of this book is its use of multiple programming languages and applications. By selecting among the best options from HTML, JavaScript, MySQL, PHP, Apache, and Linux/UNIX, readers learn to develop Web sites that are specifically tailored to meet their needs. Brief chapters, each focusing on one core theme, are designed to allow readers to learn at their own pace. Among the key chapters is one dedicated to teaching how to install a Web server with all the required modules to run the scripts presented in the book. Examples are used extensively throughout, illustrating key concepts and techniques Author draws from his own extensive experience to offer expert tips and point out pitfalls to avoid Exercises help readers put their knowledge into practice The examples, as well as sample solutions to the exercises, are posted online to give readers more opportunity to work with the scripts With its step-by-step approach, this book is ideally suited for anyone who wants to learn how to create complete Web sites. No previous knowledge of any programming language is needed. For experienced Web designers, thebook will bring their programming skills to a higher level by enabling them to create dynamic pages linked to a database.
This fourth Edition presents new examples on submodules, derived type i/o, object oriented programming, abstract interfaces and procedure pointers, C interop, sorting and searching, statistics and converting to more modern versions of Fortran. Key Features Highlights the core language features of modern Fortran including data typing, array processing, control structures, functions, subroutines, modules and submodules, user defined types, pointers, operator overloading, generic programming, parallel programming, abstract interfaces, procedure pointers Pinpoints common problems that occur when programming Illustrates the use of several compilers Introduction to Programming with Fortran has been written for the complete beginner with little or no programming background as well as existing Fortran programmers and those with programming experience in other languages
This book presents comprehensive studies on nine specification languages and their logics of reasoning. The editors and authors are authorities on these specification languages and their application. In a unique feature, the book closes with short commentaries on the specification languages written by researchers closely associated with their original development. The book contains extensive references and pointers to future developments.
For undergraduate students in Computer Science and Computer Programming courses A solid foundation in the basics of C++ programming will allow students to create efficient, elegant code ready for any production environment. Learning basic logic and fundamental programming techniques is essential for new programmers to succeed. A distinctive fundamentals-first approach and clear, concise writing style characterize Introduction to Programming with C++, 3/e. Basic programming concepts are introduced on control statements, loops, functions, and arrays before object-oriented programming is discussed. Abstract concepts are carefully and concretely explained using simple, short, and stimulating examples. Explanations are presented in brief segments, with many figures and tables. NEW! This edition is available with MyProgrammingLab, an innovative online homework and assessment tool. Through the power of practice and immediate personalized feedback, MyProgrammingLab helps students fully grasp the logic, semantics, and syntax of programming. Note: If you are purchasing the standalone text or electronic version, MyProgrammingLab does not come automatically packaged with the text. To purchase MyProgrammingLab, please visit: myprogramminglab.com or you can purchase a package of the physical text + MyProgrammingLab by searching the Pearson Higher Education web site. MyProgrammingLab is not a self-paced technology and should only be purchased when required by an instructor. Teaching and Learning Experience To provide a better teaching and learning experience, for both instructors and students, this program offers: *Fundamentals-First: Basic programming concepts are introduced on control statements, loops, functions, and arrays before object-oriented programming is discussed. *Problem-Driven Motivation: The examples and exercises throughout the book emphasize problem solving and foster the concept of developing reusable components and using them to create practical projects. *Support for Instructors and Students: The author maintains a website at http://www.cs.armstrong.edu/liang/cpp3e that includes multiple interactive resources.
Debugging by Thinking: A Multi-Disciplinary Approach is the first
book to apply the wisdom of six disciplines logic, mathematics,
psychology, safety analysis, computer science, and engineering to
the problem of debugging. It uses the methods of literary
detectives such as Sherlock Holmes, the techniques of mathematical
problem solving, the results of research into the cognitive
psychology of human error, the root cause analyses of safety
experts, the compiler analyses of computer science, and the
processes of modern engineering to define a systematic approach to
identifying and correcting software errors.
This book contains 25 short programs that will challenge your understanding of Pandas. Like any big project, the Pandas developers had to make some design decisions that at times seem surprising. This book uses those quirks as a teaching opportunity. By understanding the gaps in your knowledge, you'll become better at what you do. Some of the teasers are from the author's experience shipping bugs to production, and some from others doing the same. Teasers and puzzles are fun, and learning how to solve them can teach you to avoid programming mistakes and maybe even impress your colleagues and future employers. Working with data is central to nearly everything we do, from disease contact tracing and analyzing health records to smart meters that track utility consumption behavior. With the power of Python's pandas library, you can process and analyze this data in a highly efficient and simple-to-understand way. And with 25 brain teasers designed to turn this technology's quirks into a teaching opportunity, you'll be honing your data science skills while having fun at the same time. Following a simple format, you'll challenge yourself and your understanding of pandas. Read a short Python program that uses pandas, try to guess the output, run the code yourself, and then go to the next page for an explanation of the solution. From common pitfalls and hidden gotchas to unexpected twists and turns, you'll deepen your understanding of pandas, learn to write more efficient code, and reduce the number of bugs in the software you develop. You may even impress your colleagues and your employers, both present and future. Learn the tricks of the trade with Python's pandas, in one of the most fun and creative ways around. What You Need: To run the code you'll need Python version 3.8 or upper and Pandas version 1.0 or upper installed. We use Python version 3.8.3 and Pandas version 1.0.5; the output might change in future versions.
This easy-to-understand textbook presents a modern approach to learning numerical methods (or scientific computing), with a unique focus on the modeling and applications of the mathematical content. Emphasis is placed on the need for, and methods of, scientific computing for a range of different types of problems, supplying the evidence and justification to motivate the reader. Practical guidance on coding the methods is also provided, through simple-to-follow examples using Python. Topics and features: provides an accessible and applications-oriented approach, supported by working Python code for many of the methods; encourages both problem- and project-based learning through extensive examples, exercises, and projects drawn from practical applications; introduces the main concepts in modeling, python programming, number representation, and errors; explains the essential details of numerical calculus, linear, and nonlinear equations, including the multivariable Newton method; discusses interpolation and the numerical solution of differential equations, covering polynomial interpolation, splines, and the Euler, Runge-Kutta, and shooting methods; presents largely self-contained chapters, arranged in a logical order suitable for an introductory course on scientific computing. Undergraduate students embarking on a first course on numerical methods or scientific computing will find this textbook to be an invaluable guide to the field, and to the application of these methods across such varied disciplines as computer science, engineering, mathematics, economics, the physical sciences, and social science.
For courses in Java Programming. Introducing the fundamental concepts of programming with JavaScript A brand new textbook by Eric Roberts, Understanding Programming through JavaScript focuses on the fundamental concepts of programming, and is written for students with no prior knowledge or experience. It draws on a rich pedagogical heritage-including the immersive Karel the Robot microworld, time-testing programming guidelines, and a logical, step-by-step organization-to give them the foundational skills needed to pursue other coding languages, or a career in computer programming. Using the text, students will build their skills and develop live, interactive web applications that really work on web browsers, providing both instant feedback and gratification. This new text includes chapter openers that humanize computing, review questions for student self-testing, and many other valuable features. |
You may like...
Introducing Delphi Programming - Theory…
John Barrow, Linda Miller, …
Paperback
(1)R751 Discovery Miles 7 510
Graphical Programming Using LabVIEW (TM…
Julio Cesar Rodriguez-Quinonez, Oscar Real-Moreno
Hardcover
Introduction to Computational Economics…
Hans Fehr, Fabian Kindermann
Hardcover
R4,258
Discovery Miles 42 580
Advanced Visual Basic 6 - Power…
Matthew Curland, Gary Clarke
Paperback
R1,273
Discovery Miles 12 730
Dark Silicon and Future On-chip Systems…
Suyel Namasudra, Hamid Sarbazi-Azad
Hardcover
R3,940
Discovery Miles 39 400
|