Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
次プログラミング
Search
Cyril Kato
December 05, 2014
Programming
67
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
次プログラミング
いいインターフェースで、いいプログラミングの話。
Cyril Kato
December 05, 2014
More Decks by Cyril Kato
See All by Cyril Kato
Fix - Simple, stupid testing framework for Ruby
cyril
1
330
こんばんは、条件やビヘイビアテスト
cyril
0
310
Other Decks in Programming
See All in Programming
RSSとCodexを使ってX投稿自動化してみた
ochtum
0
110
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
650
Laravelのアプリケーションをどこにデプロイするか #ツナギメオフライン.9
akase244
0
120
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
4.4k
Snowflakeで業務アプリを作ろう。 Snowflakeのアプリ機能解説&実践ガイド
ayumu_yamaguchi
1
210
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
520
App Intentsのビルドプロセスを支える技術
kntkymt
0
190
Foundry Localでエージェント開発
seosoft
0
160
個人開発基盤をまるごとCloudflareに引っ越して爆速で総合的体験を向上させた話
tinykitten
0
140
信頼性の目標を誰も求めてない
shubox
0
500
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
270
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
690
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Why Our Code Smells
bkeepers
PRO
340
58k
How to build a perfect <img>
jonoalderson
1
6k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
230
Fireside Chat
paigeccino
43
4k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
680
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
250
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
So, you think you're a good person
axbom
PRO
2
2.1k
Building the Perfect Custom Keyboard
takai
2
870
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