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
Synth - 東京Node学園2014
Search
pochi
August 20, 2014
Programming
0
4.4k
Synth - 東京Node学園2014
東京Node学園2014発表資料
Synthの紹介
pochi
August 20, 2014
Tweet
Share
More Decks by pochi
See All by pochi
React Nativeで作ったアプリでRedux-Sagaを使ったので,その話 / TOM Internal Developer Session #7
pchw
0
2.2k
Expoで開発してアプリを公開して得られた知見 / RNM6
pchw
3
1.9k
Firebaseでラクラクリアルタイムアプリ
pchw
0
1.4k
MongoDB族のための組み込み軽量DB NeDB
pchw
0
1.5k
月刊ライトニングトーク2014年8月号: MEAN 祭り資料
pchw
0
4.3k
RubyMotion 1.15で追加されたtest周りの話
pchw
1
3.2k
Other Decks in Programming
See All in Programming
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
210
[KNOTS 2026登壇資料]AIで拡張‧交差する プロダクト開発のプロセス および携わるメンバーの役割
hisatake
0
300
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
440
CSC307 Lecture 07
javiergs
PRO
1
560
Data-Centric Kaggle
isax1015
2
780
CSC307 Lecture 10
javiergs
PRO
1
660
Vibe Coding - AI 驅動的軟體開發
mickyp100
0
180
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.4k
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
4.4k
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
460
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
1
220
MUSUBIXとは
nahisaho
0
140
Featured
See All Featured
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
54
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
WENDY [Excerpt]
tessaabrams
9
36k
Tell your own story through comics
letsgokoyo
1
810
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
The untapped power of vector embeddings
frankvandijk
1
1.6k
Ethics towards AI in product and experience design
skipperchong
2
200
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
140
Transcript
Synth @pchw
https://otakumode.com/careers WANTS YOU
What is Synth?
http://www.infoq.com/jp/news/2014/06/synth Synth, API-First Web Framework, Confuses Community - APIϑΝʔετͷWebϑϨʔϜϫʔΫSynthΛ८ΔίϛϡχςΟͷࠔ -
http://www.synthjs.com/ The back-end web framework designed to make (Angular|Ember|Backbone)JS web
apps easy to create and manage.
an API-first web app framework is
#1 - #4 Synth Introduction
API-first #1
Synth is composed of … RESTful JSON API and Client
side MV* application
Backend Frontend View /api/tweets View Model Model JSON /api/memos JSON
database /tweets
Map directory structures to URL routings #2
Synth provides … Easy to add an endpoint
/api/tweets /api/memos back/resources/ tweets/ getTweets.js exports.getIndex = function () {!
:! } memos/ getMemos.js exports.getIndex = function () {! :! } Directories Backend
exports.getIndex?
exports.getIndex? exports.getIndex = function () {! // GET /api/tweets! }
exports.get = function () {! // GET /api/tweets/123! } exports.post = function () {! // POST /api/tweet! }
#3 Preloaded HTML Preloaded Data
Client side MV* frameworks have a problem
None
Synth resolves … initial rendering delays
Backend Frontend View /api/tweets View Model Model /api/memos database /tweets
templates
index.jade ! script.! var preloadedData = !{data};! body! h1= appName!
! div(ng-view)! ! if preloadHTML! script(type="text/ng-template")! != preloadHTML
#4 Promises
Synth implements preload… By using Promises
getTweets.js ! exports.getIndex = function (db) {! return db.collection('tweets').find()! .sort({
created_at: -1 })! .limit(30)! .toArray().then(function (tweets) {! return {! tweets: tweets! };! });! };
Conclusion
Synth • is an API-first web application framework • resolves
initial rendering delays • recommend to use promised handler • have a simple directory - URL mapping