Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Inria (French Institute for Research in Computer Science and Automation)

Immersive Object Programming with Pharo

Inria (French Institute for Research in Computer Science and Automation) via YouTube

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!

Pharo (http://pharo.org) is a pure dynamic and reflective object programming language inspired by Smalltalk. Pharo offers a powerful environment with unique features (https://pharo.org/features). It focuses on simplicity (full syntax on a postcard) and immediate feedback.

Syllabus

Objectives - Live Object Programming in Pharo [W1S1-EN].
Pharo: an Immersive Object-Oriented System [W1S2-EN].
Pharo Vision [W1S3-EN].
Pharo Object Model in a Nutshell [W1S4-EN].
Pharo Syntax in a Nutshell [W1S5-EN].
Class and Method Definitions [W1S6-EN].
Selecting and executing expressions [W1-LiveA-EN].
Learn Pharo with Prof Stef [W1-Live B].
Syntax Highlighting gives Feedback [W1-Live C].
Learn Keyboard Shortcuts [W1-Live D].
Packages, Classes et Methods [W1-ReDo1-EN].
Adding some unit tests [W1-ReDo2-EN].
Looking back at method creation [W1-ReDo3-EN].
Save your code with Iceberg [W1-ReDo4-EN].
Object initialization [W1-ReDo5-EN].
Better printing with printOn: [W1-ReDo6-EN].
Looking a commit history and changes with Iceberg [W1-ReDo7-EN].
Understanding Messages [W2S1-EN].
Messages for Java Programmers [W2S2-EN].
Messages: Composition and Precedence [W2S3-EN].
Understanding Messages: Sequence and Cascade [W2S4-EN].
Introduction to Blocks [W2S6-EN].
Loops [W2S7-EN].
Booleans and Conditions [W2S8-EN].
Parentheses vs. Square Brackets [W2S9-EN].
Yourself [W2S10-EN].
Exercises for Essence of Dispatch [W2S11-EN].
Finding methods with the Finder [W2-LiveA-EN].
Look closer at objects with the Inspector [W2-LiveB-EN].
Browsing a class [W2-LiveC-EN].
Working with scoped operations [W2-LiveD-EN].
Xtreme TDD [W2-ReDo1-EN].
Essence of Dispatch: Taking Pharo Booleans as Example [W3S1-EN].
Essence of Dispatch [W3S2-EN].
Variables [W3S3-EN].
A Simple HTTP Application: As a pretex to revisit Pharo Syntax [W3S4-EN].
Class Methods [W3S6-EN].
An Overview of Essential Collections [W3S7-EN].
Iterators [W3S9-EN].
Stream Overview [W3S10-EN].
Understanding Return [W3S11-EN].
Understanding Implementor / Senders [W3-LiveA-EN].
Understanding class references [W3-LiveB-EN].
Find information using Spotter [W3-LiveC-EN].
Implementing Die mechanics [W3-ReDo- part1-EN].
Implementing a Die handle [W3-ReDo-part2-EN].
Finalizing the DSL [W3-ReDo -part3-EN].
Inheritance Basics [W4S1-EN].
Inheritance and Lookup: Lookup [W4S2-EN].
Inheritance and Lookup: the case of Super [W4S3-EN].
Inheritance and Lookup: doesNotUnderstand: aMessage [W4S4-EN].
Inheritance and Lookup: Lookup in metaclasses [W4S5-EN].
Class Methods at Work [W4S6-EN].
Overview of Pharo Web Stack [W4S7-EN].
Seaside: An Innovative Web Application Framework [W4S8-EN].
Seaside: Rendering Components [W4S9-EN].
Seaside: A Glance at MetaData and REST [W4S10-EN].
Voyage [W4S11-EN].
Git: New project creation [W4-LiveA-EN].
Git : Creating a remote repository to an existing project [W4-LiveB-EN].
Loading a project with Metacello [W4-LiveC-EN].
Applying Refactorings [W4-LiveD-EN].
Live Quality checker in Action [W4-LiveE-EN].
Seaside: Composing Components [W5S1-EN].
Really Understanding Class Methods [W5S2-EN].
Common Errors [W5S3-EN].
Powerful Exceptions: an Overview [W5S4-EN].
Debugging in Pharo [W5S5-EN].
SUnit: Unit Tests in Pharo [W5S6-EN].
Files in Pharo [W5S7-EN].
Reflection: Basic Introspection [W5S8-EN].
Benchmarking in Pharo [W5S9-EN].
Advanced Spotter actions [W5-LiveA-EN].
First look at the Debugger actions [W5-LiveB-EN].
Find a bug with the Debugger [W5-LiveC-EN].
Did You Really Understand Super? [W6S1-EN].
Understanding the Implementation of ifTrue:ifFalse: [W6S2-EN].
Dice new vs. self class new [W6S3-EN].
Message Sends are Plans for Reuse [W6S4-EN].
Hooks and Templates [W6S5-EN].
Runtime Architecture [W6-S6-EN].
Characters, Strings and Symbols [W6S7-EN].
Dynamic vs. Literal Arrays [W6S8-EN].
Customized tabs in the Inspector [W6-LiveA-EN].
Personalize your image startup [W6-LiveB-EN].
Advanced Points on Classes [W7S1-EN].
Variable Size Objects [W7S2-EN].
Understanding Metaclasses [W7S3-EN].
Reflective Operations for Live Programming [W7S4-EN].
DoesNotUnderstand: a Precious Hook [W7S5-EN].
Reflection: Stack as an Object [W7S6-EN].
Avoid Null Checks [W7S7-EN].
A Journey in Pharo: A Bright Future [W7S8-EN].

Taught by

Inria Learning Lab

Reviews

Start your review of Immersive Object Programming with Pharo

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.