| source Berkeley (X) |
level |
department Computer Science (Engineering) (66) |
Introduction to computer programming, emphasizing symbolic computation and functional programming style. Students will write a project of at least 200 lines of code, using the Scheme programming language.
Score: 10.931287 Details | Listing | Web page
Introduction to computer programming, emphasizing symbolic computation and functional programming style. Students will write a project of at least 200 lines of code in Scheme (a dialect of the LISP programming language).
Score: 10.931287 Details | Listing | Web page
Introduction to the constructs in the Matlab programming language, aimed at students who already know how to program. Array and matrix operations, functions and function handles, control flow, plotting and image manipulation, cell arrays and structures, and the Symbolic Mathematics toolbox.
Score: 10.931287 Details | Listing | Web page
Self-paced Pascal course for students who already know how to program. This course provides the practice with the use of pointers and linked data structures that is assumed as prerequisite for 9C and 9F.
Score: 10.931287 Details | Listing | Web page
Self-paced course in the C programming language for students who already know how to program. Computation, input and output, flow of control, functions, arrays, and pointers, linked structures, use of dynamic storage, and implementation of abstract data types.
Score: 10.931287 Details | Listing | Web page
Self-paced course in functional programming, using the Scheme programming language, for students who already know how to program. Recursion; higher-order functions; list processing; implementation of rule-based querying.
Score: 10.931287 Details | Listing | Web page
Use of UNIX utilities and scripting facilities for customizing the programming environment, organizing files (possibly in more than one computer account), implementing a personal database, reformatting text, and searching for online resources.
Score: 10.931287 Details | Listing | Web page
Self-paced introduction to the constructs provided in the C++ programming language for procedural and object-oriented programming, aimed at students who already know how to program.
Score: 10.931287 Details | Listing | Web page
Self-paced course in Java for students who already know how to program. Applets; variables and computation; events and flow of control; classes and objects; inheritance; GUI elements; applications; arrays, strings, files, and linked structures; exceptions; threads.
Score: 10.931287 Details | Listing | Web page
Introduction to the constructs provided in the Python programming language, aimed at students who already know how to program. Flow of control; strings, tuples, lists, and dictionaries; CGI programming; file input and output; object-oriented programming; GUI elements.
Score: 10.931287 Details | Listing | Web page
The Freshman Seminar Program has been designed to provide new students with the opportunity to explore an intellectual topic with a faculty member in a small-seminar setting. Freshman seminars are offered in all campus departments, and topics vary from department to department and semester to semester. Enrollment limited to 15 freshmen.
Score: 10.931287 Details | Listing | Web page
Freshman and sophomore seminars offer lower division students the opportunity to explore an intellectual topic with a faculty member and a group of peers in a small-seminar setting. These seminars are offered in all campus departments; topics vary from department to department and from semester to semester. Enrollment limits are set by the faculty, but the suggested limit is 25.
Score: 10.931287 Details | Listing | Web page
Implementation of generic operations. Streams and iterators. Implementation techniques for supporting functional, object-oriented, and constraint-based programming in the Scheme programming language. Together with 9D, 47A constitutes an abbreviated, self-paced version of 61A for students who have already taken a course equivalent to 61B.
Score: 10.931287 Details | Listing | Web page
Iterators. Hashing, applied to strings and multi-dimensional structures. Heaps. Storage management. Design and implementation of a program containing hundreds of lines of code. Students with sufficient partial credit in 61B may, with consent of instructor, complete the credit in this self-paced course.
Score: 10.931287 Details | Listing | Web page
MIPS instruction set simulation. The assembly and linking process. Caches and virtual memory. Pipelined computer organization. Students with sufficient partial credit in 61C may, with consent of instructor, complete the credit in this self-paced course.
Score: 10.931287 Details | Listing | Web page
Introduction to programming and computer science. This course exposes students to techniques of abstraction at several levels: (a) within a programming language, using higher-order functions, manifest types, data-directed programming, and message-passing; (b) between programming languages, using functional and rule-based languages as examples. It also relates these techniques to the practical problems of implementation of languages and algorithms on a von Neumann machine. There are several significant programming projects, programmed in a dialect of the LISP language.
Score: 10.931287 Details | Listing | Web page
Fundamental dynamic data structures, including linear lists, queues, trees, and other linked structures; arrays strings, and hash tables. Storage management. Elementary principles of software engineering. Abstract data types. Algorithms for sorting and searching. Introduction to the Java programming language.
Score: 10.931287 Details | Listing | Web page
The same material as in 61B, but in a laboratory-based format.
Score: 10.931287 Details | Listing | Web page
The internal organization and operation of digital computers. Machine architecture, support for high-level languages (logic, arithmetic, instruction sequencing) and operating systems (I/O, interrupts, memory management, process switching). Elements of computer logic design. Tradeoffs involved in fundamental architectural design decisions.
Score: 10.931287 Details | Listing | Web page
The same material as in 61C but in a laboratory-based format.
Score: 10.931287 Details | Listing | Web page
Logic, infinity, and induction; applications include undecidability and stable marriage problem. Modular arithmetic and GCDs; applications include primality testing and cryptography. Polynomials; examples include error correcting codes and interpolation. Probability including sample spaces, independence, random variables, law of large numbers; examples include load balancing, existence arguments, Bayesian inference.
Score: 10.931287 Details | Listing | Web page
This course introduces students to the basics of models, analysis tools, and control for embedded systems operating in real time. Students learn how to combine physical processes with computation. Topics include models of computation, control, analysis and verification, interfacing with the physical world, mapping to platforms, and distributed embedded systems. The course has a strong laboratory component, with emphasis on a semester-long sequence of projects. Also listed as Electrical Engineering C149.
Score: 10.931287 Details | Listing | Web page
Basic building blocks and design methods to contruct synchronous digital systems. Alternative representations for digital systems. Bipolar TTL vs. MOS implementation technologies. Standard logic (SSI, MSI) vs. programmable logic (PLD, PGA). Finite state machine design. Digital computer building blocks as case studies. Introduction to computer-aided design software. Formal hardware laboratories and substantial design project. Informal software laboratory periodically throughout semester.
Score: 10.931287 Details | Listing | Web page
Instruction set design, Register Transfer. Computer design project requiring about 100 hours. Data-path design. Controller design. Memory system. Addressing. Microprogramming. Computer arithmetic. Survey of real computers and microprocessors.
Score: 10.931287 Details | Listing | Web page
The design, implementation, and evaluation of human/computer interfaces. Interface devices (keyboard, pointing, display, audio, etc.), metaphors (desktop, notecards, rooms, ledger sheets, tables, etc.), interaction styles and dialog models, design examples, and user-centered design and task analysis. Interface-development methodologies, implementation tools, testing, and quality assessment. Students will develop a direct-manipulation interface.
Score: 10.931287 Details | Listing | Web page