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
次プログラミング
Search
Cyril Kato
December 05, 2014
Programming
67
0
Share
次プログラミング
いいインターフェースで、いいプログラミングの話。
Cyril Kato
December 05, 2014
More Decks by Cyril Kato
See All by Cyril Kato
Fix - Simple, stupid testing framework for Ruby
cyril
1
310
こんばんは、条件やビヘイビアテスト
cyril
0
290
Other Decks in Programming
See All in Programming
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
130
tsserverとは何だったのか、これからどうなるのか
nowaki28
1
380
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
320
~ 秘伝のタレ化した『神スプシ』と戦う ~ 関数型パラダイムで壊れない仕組みへ
h0r15h0
1
130
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
220
横断組織出身のQAEがインプロセスQAEでつまずいたこと・活かせたこと
ty89
0
180
inferと仲良くなる10分間
ryokatsuse
1
250
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
1
190
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
150
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
8
1.9k
実践ハーネスエンジニアリング:ステアリングループを実例から読み解く / Practical Harness Engineering: Understanding Steering Loops Through Real-World Examples
nrslib
6
6.3k
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
130
Featured
See All Featured
Thoughts on Productivity
jonyablonski
76
5.2k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
How to Ace a Technical Interview
jacobian
281
24k
Claude Code のすすめ
schroneko
67
220k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
For a Future-Friendly Web
brad_frost
183
10k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
370
Optimising Largest Contentful Paint
csswizardry
37
3.7k
So, you think you're a good person
axbom
PRO
2
2k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
550
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Transcript
懐かしい・・・
アセンブリ言語 MOV EAX, [EBX] MOV [ESI+EAX], CL
懐かしいけど、
None
今日 ・・・ RubyやElixirがありますよ!
例え 、Ruby言語で puts 'やった!'
None
こ 方法により、 ほんまに 信じることができますか?
こ 方法により、 ほんまに バグがありませんか?
ところで・・・
ソフトウェア ライセンスに、 最も人気 ある言葉 ・・・
None
ライセンス 例 • MIT License • BSD License • GPL
License
None
puts 'やった!' 対外依存
ということ Ruby puts 、 外部システムに クエリを委任されています。
問題 、 こ プログラム スコープ 大きすぎるです
問題 、 なぜなら、 コントロールができません!
ところで・・・
None
ですから、 もしLinuxに、 問題があれ ・・・
None
とにかく、 Ruby 責任じゃ ありません!!
None
二つ 特性 コード独立性 コード完全性
コード独立性 IOもうダメよ ダメダメ!!
コード独立性 IO • コード 前: OK • コード 後: OK
コード独立性 • コード 中: NOOO!
コード完全性 アトミック構文で コード 変更
コード完全性 例え 、 arbre = 木 フランス語で テキスト・エディタに、 コンセプト マッピング
、 • 5文字 (フランス語で) • 1文字 (日本語で)
フランス語 せいじゃありません 問題 、テキスト・エディタです コード完全性
実 、 違うインターフェースを つかなけれ なりません コード完全性
var variable = 42; POST /variable HTTP/1.1 data: {“value”: 42,
“type”: “number”} コード完全性 JavaScript言語 Web言語
None