Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Sho Yoshida
9,211 views
今日から使おうSmalltalk
Technology
◦
Read more
14
Save
Share
Embed
Embed presentation
Download
Downloaded 22 times
1
/ 71
2
/ 71
3
/ 71
4
/ 71
5
/ 71
6
/ 71
7
/ 71
8
/ 71
9
/ 71
10
/ 71
11
/ 71
12
/ 71
13
/ 71
14
/ 71
15
/ 71
16
/ 71
17
/ 71
18
/ 71
19
/ 71
20
/ 71
21
/ 71
22
/ 71
23
/ 71
24
/ 71
25
/ 71
26
/ 71
27
/ 71
28
/ 71
29
/ 71
30
/ 71
31
/ 71
32
/ 71
33
/ 71
34
/ 71
35
/ 71
36
/ 71
Most read
37
/ 71
38
/ 71
Most read
39
/ 71
Most read
40
/ 71
41
/ 71
42
/ 71
43
/ 71
44
/ 71
45
/ 71
46
/ 71
47
/ 71
48
/ 71
49
/ 71
50
/ 71
51
/ 71
52
/ 71
53
/ 71
54
/ 71
55
/ 71
56
/ 71
57
/ 71
58
/ 71
59
/ 71
60
/ 71
61
/ 71
62
/ 71
63
/ 71
64
/ 71
65
/ 71
66
/ 71
67
/ 71
68
/ 71
69
/ 71
70
/ 71
71
/ 71
More Related Content
PDF
早わかりSmalltalk
by
Masashi Umezawa
PDF
今からでも遅くないSmalltalk入門
by
Masashi Umezawa
PDF
今日からできる!簡単 .NET 高速化 Tips
by
Takaaki Suzuki
PDF
モジュールの凝集度・結合度・インタフェース
by
Hajime Yanagawa
PDF
Smalltalkだめ自慢
by
Masashi Umezawa
KEY
やはりお前らのMVCは間違っている
by
Koichi Tanaka
PDF
Protocol Buffers 入門
by
Yuichi Ito
PDF
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
by
NTT DATA Technology & Innovation
早わかりSmalltalk
by
Masashi Umezawa
今からでも遅くないSmalltalk入門
by
Masashi Umezawa
今日からできる!簡単 .NET 高速化 Tips
by
Takaaki Suzuki
モジュールの凝集度・結合度・インタフェース
by
Hajime Yanagawa
Smalltalkだめ自慢
by
Masashi Umezawa
やはりお前らのMVCは間違っている
by
Koichi Tanaka
Protocol Buffers 入門
by
Yuichi Ito
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
by
NTT DATA Technology & Innovation
What's hot
PDF
データベース設計徹底指南
by
Mikiya Okuno
PDF
Cinemachineで見下ろし視点のカメラを作る
by
Unity Technologies Japan K.K.
PDF
GPUが100倍速いという神話をぶち殺せたらいいな ver.2013
by
Ryo Sakamoto
PDF
Tackling Complexity
by
Yoshitaka Kawashima
PPTX
DockerコンテナでGitを使う
by
Kazuhiro Suga
PDF
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
by
Atsushi KOMIYA
PDF
C言語講習会3
by
odenhadengaku
PDF
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
by
Koichiro Matsuoka
PDF
オブジェクト指向の設計と実装の学び方のコツ
by
増田 亨
PDF
Javaのログ出力: 道具と考え方
by
Taku Miyakawa
PPTX
UnityでUI開発を高速化した件
by
Grenge, Inc.
PDF
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
by
Yoshifumi Kawai
PDF
.NET Core 3.0時代のメモリ管理
by
KageShiron
PDF
40歳過ぎてもエンジニアでいるためにやっていること
by
onozaty
PPTX
凝集度と責務
by
Toshinori Chiba
PDF
【Unity道場】VectorGraphicsで作る エモい表現
by
Unity Technologies Japan K.K.
PPTX
PHP AST 徹底解説
by
do_aki
PDF
JavaでCPUを使い倒す! ~Java 9 以降の CPU 最適化を覗いてみる~(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
by
NTT DATA Technology & Innovation
KEY
ラムダ計算入門
by
Eita Sugimoto
PDF
SmalltalkBoltでUFFI入門
by
Masashi Umezawa
データベース設計徹底指南
by
Mikiya Okuno
Cinemachineで見下ろし視点のカメラを作る
by
Unity Technologies Japan K.K.
GPUが100倍速いという神話をぶち殺せたらいいな ver.2013
by
Ryo Sakamoto
Tackling Complexity
by
Yoshitaka Kawashima
DockerコンテナでGitを使う
by
Kazuhiro Suga
DSIRNLP #3 LZ4 の速さの秘密に迫ってみる
by
Atsushi KOMIYA
C言語講習会3
by
odenhadengaku
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
by
Koichiro Matsuoka
オブジェクト指向の設計と実装の学び方のコツ
by
増田 亨
Javaのログ出力: 道具と考え方
by
Taku Miyakawa
UnityでUI開発を高速化した件
by
Grenge, Inc.
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
by
Yoshifumi Kawai
.NET Core 3.0時代のメモリ管理
by
KageShiron
40歳過ぎてもエンジニアでいるためにやっていること
by
onozaty
凝集度と責務
by
Toshinori Chiba
【Unity道場】VectorGraphicsで作る エモい表現
by
Unity Technologies Japan K.K.
PHP AST 徹底解説
by
do_aki
JavaでCPUを使い倒す! ~Java 9 以降の CPU 最適化を覗いてみる~(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
by
NTT DATA Technology & Innovation
ラムダ計算入門
by
Eita Sugimoto
SmalltalkBoltでUFFI入門
by
Masashi Umezawa
Viewers also liked
PDF
Smaltalk驚異の開発(私が使い続ける2012年の話)
by
Sho Yoshida
PDF
Smalltalkと型について
by
Masashi Umezawa
PDF
RUNNING Smalltalk - 実践Smalltalk
by
Sho Yoshida
PDF
Rust-lang
by
Anthony Broad-Crawford
PDF
Rust 超入門
by
Chris Birchall
PDF
情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦
by
Sho Yoshida
PDF
Introduction of Pharo 5.0
by
Masashi Umezawa
PDF
夢のある話をしようと思ったけど、やっぱり現実の話をする
by
Hidetsugu Takahashi
PPTX
趣味でやるSmalltalk Webアプリ開発
by
Kazuki Minamitani
PDF
Continuous Integration for Pharo Smalltalk - Smalltalkと継続的インテグレーション
by
Sho Yoshida
ODP
Rust言語紹介
by
Paweł Rusin
PDF
Rust v1.0 release celebration party
by
Akira Hayakawa
PDF
最強オブジェクト指向言語 JavaScript 再入門!
by
Yuji Nojima
PDF
Rust言語
by
健太 田上
PPT
Raft
by
Preferred Networks
Smaltalk驚異の開発(私が使い続ける2012年の話)
by
Sho Yoshida
Smalltalkと型について
by
Masashi Umezawa
RUNNING Smalltalk - 実践Smalltalk
by
Sho Yoshida
Rust-lang
by
Anthony Broad-Crawford
Rust 超入門
by
Chris Birchall
情熱Smalltalker SmalltalkとAWSでクラウドサービスを実現するための挑戦
by
Sho Yoshida
Introduction of Pharo 5.0
by
Masashi Umezawa
夢のある話をしようと思ったけど、やっぱり現実の話をする
by
Hidetsugu Takahashi
趣味でやるSmalltalk Webアプリ開発
by
Kazuki Minamitani
Continuous Integration for Pharo Smalltalk - Smalltalkと継続的インテグレーション
by
Sho Yoshida
Rust言語紹介
by
Paweł Rusin
Rust v1.0 release celebration party
by
Akira Hayakawa
最強オブジェクト指向言語 JavaScript 再入門!
by
Yuji Nojima
Rust言語
by
健太 田上
Raft
by
Preferred Networks
Similar to 今日から使おうSmalltalk
PDF
Squeak Smalltalk Explorer Meeting for beginners, by beginner/初心者による初心者のためのSqu...
by
Naruhiko Ogasawara
PDF
へっぽこSmalltalkerからみたEnumerable
by
Naruhiko Ogasawara
PDF
プログラミングHaskell(第2章)
by
yaju88
PDF
エコSmalltalk
by
Sho Yoshida
PDF
Tarantalk
by
Masashi Umezawa
PPTX
Ruby講座一回目
by
Masayuki Matsumoto
PPTX
Ruby講座一回目
by
Masayuki Matsumoto
PDF
Scheme Interpreter in Ruby
by
Masato HORINOUCHI
PPT
言語処理系入門1
by
Kenta Hattori
PDF
From Java To Clojure
by
Kent Ohashi
PDF
20200504 Smalltalkを学ぶ会 (リモート開催) - Smalltalkについて
by
sumim
PDF
Lisp tutorial for Pythonista : Day 1
by
Ransui Iso
PDF
Lisp Tutorial for Pythonista : Day 3
by
Ransui Iso
Squeak Smalltalk Explorer Meeting for beginners, by beginner/初心者による初心者のためのSqu...
by
Naruhiko Ogasawara
へっぽこSmalltalkerからみたEnumerable
by
Naruhiko Ogasawara
プログラミングHaskell(第2章)
by
yaju88
エコSmalltalk
by
Sho Yoshida
Tarantalk
by
Masashi Umezawa
Ruby講座一回目
by
Masayuki Matsumoto
Ruby講座一回目
by
Masayuki Matsumoto
Scheme Interpreter in Ruby
by
Masato HORINOUCHI
言語処理系入門1
by
Kenta Hattori
From Java To Clojure
by
Kent Ohashi
20200504 Smalltalkを学ぶ会 (リモート開催) - Smalltalkについて
by
sumim
Lisp tutorial for Pythonista : Day 1
by
Ransui Iso
Lisp Tutorial for Pythonista : Day 3
by
Ransui Iso
More from Sho Yoshida
PDF
OpenRestyを用いてイケイケなサービスを作る方法
by
Sho Yoshida
PDF
Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)
by
Sho Yoshida
PDF
今時なウェブ開発をSmalltalkでやってみる?
by
Sho Yoshida
PDF
Elasticsearch for Pharo Smalltalk
by
Sho Yoshida
PDF
Source Code Management with Pharo Smalltalk - Pharo Smalltalkソースコード管理方法
by
Sho Yoshida
PDF
AWS SDK for Smalltalk
by
Sho Yoshida
PDF
How Smalltalker Works
by
Sho Yoshida
PDF
愛せよ、さもなくば捨てよ。
by
Sho Yoshida
PDF
もしイチゴ農家の園主がSmalltalkの「Seaside」(で作られたシステム)を使ってみたら
by
Sho Yoshida
PDF
Iliad or Seaside
by
Sho Yoshida
PDF
Pharo(Smalltalk)でAPI作りをはじめよう
by
Sho Yoshida
OpenRestyを用いてイケイケなサービスを作る方法
by
Sho Yoshida
Continuous Integration for Pharo Smalltalk Part 2 (Smalltalk and Travis CI)
by
Sho Yoshida
今時なウェブ開発をSmalltalkでやってみる?
by
Sho Yoshida
Elasticsearch for Pharo Smalltalk
by
Sho Yoshida
Source Code Management with Pharo Smalltalk - Pharo Smalltalkソースコード管理方法
by
Sho Yoshida
AWS SDK for Smalltalk
by
Sho Yoshida
How Smalltalker Works
by
Sho Yoshida
愛せよ、さもなくば捨てよ。
by
Sho Yoshida
もしイチゴ農家の園主がSmalltalkの「Seaside」(で作られたシステム)を使ってみたら
by
Sho Yoshida
Iliad or Seaside
by
Sho Yoshida
Pharo(Smalltalk)でAPI作りをはじめよう
by
Sho Yoshida
今日から使おうSmalltalk
1.
今日から使おうSmalltalk 第26回 Smalltalk勉強会 吉田 翔 1
2.
第26回Smalltalk勉強会 Smalltalkのインストール Squeak 4.1-ja(All in
one)がおすすめ Mac, Linux, Windows全てに対応 http://swikis.ddo.jp/umejava/48 zipファイルを解凍してすぐに使える 使い方は環境編を参照 2
3.
第26回Smalltalk勉強会 Smalltalkが分からない 文法 開発環境 array :=
Array with:-1 with:1 with:100. array inject: Float infinity negated into:[:v1 :v2 | v1 max: v2 ]. 3
4.
第26回Smalltalk勉強会 Smalltalkのプログラミングの流れ Workspace,SytemBrowserを起動 プログラムを記述 プログラム実行 開発環境編 文法編 開発環境編 4
5.
基本文法編 第26回 Smalltalk勉強会 吉田 翔 5
6.
第26回Smalltalk勉強会 コメント ダブルクオーテーションで囲む "0 notNil" ダブルクオーテーションをコメントに含める場合 " このように「""」2回記述します" 6
7.
第26回Smalltalk勉強会 文の区切りと代入 文の区切り 代入(assignment) . := ピリオド コロン,イコール 昔のSmalltalkのコードではアンダーバー_ 7
8.
第26回Smalltalk勉強会 リテラル(数字) 5. 1.414. -1. 122244567. 10e7. 2r100. "2進数 " 8r12.
"8進数" 16rFF. "16進数" 8
9.
第26回Smalltalk勉強会 文字 文字列 リテラル(文字と文字列) $a "文字の前に$を付けます" $b $- 'Smalltalk' "シングルクオーテーションで囲む" "「'」を文字列に含める場合は2回続けて書く
" " 文字列結合は「,」 " 9
10.
第26回Smalltalk勉強会 リテラル シンボル 配列 #apple. #pineapple. システム内に1つしか存在しない文字列 #($a 'smalltalk' 42.19). #(#(1
2) 3). #(a b c) ===> #(#a #b #c) 要素のオブジェクトは統一しなくてもいい 10
11.
第26回Smalltalk勉強会 擬変数 true false nil self super thisContext 自身を表す メソッドの検索の際,スーパークラスのものを表す 自身実行中のコンテキスト(システムの実行状態)を表す 11
12.
第26回Smalltalk勉強会 メッセージ式 3 negated -3 オブジェクト
メッセージ オブジェクトにメッセージを送る Smalltalkのプログラム 1. 単項メッセージ式 2. 2項メッセージ式 3. キーワードメッセージ式 12
13.
第26回Smalltalk勉強会 単項メッセージ(Unary messages) 4 sqrt.
"平方根" 12 i. "虚数" 1 asFloat. "浮動小数とする" #(1 2 3) first. "最初の要素を取り出す" 引数を取らないメッセージ 13
14.
第26回Smalltalk勉強会 2項メッセージ(Binary Messages) 4 +
1. 10 / 2. 8 // 3. 1 < 2. 'Small','talk'. 記号 +, -, ,,!, /, &, =, >, ¦, <, , @を組み合わせた名前を もつメッセージ 主に数学の2項演算子(2つのデータに対する演算)を 表すためのもの 14
15.
第26回Smalltalk勉強会 キーワードメッセージ(Keyword Messages) "3番目の要素を取り出す" #($z $y
$x) at: 3. "10から100の間の数ならばtrueを返す" 11 between: 10 and: 100. 11.between(10,100) "2番目の要素をhelloに置き換える" #($a $b $c) at: 2 put: 'hello'. 1 to: 10 by: 2 do:[:v | Transcript cr; show:v ]. 引数を取るメッセージのうち, 2項メッセージ以外. メッセージの終わりにはコロン(:)が必ず付く 15
16.
第26回Smalltalk勉強会 メッセージの優先順位 四則演算の優先順位がない. 優先順位を付けるには括弧を付ける. 単項 > 2項
> キーワード 基本は左優先順 単項,2項,キーワードメッセージが, 1つの文に含まれていた場合には以下の優先順位で実行 16
17.
第26回Smalltalk勉強会 メッセージの優先順位(例) 基本は左優先 単項 > 2項
> キーワード 3 + 4 sqrt (3 + 4) sqrt 1 2 21 17
18.
第26回Smalltalk勉強会 練習問題 3 + 4
* 5. 3 + 4 sqrt. 50 + 4 sqrt between: 10 and: 100. 実行順序と実行結果を考えましょう 18
19.
第26回Smalltalk勉強会 ブロック block := [:x
:y | x + y]. block value: 1 value: 2. block valueWithArguments: #(3 4) 主に制御構造に用いられる 任意の時点で実行可能なプログラムの固まり •function(x){x + 1}のようなもの •(lambda (x) (+ x 1)) 実行する際には,引数の数に応じて value,value:等を送信する 19
20.
第26回Smalltalk勉強会 カスケード Transcript show: 'Hello '; cr; show:'Squeak'. Transcript
show: 'Hello '. Transcript cr. Transcript show: 'Squeak'. 先頭オブジェクトに対してメッセージを連続的に 送信する際に用いる ; セミコロンを用いる 20
21.
第26回Smalltalk勉強会 リターン ^ 値を返す キャレット ^ 1 +
2. ^ true. 21
22.
第26回Smalltalk勉強会 制御文(条件分岐) Float infinity >
0 ifTrue:[ Transcript show:'Yes!'. ] ifFalse:[ Transcript show: ' NO... ' ]. 22
23.
第26回Smalltalk勉強会 制御文(繰り返し) 1 to: 10
by: 2 do:[:v | Transcript cr;show:v ]. | i | "一時変数" i := 1. [i < 10] whileTrue:[:v | Transcript cr; show:v. i := i + 2. ]. for(int i=1; i<=10; i=i+2) int i=1; while(i<10;){ i=i+2; } 23
24.
第26回Smalltalk勉強会 制御文(繰り返し) #(1 2 3)
do:[:v | Transcript cr; show:v ]. 3 timesRepeat:[ Transcript show:‘Hello’]. 24
25.
第26回Smalltalk勉強会 Smalltalkのポイント 変数名にアンダーバーやダラーは使えない 擬変数には代入できない 算術演算の時は優先順位を注意する whileTrue:はブロックオブジェクトに送る 配列の添字は1からはじまる 25
26.
開発環境編 第26回 Smalltalk勉強会 吉田 翔 26
27.
第26回Smalltalk勉強会 ワールドメニュー(World menu) 背景(ワールド)をクリック 開き方 27
28.
第26回Smalltalk勉強会 Smalltalkの開発環境 ワークスペース(Workspace) トランスクリプト(Transcript) システムブラウザ(System Browser) インスペクタ(Inspector) メソッドファインダ(Method Finder) デバッガ(Debugger) 覚えて欲しいツール 28
29.
第26回Smalltalk勉強会 ワークスペース(Workspace) プログラムを記述するためのエディタ 開き方 ワールドメニュー (World menu)の開く 開く
メニュー ワークスペース(Workspace) 29
30.
第26回Smalltalk勉強会 トランスクリプト(Transcript) 実行結果を出力するためのウィンドウ 開き方 ワールドメニュー (World menu)の開く 開く
メニュー トランスクリプト(Transcript) 30
31.
第26回Smalltalk勉強会 使いたくてたまらない人のために Hello Smalltalkを表示してみましょう 必要なツール ワークスペース トランスクリプト Transcript show:
'Hello Smalltalk'. ワークスペースに以下のコードを記述 トランスクリプトにHello Smalltalkを出力する 31
32.
第26回Smalltalk勉強会 プログラムの実行方法 do it 1.実行するプログラム を選択して ALT(右ク リック)+
クリック 2.「式を評価」を選択 使い方 32
33.
第26回Smalltalk勉強会 プログラム結果の出力方法 print it Transcriptに出力 1 +
3. Transcript show: 1 + 3. 「式を表示」を選択 33
34.
第26回Smalltalk勉強会 システムブラウザ クラス検索,クラス定義を行なう 開き方 ワールドメニュー (World menu)の開く 開く
メニュー システムブラウザ(Browser) 34
35.
第26回Smalltalk勉強会 インスペクタ オブジェクトを調べるツール xをインスペクタで確認 オブジェクトを選択,ALT(右クリック)押し ながらクリック. 「式をインスペクト」を選択 35
36.
第26回Smalltalk勉強会 インスペクタを使ってみよう "配列の要素をランダムで取り出す" x := #(#(7
9) #(3 1)) atRandom. x. "インスペクト" x inspect. "Do It" どちらの配列がxに代入されたか調べてみる または 36
37.
第26回Smalltalk勉強会 メソッド・ファインダ(Method Finder) メソッド検索をするツール ワールドメニュー (World
menu)の開く 開く メニュー メソッド・ファインダ(method finder) 37
38.
第26回Smalltalk勉強会 ノーティファイア デバッカを開く エラーの際に開く警告表示 最初は,中止ボタン(Abandon)でも構わない 38
39.
第26回Smalltalk勉強会 デバッガ(Debugger) 使い方は「自由自在Squeak プログラミング」を参考にしてください 39
40.
第26回Smalltalk勉強会 ショートカット Mac Windows ワークスペース を開く CMD +
k ALT + k トランスクリプト を開く CMD + t ALT + t システムブラウザ を開く CMD + b ALT + b do it CMD + d ALT + d print it CMD + p ALT + p CMD(ALT) + ピリオド(.) 強制終了(割り込み) 40
41.
第26回Smalltalk勉強会 終了方法 ワールドメニューの「保存して終了」または「終了」 実行中のプログラム(プログラムの実行状態)を イメージに保存できる 再び起動した際に,前回の状態が再現される 41
42.
第26回Smalltalk勉強会 イメージの保存について 種類 内容 保存 (save) 現在の状態を現在使用しているイメージに保存 別名保存 (save as) 別のイメージに保存に状態を保存.イメージ名 を決定する.保存後は,新たに作成したイメー ジ画面が表示 新しい版として保存 (save
as new version) 自動的にイメージ名にバージョン番号が付加さ れる 保存して終了 (save and quit) 現在の状態を現在使用しているimageに 保存して終了 イメージとはSmalltalkのオブジェクトを ファイルにダンプしたもの 42
43.
何か作りましょう BMI計算ツールを作ろう 43
44.
第26回Smalltalk勉強会 BMI BMI = 体重[kg]
(身長[m] 身長[m]) 標準体重 = 身長 身長 x 22 日本肥満学会によると BMIが22の場合が標準体重 BMIが25以上の場合を肥満 BMIが18.5未満である場合をやせ 9//2. “商” 92. “余り” 44
45.
第26回Smalltalk勉強会 UIを使ったツールにするために h := FillInTheBlank
request:'身長(cm)は?' initialAnswer:'0'. “戻り値はByteStringなので 変換する” h asInteger . 45
46.
第26回Smalltalk勉強会 UIを使ったツールにするために Utilities informUser: '計算中' !
during: [(Delay forSeconds: 1) wait]. 1秒間Squeakの画面上に計算中と表示する 46
47.
第26回Smalltalk勉強会 | h w
bmi sw | h := FillInTheBlank request: '身長(cm)は?' initialAnswer: '0'. h asInteger <= 0 ifTrue:[ ^false ]. w := FillInTheBlank request: '体重(kg)は?' initialAnswer: '0'. h asInteger <= 0 ifTrue:[ ^false ]. bmi := w // ( ( h*h ) //10000 ). sw := ( h*h*22 ) // 10000 Utilities informUser: '計算中' ! during: [(Delay forSeconds: 1) wait ]. 一部 47
48.
(おまけ) クラスとインスタンス編 第26回 Smalltalk勉強会 吉田 翔 48
49.
第26回Smalltalk勉強会 1.クラスカテゴリ作成 2.クラス名作成 3.メソッドカテゴリ作成 4.メソッド作成 クラス定義 クラス定義はクラスブラウザを用いる 49
50.
第26回Smalltalk勉強会 クラス定義 - クラスカテゴリ作成 1.
ALT(右クリック)を 押しながらクリック 2.「項目を追加」を選択 50
51.
第26回Smalltalk勉強会 クラス定義 スーパークラス名 subclass: #クラス名 instanceVariableNames:
'インスタンス変数名1 インスタンス変数名2' classVariableNames: 'クラス変数名1 クラス変数名2' poolDictionaries: 'プール辞書名' category: 'クラスカテゴリ' 必ずスーパークラスを持つ クラスブラウザのコードペインに記述 51
52.
第26回Smalltalk勉強会 クラス定義 クラス定義の例 52
53.
第26回Smalltalk勉強会 クラス定義の反映 accept ショートカット : CMD(ALT)
+ s •記述した定義等を保存(変更通知) •クラス定義,メソッド定義を追加・変更の際行なう •ALT(右クリック) + 了解 で行なう 初めてのacceptの際には右のフォーム が表示されるのでイニシャルを入力 53
54.
第26回Smalltalk勉強会 メソッドの定義 messageSelectorAndArgumentNames "comment stating purpose
of message" | temporary variable names | statements メソッドのテンプレートの意味 1行目はメソッド名 2行目はコメント 4行目は一時変数の定義 5行目以降はメソッドの動作記述 54
55.
第26回Smalltalk勉強会 インスタンスの生成 x := Human
new. クラスにnewメッセージを送信 55
56.
(おまけ)基本クラス編 第26回 Smalltalk勉強会 吉田 翔 56
57.
第26回Smalltalk勉強会 基本クラスの紹介 Number Block Collectionクラス, イテレータ等 Bag, Set Array,
OrderedCollection Dictionary 文字列(String) Stream 他にも色々なクラスがあります 57
58.
(おまけ)応用編 第26回 Smalltalk勉強会 吉田 翔 58
59.
第26回Smalltalk勉強会 Workspaceの内容の保存 をクリックし,save contents to
file...を選択 59
60.
第26回Smalltalk勉強会 ソースの管理方法(Squeak) imageごと csファイル(今回は紹介しない) stファイル Monticello(今回は紹介しない) Metacello(第23回Smalltalk勉強会) 60
61.
第26回Smalltalk勉強会 イメージ単位のバックアップ imageフォルダをコピー 61
62.
第26回Smalltalk勉強会 stファイルでの保存 プロジェクト名,クラス名またはメソッド 名で右クリックしファイルアウト 62
63.
第26回Smalltalk勉強会 stファイルの読み込み 開き方 ワールドメニュー (World menu)の開く 開く
メニュー ファイル・リスト ファイル・リストからstファイルを読み込む 63
64.
第26回Smalltalk勉強会 stファイルの読み込み ファイル・リストよりstファイルを指定し, ファイルインする 64
65.
第26回Smalltalk勉強会 Monticello FTP,HTTPサーバに保存することが可能 65
66.
おわりに 66
67.
第26回Smalltalk勉強会 現在チュートリアル作成中 1. Squeakインストール 2. Squeakの基本操作 3.
基本文法 4. クラス定義等 5. 基本クラス 5.1.Number 5.2.Block 5.3.Collectionクラス, イテレータ等 5.4.文字列(String) 5.5.Stream 6. デバック 7. 例外処理 8. ツール 9. 探索の旅 10.スレッド処理 11.Morph ? 12.パッケージ管理 13.Web 13.1.Seaside 13.2.Iliad 13.3.Magma 13.4.JSON, XML 14.正規表現 15.Traits 他にも要望があればどうぞ 67
68.
Smalltalkをもっと勉強したい人のために 68
69.
第26回Smalltalk勉強会 おすすめ参考文献 1) 自由自在Squeakプログラミング 2) Smalltalkで学ぶオブジェクト指向プログラミングの本質 3)
Squeak by Example http://www.squeakbyexample.org/ 4) Smalltalkイディオム 5) ケント・ベックのSmalltalkベストプラクティス・パターン 書籍 69
70.
第26回Smalltalk勉強会 おすすめ文献 Cincom Smalltalk Daily(動画)
http:// www.cincomsmalltalk.com/userblogs/cincom/blogView? content=smalltalk_daily Smalltalkのtは小文字です http://d.hatena.ne.jp/sumim/ どう書く?org http://ja.doukaku.org/ サイト 70
71.
第26回Smalltalk勉強会 ML Squeak-ja http://www.smalltalk.jp/mailman/ listinfo/squeak-ja SML http://www.smalltalk.jp/SML/ Squeak-dev
http:// lists.squeakfoundation.org/mailman/listinfo/ squeak-dev Pharo http://lists.gforge.inria.fr/cgi-bin/ mailman/listinfo/pharo-users 71
Download