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
2020 - COSCUP - 你這段 Ruby Code 超速摟,已經沒有人看得懂了!
Search
蒼時弦や
August 02, 2020
Technology
0
130
2020 - COSCUP - 你這段 Ruby Code 超速摟,已經沒有人看得懂了!
蒼時弦や
August 02, 2020
Tweet
Share
More Decks by 蒼時弦や
See All by 蒼時弦や
2024 - COSCUP - Clean Architecture in Rails
elct9620
2
140
2023 - RubyConfTW - Rethink Rails Architecture
elct9620
0
110
20230916 - DDDTW - 導入 Domain-Driven Design 的最佳時機
elct9620
0
380
2023 - WebConf - 選擇適合你的技能組合
elct9620
0
600
20230322 - Generative AI 小聚 ft. Happy Designer
elct9620
0
330
2022 - 默默會 - 重新學習 MVC 的 Model
elct9620
1
420
MOPCON 2022 - 從 Domain-Driven Design 看網站開發框架隱藏
elct9620
1
440
2022 - COSCUP - 我想慢慢寫程式該怎麼辦?
elct9620
0
230
2022 - COSCUP - 打造高速 Ruby 專案開發流程
elct9620
0
250
Other Decks in Technology
See All in Technology
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
590
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
240
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
120
スキルだけでは満たせない、 “組織全体に”なじむオンボーディング/Onboarding that fits “throughout the organization” and cannot be satisfied by skills alone
bitkey
0
170
脳波を用いた嗜好マッチングシステム
hokkey621
0
280
OSS構成管理ツールCMDBuildを使ったAWSリソース管理の自動化
satorufunai
0
630
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
180
OPENLOGI Company Profile for engineer
hr01
1
20k
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
10
3.7k
遷移の高速化 ヤフートップの試行錯誤
narirou
6
1.1k
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
310
ABWG2024採択者が語るエンジニアとしての自分自身の見つけ方〜発信して、つながって、世界を広げていく〜
maimyyym
1
120
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
74
9.2k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
A better future with KSS
kneath
238
17k
Git: the NoSQL Database
bkeepers
PRO
427
65k
A designer walks into a library…
pauljervisheath
205
24k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
A Tale of Four Properties
chriscoyier
158
23k
Fireside Chat
paigeccino
34
3.2k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
Documentation Writing (for coders)
carmenintech
67
4.6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Transcript
你這段 Ruby Code 超速摟, 已經沒有人看得懂了!
WEB DEVELOPER GAME DEVELOPER ࣌ ݭ @elct9620
None
https://oktop.tumblr.com/
DSL @topic[0]
None
針對 特定情境 所設計的語言
Meta Programming @topic[1]
None
對語言的 拓展 進而改善開發效率
None
DSL 是實現 Meta Programming 的 手段 之一
Make a DSL by yourself @topic[2]
None
None
None
None
None
Create your meta programming @topic[3]
None
None
None
None
None
The "eval" way @topic[4]
比較 特殊 的用法,但可能意外常見
None
None
None
Unlight - Code Generator @topic[5]
None
None
None
None
為什麼要 動態 產生方法?
Length (2 Byte) Command (2 Byte) Body "\n" (1 Byte)
Number (4 Byte) Char (1 Byte) String Boolean (1 Byte)
Length
None
None
None
這樣做有什麼 好處 ?
None
Unlight - Meta Programming @topic[6]
None
None
None
None
None
這樣做有什麼 好處 ?
None
Q&A
Thanks