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
Knockout: как, зачем, почему
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
fwdays
March 05, 2013
Programming
0
1.5k
Knockout: как, зачем, почему
fwdays
March 05, 2013
Tweet
Share
More Decks by fwdays
See All by fwdays
Symfony best practices и не только Олег Зинченко
fwdays
0
2.1k
Beyond Testing Михаил Боднарчук
fwdays
0
810
Yii2 - на пути от Alpha до GA. Взгляд с практической стороны Александр Бордун
fwdays
0
1.9k
Laravel 4: простота во всем. Евгений Косинский
fwdays
0
1k
Маленькая библиотека для большой компании. Антон Шевчук
fwdays
0
3.8k
Phalcon. Что нового? Александр Торош
fwdays
0
1.2k
Выбираем поисковик умом головы. Андрей Аксенов
fwdays
0
1.4k
Past, Present, and Future: The Evolution of PHP Development. Nate Abele
fwdays
0
810
Функциональный тулчейн Nix
fwdays
1
490
Other Decks in Programming
See All in Programming
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
620
CSC307 Lecture 09
javiergs
PRO
1
840
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
730
フロントエンド開発の勘所 -複数事業を経験して見えた判断軸の違い-
heimusu
7
2.8k
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
5
790
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
6
630
今から始めるClaude Code超入門
448jp
8
9k
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
2.5k
FOSDEM 2026: STUNMESH-go: Building P2P WireGuard Mesh Without Self-Hosted Infrastructure
tjjh89017
0
170
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
180
組織で育むオブザーバビリティ
ryota_hnk
0
180
20260127_試行錯誤の結晶を1冊に。著者が解説 先輩データサイエンティストからの指南書 / author's_commentary_ds_instructions_guide
nash_efp
1
990
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
9.7k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
The untapped power of vector embeddings
frankvandijk
1
1.6k
Scaling GitHub
holman
464
140k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
470
Amusing Abliteration
ianozsvald
0
100
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
83
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
Code Reviewing Like a Champion
maltzj
527
40k
ラッコキーワード サービス紹介資料
rakko
1
2.3M
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
170
Information Architects: The Missing Link in Design Systems
soysaucechin
0
780
Transcript
как, зачем, почему
как, зачем, почему
• Frontend MV* framework • MIT • Supported by Microsoft
(Visual Studio 2012) Что за зверь?
Для начала немного истории ... 1995-2000
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
2013
Конец 2000х
C V M
C V M
C V M
C V M DAO DAO
C V M DAO DAO
C V M DAO DAO UNIT TESTABLE
C V M
C V M
C ? M
M C ?
declare and automate! FRP
None
None
None
None
None
None
None
C V M
VM V M
VM V M
VM V M DECLARATIVE
VM V M UNIT TESTABLE DECLARATIVE
None
Observable Properties
Change Listeners
Dependent Observable Properties
Dependent Observable Properties with Dynamic Dependency Resolution
(Including Dynamic Observable Properties!) Declarative Bindings based on Dependent Observable
Properties
None
Observable Properties
Зависимые Свойства
Listeners
Bindings
Dynamic Observable Properties
Integrated Templating and Custom Bindings
None
UNIT TESTABLE
close enough FRP?
NICE CLEAN API
VM V M
plain HTML/CSS + knockout bindings + knockout templates mock data
in ViewModels Web Designer
No need to have HTML at all most of the
time! Backend AJAX mocks Front-end Developer
No need to do templating Simple services (most of the
time front-end driven) Backend Developer
None
None
Knockout Ember Angular Кривые обучения
Система диагнозтики рака • 20k LOC не считая библиотек •
HTML5 (Canvas, SVG) + Hadoop Система для флеботомии • 3k LOC of CoffeeScript • getUserMedia API Используем с начала 2011 года
None
Grammarly IDE for Computational Linguists • 1.5k LOC (5k) •
Node.JS + CommonLisp • CodeMirror bindings • Brunch, Request, OMF Future: • Small bits and pieces (dashboards, admin) • New online grammar checker
Gotchas [грабли]
1. Не пихаем JS в байндинги! 2. ViewModel != Model
3. Event delegation происходит в "глубину" 4. Структурируем VM 5. Не пишем на голом jQuery 6. Ищем плагины 7. Фреймворк != Модульность Грабли
2 подхода к постороению страниц Простыня • Удобна для простых
приложений • Удобна для дизайнера • Весь код на одной странице Кирпичи • Reuse • Хорош для крупных и мультистраничных приложений
Knockout http://knockoutjs.com/ http://learn.knockoutjs.com/ https://github. com/SteveSanderson/knockout/wiki http://stackoverflow.com/tags/knockout.js/info
None
We <3
http://urbodydecompose.deviantart.com/art/Tuxedo-cat-166270845 http://okbrightstar-stock.deviantart.com/art/Sleeping-125954264 http://catstock.deviantart.com/art/Sing-33055858 http://www.flickr.com/photos/nautical/133261261/ http://commons.wikimedia.org/wiki/File:WWW_logo_by_Robert_Cailliau.svg http://www.flickr.com/photos/thefangmonster/490423135/ http://www.flickr.com/photos/1uplego/7138185931/ http://www.flickr.com/photos/jotape_es/384293700/ http://www.flickr.com/photos/bmindful/418000489/ http://www.flickr.com/photos/wadem/2923627819/
http://www.flickr.com/photos/p-r-b/3205896562/ http://www.flickr.com/photos/zitona/4147791422/ http://www.flickr.com/photos/kk/106960641/ http://www.flickr.com/photos/bigberto/2767045155/ https://github.com/voodootikigod/logo.js http://www.w3.org/html/logo/ Credits
http://blog.stephenhorlander.com/2009/08/windows-theme-project-progress-report-3 http://www.flickr.com/photos/41027324@N03/4746972869// http://www.flickr.com/photos/m-i-k-e/6020157534/ http://www.flickr.com/photos/mag3737/4935272859/ http://www.flickr.com/photos/joao_trindade/4362414729/ http://www.flickr.com/photos/didmyself/6159223758/ http://www.flickr.com/photos/doglotion/2328627785/ http://www.flickr.com/photos/artlung/4424880628/ http://www.flickr.com/photos/stuckincustoms/4305080531/ http://denaja.deviantart.com/art/shocked-cat-344011338
http://www.flickr.com/photos/kenjonbro/7324363574/ http://www.flickr.com/photos/somebox/5664263870/ http://wulfila.deviantart.com/art/My-Isis-101844874 http://www.flickr.com/photos/10557450@N04/6632470867/ http://www.flickr.com/photos/geminidustin/275375865/