Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Object-Oriented Programming Basics with Smalltalk
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Larry Staton Jr.
January 07, 2016
Programming
570
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Object-Oriented Programming Basics with Smalltalk
Presented at CodeMash 2016
Larry Staton Jr.
January 07, 2016
More Decks by Larry Staton Jr.
See All by Larry Staton Jr.
A Tale of Two Teams
statonjr
0
65
Hypermedia with Transit
statonjr
0
94
Hazel & Keyboard Maestro: A Perfect Mac Marriage
statonjr
1
700
Zooming Out
statonjr
0
78
HTTP 101
statonjr
1
300
Hypermedia APIs with Webmachine and ROAR
statonjr
2
550
PUT /time
statonjr
1
88
Other Decks in Programming
See All in Programming
承認済みなのに差戻しできてしまうバグ、型で潰せます
shinchit
0
130
Go 1.27からのGODEBUG / Go 1.27 リリースパーティ #go127party
mazrean
0
280
[DroidKaigi 26] How We Moved from Android Studio to Slack
thisaay
0
150
Loosening the Reins: Go Generics Get More Flexible
kuro_kurorrr
0
360
AIエージェント時代のコードレビューを設計する
nogu66
5
1.9k
T3DD26: From RAGs to Riches
martinhelmich
0
130
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
0
110
iOS開発×AI駆動開発 〜最近使って便利だったスキルの話〜
nogu66
0
130
高専キャリア LT 発表内容
crysta1221
6
5.4k
Webエンジニアなのにブラウザの仕組みがわからないので、Pythonで自作してみた
tatsuki12
4
1.6k
レビュー履歴をAIに食わせて、 Compose移行を加速するs
shihochan
0
260
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
270
Featured
See All Featured
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
220
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
A designer walks into a library…
pauljervisheath
211
24k
The Curious Case for Waylosing
cassininazir
1
490
Measuring & Analyzing Core Web Vitals
bluesmoon
9
990
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
Producing Creativity
orderedlist
PRO
348
41k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
57k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Transcript
SMALLTALK OBJECT-ORIENTED PROGRAMMING BASICS
@statonjr OOP Basics with Smalltalk 100 Dealerships 10,000+ Employees
@statonjr OOP Basics with Smalltalk OVERVIEW
@statonjr OOP Basics with Smalltalk What is OBJECT-ORIENTED PROGRAMMING?
None
@statonjr OOP Basics with Smalltalk 1966
@statonjr OOP Basics with Smalltalk 1970
@statonjr OOP Basics with Smalltalk 1972
@statonjr OOP Basics with Smalltalk Six Main Ideas of Smalltalk
@statonjr OOP Basics with Smalltalk Everything is an object
@statonjr OOP Basics with Smalltalk Objects communicate by sending and
receiving messages
@statonjr OOP Basics with Smalltalk Objects have their own memory
@statonjr OOP Basics with Smalltalk Every object is an instance
of a class
@statonjr OOP Basics with Smalltalk The class holds the shared
behavior for its instances
@statonjr OOP Basics with Smalltalk To eval a program list,
control is passed to the first object and the remainder is treated as its message
@statonjr OOP Basics with Smalltalk 1976
@statonjr OOP Basics with Smalltalk
@statonjr OOP Basics with Smalltalk Everything is an object
@statonjr OOP Basics with Smalltalk Data Code
@statonjr OOP Basics with Smalltalk Data Code Methods
@statonjr OOP Basics with Smalltalk Data Code Methods Variables
GENERALLY, WE DON'T WANT THE PROGRAMMER TO BE MESSING AROUND
WITH STATE, WHETHER SIMULATED OR NOT. Alan Kay THE EARLY HISTORY OF SMALLTALK
@statonjr OOP Basics with Smalltalk Objects communicate by sending and
receiving messages
@statonjr OOP Basics with Smalltalk SENDER RECEIVER Message Return Value
@statonjr OOP Basics with Smalltalk Every object is an instance
of a class
@statonjr OOP Basics with Smalltalk Class Instances
@statonjr OOP Basics with Smalltalk Class Instance Class Methods Class
Variables Instance Methods Instance Variables Instance Methods Instance Variables
@statonjr OOP Basics with Smalltalk The class holds the shared
behavior for its instances
@statonjr OOP Basics with Smalltalk COMPOSITION
@statonjr OOP Basics with Smalltalk INHERITANCE
@statonjr OOP Basics with Smalltalk name age grade Person Student
@statonjr OOP Basics with Smalltalk POLYMORPHISM
@statonjr OOP Basics with Smalltalk SMALLTALK SYNTAX
@statonjr OOP Basics with Smalltalk SMALLTALK SYNTAX
@statonjr OOP Basics with Smalltalk SMALLTALK SYNTAX Tokens: Identifiers, Numbers,
‘Strings’, “Comments”, Binary Operators, Keywords, Special Tokens
@statonjr OOP Basics with Smalltalk SMALLTALK SYNTAX Special Tokens: #:^’|”;()[]
Tokens: Identifiers, Numbers, ‘Strings’, “Comments”, Binary Operators, Keywords, Special Tokens
@statonjr OOP Basics with Smalltalk SMALLTALK SYNTAX Special Tokens: #:^’|”;()[]
Tokens: Identifiers, Numbers, ‘Strings’, “Comments”, Binary Operators, Keywords, Special Tokens Reserved Words: nil false true self super
@statonjr OOP Basics with Smalltalk SMALLTALK SYNTAX Special Tokens: #:^’|”;()[]
Tokens: Identifiers, Numbers, ‘Strings’, “Comments”, Binary Operators, Keywords, Special Tokens Reserved Words: nil false true self super Syntactic Forms: Unary messages, Binary messages, Keyword messages, Block closures, Return Value, Method definition, Assignment, Cascade
@statonjr OOP Basics with Smalltalk DEMO
@statonjr OOP Basics with Smalltalk RESOURCES http://pharo.org http://pharobyexample.org Smalltalk-80: The
Language and Its Implementation http://files.pharo.org/books/ ProfStef go