OpenCourse: Programming Paradigms / Stanford
「Programming Paradigms」コースは、スタンフォード大学が公開している講座です。「Programming Methodology」コースと「Programming Abstractions」コースのさらに上級に位置するコースです。
CおよびC++における、より高度なメモリ管理、Lispを用いた関数型パラダイムや、C/C++を用いたコンカレントプログラミング、そしてPython、Objective-C、C#などの言語についても学びます。
コースについての詳細やハンドアウトなどの関連資料は、「Stanford School of Engineering - Stanford Engineering Everywhere」から参照できます。
Lecture 1 | Programming Paradigms - YouTubeLanguages and Paradigms Taught - C++ vs. Pure C, Procedural Paradigm vs. Object-Oriented Paradigm
Lecture 2 | Programming Paradigms - YouTubeC/C++ Data Types - Interpretations, Sizes, Bits- How Bytes are Broken Up into Bits
Lecture 3 | Programming Paradigms - YouTubeConverting Between Types of Different Sizes and Bit Representations Using Pointers, Little Endian vs. Big Endian
Lecture 4 | Programming Paradigms - YouTubeCreating a Generic Swap Function for Data Types of Arbitrary Size
Lecture 5 | Programming Paradigms - YouTubeGeneric Lsearch - Prototype, Comparison Function, Implementation
Lecture 6 | Programming Paradigms - YouTubeInteger Stack Implementation - Constructor and Destructor, Stackpush Implementation
Lecture 7 | Programming Paradigms - YouTubeProblems with Ownership of Memory, How Default Implementation of Stackdispose Does Not Free Dynamically Allocated Data
Lecture 8 | Programming Paradigms - YouTubeHeap Management - How Information about Allocations are Stored in the Heap
Lecture 9 | Programming Paradigms - YouTubeHow a Code Snippet is Translated into Assembly Instructions, Store, Load, and ALU Operations
Lecture 10 | Programming Paradigms - YouTubeMore Detail about Activation Records - Layout of Memory During a Function Call
Lecture 11 | Programming Paradigms - YouTubeMoving from C Code Generation to C++ Code Generation: Basic Swap Example
Lecture 12 | Programming Paradigms - YouTubePreprocessing Commands - #Define as a Glorified Find and Replace, Preprocessing Macros
Lecture 13 | Programming Paradigms - YouTubeReview of Compilation Process of a Simple Program Into a .O File, Effect of Commenting Out a C Standard Library .H File on the Resulting Translation Unit
Lecture 14 | Programming Paradigms - YouTubeExample in Which Writing Past the End of Array Causes the Return Address of the Function to be Overwritten
Lecture 15 | Programming Paradigms - YouTubeTransitioning from Sequential Programming to Concurrent Programming in the Ticket Sale Example
Lecture 16 | Programming Paradigms - YouTubeReview of Semaphore Syntax, Semaphoresignal and Semaphorewait
Lecture 17 | Programming Paradigms - YouTubeReview of the Dining Philosopher Problem, Modeling Each Philosopher as a Thread
Lecture 18 | Programming Paradigms - YouTubeGuest Lecturer, Setup of the Ice Cream Store Problem, with Customer, Cashier, Clerk, and Manager Threads
Lecture 19 | Programming Paradigms - YouTubeImperative/Procedural Paradigms (C) and Object-Oriented Paradigm(C++), Introduction to the Functional Paradigm (Scheme)
Lecture 20 | Programming Paradigms - YouTubeCar-Cdr Recursion Problem that Returns the Sum of Every Element in a List of Integers
Lecture 21 | Programming Paradigms - YouTubeIntroduction to the Kawa Development Environment: Evaluation of Expressions, Loading Function Definitions From a .Scm File
Lecture 22 | Programming Paradigms - YouTubeWriting a Recursive Power Set Function in Scheme
Lecture 23 | Programming Paradigms - YouTubeScheme Memory Model - How Scheme Instructions Synthesize Linked Lists Behind the Scenes and Perform Operations on Them
Lecture 24 | Programming Paradigms - YouTubeOverarching Features of Python: Scripting Language, Imperative, Object-Oriented, Functional, More Python Overview - Dynamic Typing, Use of Whitespace and Tabs
Lecture 25 | Programming Paradigms - YouTubeRewriting RSG to Illustrate all Three Paradigms and Lambdas in Python, How Objects Are Implemented in Python
Lecture 26 | Programming Paradigms - YouTubeXML Processing and Python - Two Different XML Processing Models, Example XML Fragment
Lecture 27 | Programming Paradigms - YouTubeGuest Lecturer: Sasha Rush, Haskell History, Safeguards in Haskell that Avoid Runtime Errors, Expressive Functions in Haskell
関連記事 on Publickey
あわせて読みたい
OpenCourse: Programming Abstractions / Stanford
≪前の記事
OpenCourse: Computer System Engineering / MIT
