27 episodes

Advanced memory management features of C and C++; the differences between imperative and object-oriented paradigms. The functional paradigm (using LISP) and concurrent programming (using C and C++). Brief survey of other modern languages such as Python, Objective C, and C#.

Prerequisites: Programming and problem solving at the Programming Abstractions level. Prospective students should know a reasonable amount of C++. You should be comfortable with arrays, pointers, references, classes, methods, dynamic memory allocation, recursion, linked lists, binary search trees, hashing, iterators, and function pointers. You should be able to write well-decomposed, easy-to-understand code, and understand the value that comes with good variable names, short function and method implementations, and thoughtful, articulate comments.

Programming Paradigms Jerry Cain

    • Technology
    • 4.2 • 66 Ratings

Advanced memory management features of C and C++; the differences between imperative and object-oriented paradigms. The functional paradigm (using LISP) and concurrent programming (using C and C++). Brief survey of other modern languages such as Python, Objective C, and C#.

Prerequisites: Programming and problem solving at the Programming Abstractions level. Prospective students should know a reasonable amount of C++. You should be comfortable with arrays, pointers, references, classes, methods, dynamic memory allocation, recursion, linked lists, binary search trees, hashing, iterators, and function pointers. You should be able to write well-decomposed, easy-to-understand code, and understand the value that comes with good variable names, short function and method implementations, and thoughtful, articulate comments.

    • video
    1. Programming Paradigms Lecture 1

    1. Programming Paradigms Lecture 1

    Programming Paradigms (CS107) introduces several programming languages, including C, Assembly, C++, Concurrent Programming, Scheme, and Python.

    • 1 sec
    • video
    2. Programming Paradigms Lecture 2

    2. Programming Paradigms Lecture 2

    Lecture by Professor Jerry Cain for Programming Paradigms (CS107) in the Stanford University Computer Science department. In this lecture, Prof. Cain discusses C and C++ programming codes, as well as binary addition and subtraction.

    • 3 sec
    • video
    3. Programming Paradigms Lecture 3

    3. Programming Paradigms Lecture 3

    Lecture by Professor Jerry Cain for Programming Paradigms (CS107) in the Stanford University Computer Science department. In this lecture, Prof. Cain discusses C programming, focusing upon string duplicates, string copy, and memory diagrams.

    • 3 sec
    • video
    4. Programming Paradigms Lecture 4

    4. Programming Paradigms Lecture 4

    Lecture by Professor Jerry Cain for Programming Paradigms (CS107) in the Stanford University Computer Science department. In this lecture, Prof. Cain discusses C and C++ programming, including bit patterns, memory copy, and linear search.

    • 3 sec
    • video
    5. Programming Paradigms Lecture 5

    5. Programming Paradigms Lecture 5

    Lecture by Professor Jerry Cain for Programming Paradigms (CS107) in the Stanford University Computer Science department. In this lecture, Prof. Cain focuses on linear search and stack within the C programming language.

    • 3 sec
    • video
    6. Programming Paradigms Lecture 6

    6. Programming Paradigms Lecture 6

    Lecture by Professor Jerry Cain for Programming Paradigms (CS107) in the Stanford University Computer Science department. In this lecture, Prof. Cain discusses C language programming by focusing on different forms of stack.

    • 3 sec

Customer Reviews

4.2 out of 5
66 Ratings

66 Ratings

Spud1234321 ,

Excellent Professor

Lectures are dense.

CastleOrange ,

Very enjoyable lectures

I am about 10 lectures in and I appreciate this series. The first few lectures were a helpful way to reestablish my fundamentals. I found the section that implemented a stack in C to be a bit long-winded, but immediately after I enjoyed the discussion of the heap. I will update if I have any more comments, but overall have enjoyed the lectures, the speaker, and the examples.

DireRob ,

Great teacher

This professor is excellent at expressing some complicated ideas in easy to understand ways. After five "episodes" there is not a thing I don't understand. No idea what's the one and two star ratings are looking for, this is exactly what a PLP course should cover.

Top Podcasts In Technology

Lex Fridman Podcast
Lex Fridman
All-In with Chamath, Jason, Sacks & Friedberg
All-In Podcast, LLC
No Priors: Artificial Intelligence | Machine Learning | Technology | Startups
Conviction | Pod People
Hard Fork
The New York Times
Acquired
Ben Gilbert and David Rosenthal
TED Radio Hour
NPR

More by Stanford

The Future of Everything
Stanford Engineering
Human Behavioral Biology
Robert Sapolsky
Machine Learning
Andrew Ng
Stanford Legal
Stanford Law School
Modern Physics: General Theory of Relativity (Fall 2012)
Stanford Continuing Studies
Modern Physics: Quantum Mechanics (Winter 2012)
Leonard Susskind