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
ayato
December 20, 2015
Programming
2
430
実践的な Reader Conditionals と Transit format
ayato
December 20, 2015
Tweet
Share
More Decks by ayato
See All by ayato
マイクロサービス内で動くAPIをF#で書いている
ayato0211
1
830
Clojureという言語が私逹にもたらしたもの
ayato0211
6
3.1k
3年間考え続けてきたWebアプリケーションにおけるテストの話
ayato0211
3
260
Re:REPL-Driven Development
ayato0211
3
1.3k
Meta Template Engine
ayato0211
2
1.1k
超変換! Hiccup data structure!!
ayato0211
2
610
About Integrant
ayato0211
0
560
Muscle Assert
ayato0211
0
270
Clojureを用いたWebアプリケーション開発
ayato0211
2
3.1k
Other Decks in Programming
See All in Programming
Namespace and Its Future
tagomoris
6
690
More Approvers for Greater OSS and Japan Community
tkikuc
1
110
Go言語での実装を通して学ぶLLMファインチューニングの仕組み / fukuokago22-llm-peft
monochromegane
0
110
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
2
1.1k
Ruby Parser progress report 2025
yui_knk
1
260
CSC305 Summer Lecture 12
javiergs
PRO
0
130
AIを活用し、今後に備えるための技術知識 / Basic Knowledge to Utilize AI
kishida
19
4.3k
AWS発のAIエディタKiroを使ってみた
iriikeita
1
140
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
100
AI時代のUIはどこへ行く?
yusukebe
11
5.9k
Honoアップデート 2025年夏
yusukebe
1
900
print("Hello, World")
eddie
1
340
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
840
Site-Speed That Sticks
csswizardry
10
810
Embracing the Ebb and Flow
colly
87
4.8k
4 Signs Your Business is Dying
shpigford
184
22k
A Modern Web Designer's Workflow
chriscoyier
696
190k
Statistics for Hackers
jakevdp
799
220k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
284
13k
Bash Introduction
62gerente
614
210k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
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