Search Constraints
Number of results to display per page
Results for:
Keywords
Computer programming
Remove constraint Keywords: Computer programming
1 - 39 of 39
Search Results
-
Others
Python can be easy to pick up whether you're a first time programmer or you're experienced with other languages. The following pages are a useful first step to get on your way writing programs with Python!
- Subjects:
- Computing
- Keywords:
- Computer programming Python (Computer program language) Information visualization Computer science
- Resource Type:
- Others
-
Courseware
This course explores the concepts and algorithms at the foundation of modern artificial intelligence, diving into the ideas that give rise to technologies like game-playing engines, handwriting recognition, and machine translation. Through hands-on projects, students gain exposure to the theory behind graph search algorithms, classification, optimization, reinforcement learning, and other topics in artificial intelligence and machine learning as they incorporate them into their own Python programs. By course’s end, students emerge with experience in libraries for machine learning as well as knowledge of artificial intelligence principles that enable them to design intelligent systems of their own.
- Course related:
- COMP3011 Design and Analysis of Algorithms, COMP1001 Problem Solving Methodology in Information Technology, COMP4434 Artificial Intelligence, and COMP2011 Data Structures
- Subjects:
- Human-Computer Interaction and Computing
- Keywords:
- Computer programming Computer science Python (Computer program language) Artificial intelligence
- Resource Type:
- Courseware
-
Others
Learn to code, design, and more—all on your own time
- Subjects:
- Computing
- Keywords:
- Coding theory Mobile apps Computer programming
- Resource Type:
- Others
-
Others
In these comprehensive video courses, created by Santiago Basulto, you will learn the whole process of data analysis. You'll be reading data from multiple sources (CSV, SQL, Excel), process that data using NumPy and Pandas, and visualize it using Matplotlib and Seaborn, Additionally, we've included a thorough Jupyter Notebook course, and a quick Python reference to refresh your programming skills.
- Course related:
- AMA1600 Fundamentals of AI and Data Analytics and AMA1751 Linear Algebra
- Subjects:
- Mathematics and Statistics and Computing
- Keywords:
- Computer programming Computer science Python (Computer program language)
- Resource Type:
- Others
-
Others
菜鸟教程的 Slogan 为:学的不仅是技术,更是梦想!我们相信:再牛逼的梦想也抵不住傻逼似的坚持!我们坚持一件事情,并不是因为这样做了会有效果,而是坚信,这样做是对的。本站域名为 runoob.com, runoob 为 Running Noob 的缩写,意为:奔跑的菜鸟。本站包括了HTML、CSS、Javascript、PHP、C、Python等各种基础编程教程。同时本站中也提供了大量的在线实例,通过实例,您可以更好地学习如何建站。本站致力于推广各种编程语言技术,所有资源是完全免费的,并且会根据当前互联网的变化实时更新本站内容。
- Subjects:
- Computing
- Keywords:
- Programming languages (Electronic computers) Computer programming
- Resource Type:
- Others
-
Video
This channel walks you through the entire process of learning to code in Python; all the way from basics to advanced machine learning and deep learning. The primary emphasis will be on image processing and other relevant functionality. Why did I create this channel? To help you (students and researchers) gain a new skill and succeed in your respective fields.
You may think coding is hard and that it's not your cup of tea, but Python made it easy to code even advanced algorithms. In addition, coding will make you self sufficient, it will teach you how to think, it improves your collaborative skills and it can take your career to new heights. Therefore, if you want to stay ahead of your peers and relevant in your field, overcome your fears and start coding!
- Subjects:
- Computing
- Keywords:
- Computer programming Computer science Python (Computer program language)
- Resource Type:
- Video
-
Video
An online lecture on the topic of "Computer Software Challenges for Aerospace Missions".This lecture of “Science World: Exploring Space to Benefit Mankind” Education Programme in the 2021/22 school year for secondary students, which aims to cultivate the interest of local youth in space science and elevate their enthusiasm for participating in the development of space technology.
- Subjects:
- Aeronautical and Aviation Engineering and Computing
- Keywords:
- Aeronautics -- Data processing Computer programming
- Resource Type:
- Video
-
Others
Colaboratory, or "Colab" for short, allows you to write and execute Python in your browser, with
(1) Zero configuration required
(2) Free access to GPUs
(3) Easy sharing
Whether you're a student, a data scientist or an AI researcher, Colab can make your work easier. Watch Introduction to Colab to learn (https://www.youtube.com/watch?v=inN8seMm7UI) more, or just get started below!
- Course related:
- COMP3011 Machine Learning and Data Analytics
- Subjects:
- Computing
- Keywords:
- Computer programming Computer science Python (Computer program language)
- Resource Type:
- Others
-
Others
We're like Duolingo for learning to code. When learning to code, most people get stuck on the "bridge" between memorizing syntax and understanding the logic that makes it all work. We believe the most effective way to learn a programming language is to break the process into three phases:(1)Memorize syntax; (2) Solve problems; and (3) Make stuff. Most beginners jump from memorizing syntax directly into making stuff (or trying) without fully understanding how syntax is used to solve problems. In other words, they haven't learned how to think like a programmer, yet they're trying to solve problems like a programmer. Edabit was created to bridge this gap, while also making the process fun and addictive.
- Course related:
- COMP1011 Programming Fundamentals
- Subjects:
- Computing
- Keywords:
- Computer programming
- Resource Type:
- Others
-
e-book
Este libro está dirigido, principalmente, a Estudiantes y Docentes que quieren aprender a programarcomo forma de fortalecer sus capacidades cognoscitivas y así obtener un beneficio adicional de su computador para lograr un mejor provecho de sus estudios. Dada la orientación del libro respecto a programar para resolver problemas asociados a las Ciencias e Ingenierías, el requisito mínimo de matemáticas que hemos elegido para presentar el contenido del mismo se cubre, normalmente, en el tercer año del bachillerato. No obstante, el requisito no es obligatorio para leer el libro en su totalidad y adquirir los conocimientos de programación obviando el contenido matemático.
- Subjects:
- Computing
- Keywords:
- Computer programming Programming languages (Electronic computers) Textbooks Python (Computer program language)
- Resource Type:
- e-book
-
e-book
How to Think Like a Computer Scientist: Learning with Pythonis an introduction to programming using Python.
- Subjects:
- Computing
- Keywords:
- Computer programming Programming languages (Electronic computers) Textbooks Python (Computer program language)
- Resource Type:
- e-book
-
e-book
The book is based on “First semester in Numerical Analysis with Julia”, written by Giray Ökten. The contents of the original book are retained, while all the algorithms are implemented in Python (Version 3.8.0). Python is an open source (under OSI), interpreted, general-purpose programming language that has a large number of users around the world. Python is ranked the third in August 2020 by the TIOBE programming community index, a measure of popularity of programming languages, and is the top-ranked interpreted language. We hope this book will better serve readers who are interested in a first course in Numerical Analysis, but are more familiar with Python for the implementation of the algorithms. The first chapter of the book has a self-contained tutorial for Python, including how to set up the computer environment. Anaconda, the open-source individual edition, is recommended for an easy installation of Python and effortless management of Python packages, and the Jupyter environment, a web-based interactive development environment for Python as well as many other programming languages, was used throughout the book and is recommended to the readers for easy code development, graph visualization and reproducibility.
- Subjects:
- Computing
- Keywords:
- Numerical analysis Computer programming Programming languages (Electronic computers) Textbooks Python (Computer program language)
- Resource Type:
- e-book
-
e-book
Think Raku is an introduction to computer science and programming intended for people with little or no experience. This aim of this book is not primarily to teach Raku, but instead to teach the art of programming, using the Raku language. After having completed this book, you should hopefully be able to write programs to solve relatively difficult problems in Raku, but my main aim is to teach computer science, software programming, and problem solving rather than solely to teach the Raku language itself. Think Raku is a free book available under a Creative Commons license. Readers are free to copy and distribute the text; they are also free to modify it, which allows them to adapt the book to different needs, and to help develop new material.
- Subjects:
- Computing
- Keywords:
- Computer programming Programming languages (Electronic computers) Textbooks
- Resource Type:
- e-book
-
e-book
Computers are everywhere in our daily lives. Between the desktop, laptop, phone, bank, and vehicle, it is difficult to completely get away from computers. It only makes sense to learn a little about how a computer really works.This text provides an introduction to programming and problem solving using the Fortran 95/2003/2008 programming language. This introduction is geared for non-computer science majors. The primary focus is on an introduction to problem solving and algorithm development. As such, many details of the Fortran 95/2003/2008 language are omitted.
- Subjects:
- Computing
- Keywords:
- Computer programming FORTRAN (Computer program language) Textbooks
- Resource Type:
- e-book
-
e-book
This book will teach you how to make graphical computer games in the Python programming language using the Pygame library.This book assumes you know a little bit about Python or programming in general. If you don’t know how to program, you can learn by downloading the free book "Invent Your Own Computer Games with Python" from http://inventwithpython.com. Or you can jump right into this book and mostly pick it up along the way. This book is for the intermediate programmer who has learned what variables and loops are, but now wants to know, "What do actual game programs look like?" There was a long gap after I first learned programming but didn’t really know how to use that skill to make something cool. It’s my hope that the games in this book will give you enough ideas about how programs work to provide a foundation to implement your own games.
- Subjects:
- Computing
- Keywords:
- Computer programming Computer games Python (Computer program language) Textbooks Programming languages (Electronic computers)
- Resource Type:
- e-book
-
e-book
The goal of this book is to teach you to think like a computer scientist. I like the way computer scientists think because they combine some of the best features of Mathematics, Engineering, and Natural Science. Like mathematicians, computer scientists use formal languages to denote ideas (specifically computations). Like engineers, they design things, assembling components into systems and evaluating trade offs among alternatives. Like scientists, they observe the behavior of complex systems, form hypotheses, and test predictions.The single most important skill for a computer scientist is problem-solving. By that I mean the ability to formulate problems, think creatively about solutions, and express a solution clearly and accurately. As it turns out, the process of learning to program is an excellent opportunity to practice problem-solving skills. That’s why this chapter is called “The way of the program.”
- Subjects:
- Computing
- Keywords:
- Computer programming Programming languages (Electronic computers) C (Computer program language) Textbooks
- Resource Type:
- e-book
-
e-book
The goal of this book is to teach you to think like a computer scientist. I like the way computer scientists think because they combine some of the best features of Mathematics, Engineering, and Natural Science. Like mathematicians,computer scientists use formal languages to denote ideas (specifically computations). Like engineers, they design things, assembling components into systems and evaluating trade offs among alternatives. Like scientists, they observe the behavior of complex systems, form hypotheses, and test predictions.The single most important skill for a computer scientist is problem-solving. By that I mean the ability to formulate problems, think creatively about solutions, and express a solution clearly and accurately. As it turns out, the process of learning to program is an excellent opportunity to practice problem-solving skills. That’s why this chapter is called “The way of the program.”
- Subjects:
- Computing
- Keywords:
- Computer programming C++ (Computer program language) Programming languages (Electronic computers) Textbooks
- Resource Type:
- e-book
-
e-book
"A Byte of Python" is a free book on programming using the Python language. It serves as a tutorial or guide to the Python language for a beginner audience. If all you know about computers is how to save text files, then this is the book for you.
- Subjects:
- Computing
- Keywords:
- Computer programming Programming languages (Electronic computers) Textbooks Python (Computer program language)
- Resource Type:
- e-book
-
e-book
This book was written to introduce students to assembly language programming in MIPS. As with all assemblylanguage programming texts, it covers basic operators and instructions, subprogram calling, loading andstoring memory, program control, and the conversion of the assembly language program into machine code. However this book was not written simply as a book on assembly language programming. The larger purposeof this text is to show how concepts in Higher Level Languages (HLL), such as Java or C/C++, arerepresented in assembly. By showing how program constructs from these HLL map into assembly, theconcepts will be easier to understand and use when the programmer implements programs in languages likeJava or C/C++. Concepts such as references and variables, registers, binary and Boolean operations, subprogram execution, memory types (heap, stack, and static), and array processing are covered to clarify thedecisions made when implementing HLL. Program control is presented using a mapping from structuredprograms in pseudo code to help students understand structured programming, and why it exists. Memoryaccess in assembly is presented to high light the difference between references (pointers) and values, and howthese impact HLL. This book has numerous code examples, and many problems at the end of each chapter, and it is appropriate for a class in Assembly Language, or as a extra resource for a class in Computer Organization.
- Subjects:
- Computing
- Keywords:
- Assembly languages (Electronic computers) Computer programming MIPS (Computer architecture) Textbooks
- Resource Type:
- e-book
-
e-book
JavaScript lies at the heart of almost every modern web application, from social apps like Twitter to browser-based game frameworks like Phaser and Babylon. Though simple for beginners to pick up and play with, JavaScript is a flexible, complex language that you can use to build full-scale applications. This much anticipated and thoroughly revised third edition of Eloquent JavaScript dives deep into the JavaScript language to show you how to write beautiful, effective code. It has been updated to reflect the current state of Java¬Script and web browsers and includes brand-new material on features like class notation, arrow functions, iterators, async functions, template strings, and block scope. A host of new exercises have also been added to test your skills and keep you on track.
- Subjects:
- Computing
- Keywords:
- Java (Computer program language) Computer programming Programming languages (Electronic computers) Textbooks
- Resource Type:
- e-book
-
e-book
This book is Part II of a two-part set that introduces the Java programming language. The text assumes the student will be using the BlueJ development environment and provides some introductory BlueJ material. Our experience has been that BlueJ is easy to learn and provides a good programming environment for the beginner programmer.
- Subjects:
- Computing
- Keywords:
- Java (Computer program language) Computer programming Programming languages (Electronic computers) Textbooks
- Resource Type:
- e-book
-
e-book
This book is Part I of a two-part set that introduces the Java programming language. The text assumes the student will be using the BlueJ development environment and provides some introductory BlueJ material. Our experience has been that BlueJ is easy to learn and provides a good programming environment for the beginner programmer.
- Subjects:
- Computing
- Keywords:
- Java (Computer program language) Computer programming Programming languages (Electronic computers) Textbooks
- Resource Type:
- e-book
-
e-book
Welcome to the Eighth Edition of Introduction to Programming Using Java, a free, on-line textbook on introductory programming, which uses Java as the language of instruction. This book is directed mainly towards beginning programmers, although it might also be useful for experienced programmers who want to learn something about Java. It is not meant to provide complete coverage of the Java language. The eighth edition requires Java 8 or later, and it uses JavaFX for GUI programming. Version 8.1 is a small update of Version 8.0. This version briefly covers some of the new features in Java 11 and makes it clearer how to use this book with Java 11 and later.
- Subjects:
- Computing
- Keywords:
- Java (Computer program language) Computer programming Programming languages (Electronic computers) Textbooks
- Resource Type:
- e-book
-
e-book
I never seemed to find the perfect data-oriented Python book for my course, so I set out to write just such a book. Luckily at a faculty meeting three weeks before I was about to start my new book from scratch over the holiday break, Dr. Atul Prakash showed me the Think Python book which he had used to teach his Python course that semester. It is a well-written Computer Science text with a focus on short, direct explanations and ease of learning.The overall book structure has been changed to get to doing data analysis problems as quickly as possible and have a series of running examples and exercises about data analysis from the very beginning. Chapters 2–10 are similar to the Think Python book, but there have been major changes. Number-oriented examples and exercises have been replaced with data- oriented exercises. Topics are presented in the order needed to build increasingly sophisticated data analysis solutions. Some topics like try and except are pulled forward and presented as part of the chapter on conditionals. Functions are given very light treatment until they are needed to handle program complexity rather than introduced as an early lesson in abstraction. Nearly all user-defined functions have been removed from the example code and exercises outside of Chapter 4. The word “recursion”1 does not appear in the book at all. In chapters 1 and 11–16, all of the material is brand new, focusing on real-world uses and simple examples of Python for data analysis including regular expressions for searching and parsing, automating tasks on your computer, retrieving data across the network, scraping web pages for data, object-oriented programming, using web services, parsing XML and JSON data, creating and using databases using Structured Query Language, and visualizing data. The ultimate goal of all of these changes is a shift from a Computer Science to an Informatics focus is to only include topics into a first technology class that can be useful even if one chooses not to become a professional programmer.
- Subjects:
- Computing
- Keywords:
- Computer programming Programming languages (Electronic computers) Textbooks Python (Computer program language)
- Resource Type:
- e-book
-
e-book
Think Java is a hands-on introduction to computer science and programming used by many universities and high schools around the world. Its conciseness, emphasis on vocabulary, and informal tone make it particularly appealing for readers with little or no experience. The book starts with the most basic programming concepts and gradually works its way to advanced object-oriented techniques. In this fully updated and expanded edition, authors Allen Downey and Chris Mayfield introduce programming as a means for solving interesting problems. Each chapter presents material for one week of a college course and includes exercises to help you practice what you’ve learned. Along the way, you’ll see nearly every topic required for the AP Computer Science A exam and Java SE Programmer I certification.
- Subjects:
- Computing
- Keywords:
- Java (Computer program language) Computer programming Programming languages (Electronic computers) Textbooks
- Resource Type:
- e-book
-
e-book
We have designed this third edition of Java, Java, Java to be suitable for a typical Introduction to Computer Science (CS1) course or for a slightly more advanced Java as a Second Language course. This edition retains the “objects first” approach to programming and problem solving that was characteristic of the first two editions. Throughout the text we emphasize careful coverage of Java language features, introductory programming concepts, and object-oriented design principles. The third edition retains many of the features of the first two editions, including: Early Introduction of Objects Emphasis on Object Oriented Design (OOD) Unified Modeling Language (UML) Diagrams Self-study Exercises with Answers Programming, Debugging, and Design Tips. From the Java Library Sections Object-Oriented Design Sections End-of-Chapter Exercises Companion Web Site, with Power Points and other Resources The In the Laboratory sections from the first two editions have been moved onto the book's Companion Web Site. Table 1 shows the Table of Contents for the third edition.
- Subjects:
- Computing
- Keywords:
- Java (Computer program language) Computer programming Programming languages (Electronic computers) Textbooks
- Resource Type:
- e-book
-
e-book
Programming Fundamentals - A Modular Structured Approach using C++ is written by Kenneth Leroy Busbee, a faculty member at Houston Community College in Houston, Texas. The materials used in this textbook/collection were developed by the author and others as independent modules for publication within the Connexions environment. Programming fundamentals are often divided into three college courses: Modular/Structured, Object Oriented and Data Structures. This textbook/collection covers the first of those three courses. The learning modules of this textbook/collection were written as standalone modules. Students using a collection of modules as a textbook will usually view it contents by reading the modules sequentially as presented by the author of the collection. The learning modules of this textbook/collection were, for the most part, written without consideration of a speci??c programming language. In many cases the C++ language is discussed as part of the explanation of the concept. Often the examples used for C++ are exactly the same for the Java programming language. However, some modules were written speci??cally for the C++ programming language. This could not beavoided as the C++ language is used in conjunction with this textbook/collection by the author in teaching college courses.
- Subjects:
- Computing
- Keywords:
- Computer programming C++ (Computer program language) Programming languages (Electronic computers) Textbooks
- Resource Type:
- e-book
-
e-book
The Little Book of Semaphores is a free (in both senses of the word) textbook that introduces the principles of synchronization for concurrent programming. In most computer science curricula, synchronization is a module in an Operating Systems class. OS textbooks present a standard set of problems with a standard set of solutions, but most students don't get a good understanding of the material or the ability to solve similar problems. The approach of this book is to identify patterns that are useful for a variety of synchronization problems and then show how they can be assembled into solutions. After each problem, the book offers a hint before showing a solution, giving students a better chance of discovering solutions on their own. The book covers the classical problems, including "Readers-writers," "Producer-consumer", and "Dining Philosophers." In addition, it collects a number of not-so-classical problems, some written by the author and some by other teachers and textbook writers. Readers are invited to create and submit new problems.
- Subjects:
- Computing
- Keywords:
- Computer programming Operating systems (Computers) Textbooks
- Resource Type:
- e-book
-
e-book
Think Python is a concise introduction to software design using the Python programming language. Intended for people with no programming experience, this book starts with the most basic concepts and gradually adds new material. Some of the ideas students find most challenging, like recursion and object-oriented programming, are divided into a sequence of smaller steps and introduced over the course of several chapters. This textbook has been used in classes atBard College,Olin College of Engineering, University of California, Santa Barbara, University of Maine, University of Northern Colorado.
- Subjects:
- Computing
- Keywords:
- Computer programming Python (Computer program language) Textbooks Programming languages (Electronic computers)
- Resource Type:
- e-book
-
MOOC
This is CS50x , Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by David J. Malan, CS50x teaches students how to think algorithmically and solve problems efficiently. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development. Languages include C, Python, SQL, and JavaScript plus CSS and HTML. Problem sets inspired by real-world domains of biology, cryptography, finance, forensics, and gaming. The on-campus version of CS50x , CS50, is Harvard's largest course.
- Course related:
- COMP1011 Programming Fundamentals
- Subjects:
- Computing
- Keywords:
- Computer programming Computer science
- Resource Type:
- MOOC
-
Others
freeCodeCamp is a proven path to your first software developer job. More than 40,000 people have gotten developer jobs after completing this – including at big companies like Google and Microsoft. If you are new to programming, we recommend you start at the beginning and earn these certifications in order. To earn each certification, build its 5 required projects and get all their tests to pass.You can add these certifications to your résumé or LinkedIn. But more important than the certifications is the practice you get along the way.If you feel overwhelmed, that is normal. Programming is hard. Practice is the key. Practice, practice, practice. And this curriculum will give you thousands of hours of hands-on programming practice. And if you want to learn more math and computer science theory, we also have thousands of hours of video courses on freeCodeCamp's YouTube channel. If you want to get a developer job or freelance clients, programming skills will be just part of the puzzle. You also need to build your personal network and your reputation as a developer. You can do this on Twitter and GitHub, and also on the freeCodeCamp forum. Happy coding.
- Subjects:
- Computing
- Keywords:
- Computer programming Programming languages (Electronic computers) Coding theory
- Resource Type:
- Others
-
Video
A series of video that introduce various topics, including Node.js, Java, C programming, HTML, JavaScript, Python, PHP, and C++ programming.
- Subjects:
- Computing
- Keywords:
- Computer games -- Programming Computer programming Web sites -- Design Graphic arts Computer networks
- Resource Type:
- Video
-
Video
A series of video that cover various computing topics, for example, C++ programming, C# programming, Python, and Java.
- Subjects:
- Computing
- Keywords:
- Computer programming
- Resource Type:
- Video
-
Others
Learn to Code for Free. We're here to make coding more accessible, so everyone can learn the skills they need to upgrade their careers. For example, you can learn Python, HTML, CSS, and JavaScript.
- Subjects:
- Computing
- Keywords:
- Computer programming Programming languages (Electronic computers)
- Resource Type:
- Others
-
Others
A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and games.
- Subjects:
- Computing
- Keywords:
- Computer programming Computer science Data structures (Computer science) Programming languages (Electronic computers) Computer networks Computer algorithms
- Resource Type:
- Others
-
Courseware
This course helps students develop computational programming skills and gain experience with computational tools to be used in the solution of engineering problems. Topics include: Introduction to Computing, Basic Matlab commands, Arrays: one-dimensional and multi-dimensional, Flow control, Selective execution, Repetitive execution and iterations, Input and Output, Modular Programming: Functions, Plotting, and Advanced data types.
- Subjects:
- Aeronautical and Aviation Engineering and Mechanical Engineering
- Keywords:
- Engineering mathematics -- Data processing Engineering -- Data processing Computer programming
- Resource Type:
- Courseware
-
Courseware
6.0001 Introduction to Computer Science and Programming in Python is intended for students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems and to help students, regardless of their major, feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class uses the Python 3.5 programming language.
- Subjects:
- Computing
- Keywords:
- Computer programming Computer science Python (Computer program language)
- Resource Type:
- Courseware
-
Courseware
6.0002 is the continuation of 6.0001 Introduction to Computer Science and Programming in Python and is intended for students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems and to help students, regardless of their major, feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class uses the Python 3.5 programming language.
- Subjects:
- Computing
- Keywords:
- Computer programming Computer science Python (Computer program language)
- Resource Type:
- Courseware
-
Courseware
6.005 Software Construction introduces fundamental principles and techniques of software development, i.e., how to write software that is safe from bugs, easy to understand, and ready for change. The course includes problem sets and a final project. Important topics include specifications and invariants; testing; abstract data types; design patterns for object-oriented programming; concurrent programming and concurrency; and functional programming.
- Subjects:
- Computing
- Keywords:
- Computer programming Computer software -- Development
- Resource Type:
- Courseware