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
4.4k
0
Share
Synth - 東京Node学園2014
東京Node学園2014発表資料
Synthの紹介
pochi
August 20, 2014
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
PHPでバイナリをパースして理解するASN.1
muno92
PRO
0
440
UaaL×Androidアプリのメモリ計測 — Memory Profilerの先へ
rio432
0
140
運転動画を検索可能にする〜Cosmos-Embed1とDatabricks Vector Searchで〜/cosmos-embed1-databricks-vector-search
studio_graph
1
700
ハーネスエンジニアリングにどう向き合うか 〜ルールファイルを超えて開発プロセスを設計する〜 / How to approach harness engineering
rkaga
28
19k
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
2
1.7k
継続的な負荷検証を目指して
pyama86
3
1.1k
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
4
450
AI時代だからこそ「Bloc」を採用する価値があるのかもしれない
takuroabe
0
150
My daily life on Ruby
a_matsuda
3
200
AgentCore Optimizationを始めよう!
licux
3
230
ソフトウェア設計の結合バランス #phperkaigi
kajitack
0
500
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
190
Featured
See All Featured
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
370
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
170
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
390
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
180
Odyssey Design
rkendrick25
PRO
2
610
AI: The stuff that nobody shows you
jnunemaker
PRO
6
630
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
420
The browser strikes back
jonoalderson
0
1k
Prompt Engineering for Job Search
mfonobong
0
300
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
44k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
800
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