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
2
340
Lisp(Clojure)で サーバーからアプリま で全てをつくるはなし
VRC-LT #1用です
https://vrc-lt.github.io/
BOXP
May 09, 2019
Tweet
Share
More Decks by BOXP
See All by BOXP
Cluster Creator Kitに入門してみた
boxp
0
80
LookingGlassPortraitあそんでみた
boxp
0
54
肉体を捨てた話
boxp
0
77
A story about releasing a online pairing service for avatars living in virtual worlds
boxp
1
330
VketのブースにVRoid製うちのこを召喚してみた
boxp
0
200
Hito Hub 2.0
boxp
0
1.3k
バーチャルマーケット3に ポスターを貼ってみた件
boxp
0
1.5k
趣味でGOOGLE KUBERNETES ENGINEを試したら 財布が薄くなったはなし
boxp
0
1.4k
趣味でつくる アバター×アバター マッチングアプリをリリースした話
boxp
0
120
Other Decks in Programming
See All in Programming
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
710
「待たせ上手」なスケルトンスクリーン、 そのUXの裏側
teamlab
PRO
0
570
How Android Uses Data Structures Behind The Scenes
l2hyunwoo
0
480
Deep Dive into Kotlin Flow
jmatsu
1
370
Ruby Parser progress report 2025
yui_knk
1
460
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
870
GitHubとGitLabとAWS CodePipelineでCI/CDを組み比べてみた
satoshi256kbyte
4
250
テストコードはもう書かない:JetBrains AI Assistantに委ねる非同期処理のテスト自動設計・生成
makun
0
540
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
440
アセットのコンパイルについて
ojun9
0
130
RDoc meets YARD
okuramasafumi
4
170
Swift Updates - Learn Languages 2025
koher
2
510
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Designing for Performance
lara
610
69k
Automating Front-end Workflow
addyosmani
1370
200k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Writing Fast Ruby
sferik
628
62k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
How STYLIGHT went responsive
nonsquared
100
5.8k
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