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
抽象について #TechLunch
Search
Livesense Inc.
PRO
April 21, 2014
Technology
0
32
抽象について #TechLunch
抽象について
2013/03/06 (水) 12:00-13:00 @ Livesense TechLunch
発表者:松坂 高嗣
Livesense Inc.
PRO
April 21, 2014
Tweet
Share
More Decks by Livesense Inc.
See All by Livesense Inc.
EM候補者向け転職会議説明資料
livesense
PRO
0
6
コロナで失われたノベルティ作成ノウハウを復活させた話
livesense
PRO
0
73
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
360
転職会議でGPT-3を活用した企業口コミ要約機能をリリースした話
livesense
PRO
0
1k
株式会社リブセンス マッハバイト_プレイブック
livesense
PRO
0
410
Tech Award 2021 選出方法
livesense
PRO
0
1k
株式会社リブセンス エンジニアリング組織を支える風土と制度
livesense
PRO
0
530
株式会社リブセンス・マッハバイト 採用候補者様向け資料
livesense
PRO
0
210
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
2k
Other Decks in Technology
See All in Technology
Delivering Millions of Messages within seconds @ Duolingo
pelelgrino
0
350
アクセシビリティを考慮したUI/CSSフレームワーク・ライブラリ選定
yajihum
2
1k
私が trocco を推す理由
__allllllllez__
1
220
Reducing Cross-Zone Egress at Spotify with Custom gRPC Load Balancing Recap
koh_naga
0
200
障害対応をちょっとずつよくしていくための 演習の作りかた
heleeen
0
170
Terraformあれやこれ/terraform-this-and-that
emiki
8
1.4k
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
2
470
MapLibreとAmazon Location Service
dayjournal
1
150
リテール金融(キャッシュレス・ネット銀行・ネット証券)の競争環境と経済圏
8maki
0
930
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
120
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
890
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
nina01
1
210
Featured
See All Featured
The Brand Is Dead. Long Live the Brand.
mthomps
49
28k
Typedesign – Prime Four
hannesfritz
36
2.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
7
1k
Raft: Consensus for Rubyists
vanstee
132
6.3k
Side Projects
sachag
451
41k
How to train your dragon (web standard)
notwaldorf
73
5.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
Designing Experiences People Love
moore
136
23k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Making Projects Easy
brettharned
108
5.5k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.1k
Faster Mobile Websites
deanohume
299
30k
Transcript
抽象について あれこれ考えた 松坂 高嗣 @ma2saka
みんな抽象大好き 「あなたの話は抽象的だ」と言われてふられた経 験、男なら誰しもあるものです と、冒頭でふっておいて。
実は先日 人に話をしている時 自分が使っている「抽象度が」「抽象化レイヤーが」 などという言葉がふとよくわからなくなったのです ということで、抽象度って言葉を調べてみた
None
「抽象度をあげろ」は有名らしい この業界とは関係なく、視野の高い低いと関連して 認知科学の人が提唱しているようです。 抽象度高く、意識高く行こうぜ! http://ja.wikipedia.org/wiki/苫米地英 人
抽象とはなんぞ 所与としての実在の世界においては分離されておらず,また場 合によっては分離することが不可能な諸特性をことさらに分離 して,それだけを思考の対象とする知性の働きをいう。具体に 対する。みずからをかこむ環境世界の中からある一群の特性を 捨象して,残りの特性を選別するという働きは,広い意味でいえ ば,最下等なものを含めた生物一般に,生存のための不可欠 の能力として見られるものであり,そのかぎりでは人間に特有 なものではないが,とりわけ高度に発達した分節言語を持つ人 間においては,抽象の能力は他の動物とは比較にならないほ
ど精緻かつ複雑なものになっている。
つまり 概念上の特定をいろいろ選んで分離して、 対象とする精神の働き こと。
そこから、普段使いの抽象まで
考えてみた • 抽象度という尺度 • 抽象化という操作 • 抽象化レイヤー
抽象度という尺度
抽象度とは度合いの違いのこと 「リンゴ」と「草」 「コンバージョン率」と「成功」 「走る」と「移動」 「バグ」と「障害」 「最後の文字」と「コレクションの末尾要素」 どれも抽象度が違う
抽象度という尺度は人工的・精神的 抽象という概念自体が もともと「精神の働き」なわけです どれだけの具体的な側面を切り落としたかという 「抽象度」なるものは、直感ではとらえる事はできま せん
測定できないが感覚的に比較はできる 測定できないのは原器がないからか? 軸を決めればどっちが抽象度が高いか比較はでき る 定量化できないのに「度」とはこれいかに
抽象度には価値判断は含まれない 当たり前のことだけど 高い方がいいわけではない
軸/切り口大事 • ザリガニ • JR 並べられている言葉をどういう概念でとらえるかで 抽象度は変わってくる。 生物-ザリガニ / 企業-JR
同等? 群れ - ザリガニ / JR - 人間 JRの方が抽象?
抽象化という操作
抽象化は「操作」 この業界ではみんなパンを食べるように抽象化し ます 「一般化」とか「モデル化」とか呼ぶ 枝葉末節を切り落とし、独立した概念を抽出する 操作
計算機科学では 抽象化は制御抽象化とデータ抽象化に分けられる。制御抽象 化は動作の抽象化であり、データ抽象化はデータ構造の抽象 化である。例えば、構造化プログラミングでの制御抽象化とは、 サブプログラムや定式化された制御フローの使用を意味する。 データ抽象化とは、本来ビット列であるデータを意味のある方法 で扱うことを意味する。例えば、データ型の背景にある動機は 抽象化である。オブジェクト指向プログラミングはデータとコード を同時に抽象化する試みと見ることもできる。
抽象化は新しい概念を作ったりする 「新しい概念」を作り出すという意味では創造的な 行い たとえば、マーケッターのやる「100万人の人々」と 100万の「人」との間に、10万人ずつのカテゴリ分 けを行うような操作は、まさに新しい概念を創出し ているのだと思う
抽象化はあんまり意識せずに行われる ファイル名つけるとか 文章の見出しつけるとか インターフェイス設計するとか
抽象化/具体化も価値判断は含まない 無条件にやったほうがいいわけではない 変更の頻繁な箇所は具体的で、粗結合に。 安定な箇所は抽象的で、密結合で。 そんな原則ありましたね。
抽象化レイヤーについて少しだけ
よく「抽象化レイヤー」と言いますが 理解しやすい /利用しやすいように抽象度をそろえ たインターフェイスを提供して、詳細を隠蔽する、 「層」。もしくは幕。 • DSL • API •
カプセル化
網羅的な抽象化レイヤーがなくて詳細が 思い切り露出する例 • 法律
ということで、結論
おわり ご清聴ありがとうございました
抽象とうまくつきあう 普段、意識しないで抽象化操作をして、抽象度をそ ろえた抽象化レイヤーを作って、そこで設計作業し ていたりすると思います サーバ構成検討のタスクとか けっこう身近な「抽象」という考え方に、 意識的になってみませんか?
余談
考えてる最中に出てきた面白い例 「よい英語ビジネス文書を書く能力」 を抽象化する 「よい英語を書く能力」 「英語のビジネスコミュニケーション能力」
次回予告 そろそろ Scala について