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
Larry Staton Jr.
January 07, 2016
Programming
560
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
60
Hypermedia with Transit
statonjr
0
88
Hazel & Keyboard Maestro: A Perfect Mac Marriage
statonjr
1
700
Zooming Out
statonjr
0
69
HTTP 101
statonjr
1
290
Hypermedia APIs with Webmachine and ROAR
statonjr
2
540
PUT /time
statonjr
1
85
Other Decks in Programming
See All in Programming
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
2
260
Javaの型とAI時代に型が大事な理由 / java types and type in AI era
kishida
2
150
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
130
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
210
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
260
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
170
依存関係から依存物へ―Dependencyという言葉の歴史をひも解く
j_lee
0
130
ふつうのFeature Flag実践入門
irof
8
4.1k
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
13k
A2UI という光を覗いてみる
satohjohn
1
150
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
220
The NotImplementedError Problem in Ruby
koic
1
900
Featured
See All Featured
The Limits of Empathy - UXLibs8
cassininazir
1
370
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
270
Crafting Experiences
bethany
1
190
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
320
What's in a price? How to price your products and services
michaelherold
247
13k
Music & Morning Musume
bryan
47
7.2k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.4k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Unsuck your backbone
ammeep
672
58k
Abbi's Birthday
coloredviolet
3
8.2k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
850
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
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