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
Lisp(Clojure)で サーバーからアプリま で全てをつくるはなし
Search
BOXP
May 09, 2019
Programming
380
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Lisp(Clojure)で サーバーからアプリま で全てをつくるはなし
VRC-LT #1用です
https://vrc-lt.github.io/
BOXP
May 09, 2019
More Decks by BOXP
See All by BOXP
Cluster Creator Kitに入門してみた
boxp
0
94
LookingGlassPortraitあそんでみた
boxp
0
70
肉体を捨てた話
boxp
0
86
A story about releasing a online pairing service for avatars living in virtual worlds
boxp
1
370
VketのブースにVRoid製うちのこを召喚してみた
boxp
0
220
Hito Hub 2.0
boxp
0
1.4k
バーチャルマーケット3に ポスターを貼ってみた件
boxp
0
1.6k
趣味でGOOGLE KUBERNETES ENGINEを試したら 財布が薄くなったはなし
boxp
0
1.4k
趣味でつくる アバター×アバター マッチングアプリをリリースした話
boxp
0
140
Other Decks in Programming
See All in Programming
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
250
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
660
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
800
Lessons from Spec-Driven Development
simas
PRO
0
210
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
170
依存関係から依存物へ―Dependencyという言葉の歴史をひも解く
j_lee
0
120
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
400
The NotImplementedError Problem in Ruby
koic
1
850
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
6.2k
ふつうのFeature Flag実践入門
irof
8
4.1k
New "Type" system on PicoRuby
pocke
1
980
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
260
Featured
See All Featured
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
270
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
320
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
590
Leo the Paperboy
mayatellez
7
1.8k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
400
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
How to make the Groovebox
asonas
2
2.2k
Unsuck your backbone
ammeep
672
58k
Designing Powerful Visuals for Engaging Learning
tmiket
1
420
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
Transcript
Lisp(Clojure)で サーバーからアプリま で全てをつくるはなし BOXP
自己紹介 •(一箱さんのからだを借りた)BOXP •VRoid Studioすきすき •Clojureすきすき
本題の前に
どっちを話そうか迷っていま したが… or
None
None
ここから本題
None
Hito Hubの 技術面について しゃべります
Hito Hubとは アバター×アバターのマッチングサービス 自動で相性のよいアバターをおすすめ してくれる スマートフォン向けWebアプリ(not VR )
Hito Hubを支える システムたち vr-match-front-end アバターについて表示 するアプリ vr-match-bff アプリの高速化や 静的ページを提供する 特殊なバックエンド
vr-match-api おすすめの アバターを探したり するバックエンド
図にするとこんな感じ vr-match-bff vr-match-api vr-match-front-end Cloud CDN Cloud SQL(MySQL)
図にするとこんな感じ vr-match-bff vr-match-api vr-match-front-end Cloud CDN Cloud SQL(MySQL)
今回の主役 Clojure
Clojure? ◦ 関数型言語と呼ばれるうちの一人 ◦ マルチプラットフォーム言語 ◦ サーバーサイド・フロントエンドどちらでも使える(JVM, JavaScript, .NET) ◦
実はUnityでも使える ◦ 簡潔にコードを書けて気持ちいい(※個人の見解です) ◦ Webフロントエンドアプリの比較では最もコード量の少ない言語として選ばれた (A RealWorld Comparison of Front-End Frameworks with Benchmarks - freeCodeCamp.org調べ) ◦ 個人プロジェクトでモチベーションを保つためには重要 ◦ コンセプトは "Simple made easy." 引用: エラトステネスの篩を使ってClojureで素数を求める https://gist.github.com/fumokmm/2729276
Hito Hubを 支えるClojure
Clojureのデータ構造による 画面作成 \Hello/ Render
Clojureによる アプリとバックエンドの連携 vr-match-api Share Share Fetch
ほかにも色々Clojure •アプリケーションに新しいコードを差し込んですぐに動作確認できる •動画でお見せできないのが残念 REPLを使ったインタラクティブな開発 •サーバーサイドレンダリングとか •CodeSplit & LazyLoadとか •prefetchとか •いわゆるPWAと呼ばれるような条件は問題なくクリアできる
フロントエンド/サーバーサイドでできないことはほとんどない
Thank you!
GitHubで ソースコード 公開中です HTTPS://GITHUB.COM/BOXP/VR-MATCH