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
実践的な Reader Conditionals と Transit format
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ayato
December 20, 2015
Programming
450
2
Share
実践的な Reader Conditionals と Transit format
ayato
December 20, 2015
More Decks by ayato
See All by ayato
マイクロサービス内で動くAPIをF#で書いている
ayato0211
1
1.5k
Clojureという言語が私逹にもたらしたもの
ayato0211
6
3.2k
3年間考え続けてきたWebアプリケーションにおけるテストの話
ayato0211
3
300
Re:REPL-Driven Development
ayato0211
3
1.4k
Meta Template Engine
ayato0211
2
1.2k
超変換! Hiccup data structure!!
ayato0211
2
660
About Integrant
ayato0211
0
600
Muscle Assert
ayato0211
0
320
Clojureを用いたWebアプリケーション開発
ayato0211
2
3.2k
Other Decks in Programming
See All in Programming
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
210
SkillsをS3 Filesに置く時のあれこれ
watany
4
1.8k
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
5
650
Talking to terminals (and how they talk back) (KotlinConf 2026)
jakewharton
PRO
1
120
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
110
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
11
2.4k
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
730
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
970
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
240
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
210
誰も頼んでない機能を出荷した話
zekutax
0
130
AIエージェントと協働するCLI開発 — BunとOpenClawで学んだこと
yoshikouki
1
210
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
560
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
360
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
190
Chasing Engaging Ingredients in Design
codingconduct
0
200
Done Done
chrislema
186
16k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Transcript
1SBDUJDBM 3FBEFS$POEJUJPOBMT 5SBOTJUGPSNBU -JTQ.FFU6QQSFTFOUFECZ4IJCVZBMJTQ !@BZBUP@Q
͋ͽʔ $MPKVSFŧŔŕŪƂŜſŵƃ ීஈ$MPKVSFũƄŝſŵƃͱࣄͯ͠Δ $MPKVSFŜŝŦŘŵƃ୳ͯ͠·͢ $ZCP[V4UBSUVQT *OD
ࠓ͢Δ 3FBEFS$POEJUJPOBMTͱ5SBOTJUGPSNBU ͷݱ࣮తͳ׆༻ํ๏ʹ͍ͭͯ
&13FBEFS$POEJUJPOBMT ͋Δͷ͜ͱʜ ʮ3FBEFS$POEJUJPOBMTศརͰ͢ΑͶʔʯ "MJDFʮͲ͏͍͏ͱ͖ʹ͏ΜͰ͔͢ʁʯ ʮ͑ʯ "MJDFʮόϦσʔγϣϯͱ͔ʁʯ
3FBEFS$POEJUJPOBMT ʹ͍ͭͯ
3FBEFS$POEJUJPOBMTͱ $MPKVSF͔Βͷػೳ 3FBEFSTZOUBY ! Λͬͯ ϓϥοτϑΥʔϜґଘΛΓग़͢͜ͱ͕ग़དྷΔ ֦ுࢠΛDMKDͱ͢Δ͜ͱͰ ֤ϓϥοτϑΥʔϜ͔Βݺͼग़ͤΔ
ओʹϥΠϒϥϦ։ൃͰॏๅ͢Δ CJEJ DMKTBKBY FUD
(ns example.core #?(:clj (:import [java.net URLEncoder]))) (defn url-encode [string] (some->
string str #?(:clj (URLEncoder/encode "UTF-8") :cljs (js/encodeURIComponent)) (.replace "+" "%20"))) 3FBEFS$POEJUJPOBMT
Ͳ͏͍͏ͱ͖ʹ͑Δʁ ϧʔτఆٛͷڞ༗ αʔόʔαΠυϨϯμϦϯάGPS3FBHFOU ϞσϧͷόϦσʔγϣϯݕࠪ
%&.0
&15SBOTJUGPSNBU ͋Δͷ͜ͱ ʮ5SBOTJUGPSNBU࠷ߴͰ͢ΑͶʂʯ #PCʮ+40/ͱԿ͕ҧ͏ΜͰ͔͢ʁʯ ʮ͑ʯ #PCʮ+40/Ͱྑ͘ͳ͍Ͱ͢ʁʯ
5SBOTJUGPSNBU ʹ͍ͭͯ
5SBOTJUGPSNBUͱ $PHOJUFDU͕ఏএ͢ΔσʔλϑΥʔϚοτ ϓϩάϥϜͱϓϩάϥϜͷίϛϡχέʔγϣϯ ʹϑΥʔΧε͍ͯ͠Δ ֦ுੑ͕ߴ͘ɺϢʔβʔఆٛܕΛอ࣋ग़དྷΔ +40/ .FTTBHF1BDLͱޓੑ͕͋Δ 3FBEFS$POEJUJPOBMTͱ૬ੑ͕ྑ͍
(ns example.core (:require [cognitect.transit :as transit]) (:import [java.io ByteArrayInputStream ByteArrayOutputStream]))
(def writer (transit/writer out :json)) (transit/write writer [{:name "ayato_p" :age 24} {:name "alea" :age 24}]) (prn (.toString out)) ;; => "[[\"^ \",\"~:name\",\"ayato_p\",\"~:age\",24], [\"^ \",\"^0\",\"alea\",\"^1\",24]]" 5SBOTJUGPSNBU
Ͳ͏͍͏ͱ͖ʹ͑Δʁ $MPKVSFͱ$MPKVSF4DSJQUؒͷ௨৴
%&.0
·ͱΊ 3FBEFS$POEJUJPOBMT5SBOTJUGPSNBUศར $MPKVSF࠷ߴʂʂ
Enjoy Clojure