Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Рецепт приготовления beta.2gis.ru
Search
HappyDev'13
December 08, 2013
Programming
210
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Рецепт приготовления beta.2gis.ru
Илья Таратухин
HappyDev'13
December 08, 2013
More Decks by HappyDev'13
See All by HappyDev'13
Вводный доклад о процессах и ролях, требованиях и визуализации
happydev
0
220
Особенности разработки финансовых проектов
happydev
0
190
Domain Driven Design. Модель вместо требований
happydev
0
450
К черту менеджерские карго культы! Дайте нормальное ТЗ
happydev
0
230
Эволюция больших проектов. Опыт API Яндекс.Карт
happydev
1
460
Мастер класс «Управленческие поединки»
happydev
0
220
Лучшая client-side архитектура
happydev
1
290
Выбор NoSQL базы данных для вашего проекта: "Не в свои сани не садись"
happydev
0
590
Вводный доклад про SQL, NoSQL и других
happydev
0
300
Other Decks in Programming
See All in Programming
Jetpack Compose Mechanisms
skydoves
3
820
AWS CDKのカスタムリソースでContinuum(旧Security Agent)を実装した話 | Implementing Continuum (formerly Security Agent) via AWS CDK Custom Resource
akihisaikeda
2
150
Domain-Driven Transformation
hschwentner
2
2.3k
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
610
外から家のPCの電源入れたい!をPHPで解決する
kawashimo0
1
140
Event is what happens
moro
2
850
golang-bob.pdf
iwatsukayura
0
130
AIで開発が速くなった先で、開発チームは何を目指すか
shihochan
0
1.5k
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
15
8.5k
ジョジョの世界をXRで再現する
mofurune
0
170
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
28
33k
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
320
Featured
See All Featured
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.4k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.4k
How STYLIGHT went responsive
nonsquared
100
6.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.5k
Un-Boring Meetings
codingconduct
0
460
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Bash Introduction
62gerente
615
220k
エンジニアに許された特別な時間の終わり
watany
109
250k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
220
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
Transcript
Рецепт приготовления beta.2gis.ru Илья Таратухин
[email protected]
@darkilfa
О чем доклад 1. Почему нам не подошел Knockout 2.
Единый код на клиенте и сервере 3. History API 4. Модули 5. Организация frontend разработки 6. Сборка приложения, Grunt 7. Выкатываем на бой 2
None
2gis.ru 1. Работает на клиенте 2. Knockout 3. Приложение построено
на биндингах 4
Проблемы 2gis.ru 1. Запустили архитектуру 2. Долго инициализируемся на клиенте
3. Отдаем SEOверсию через PHPкостыли 5
None
None
Javascript
Инструментарий • Handlebars • Jquery • Underscore • Собственный фреймворк
• Grunt • Jenkins + Ansible 9
История
History API • pushState • replaceState • statechange 11
Модули
None
None
None
None
Модули
События • notify('event', params) • broadcast('moduleType:event', params) 18
Тупой шаблонизатор
А как быть с версткой?
None
Дегустируем приложение
Дегустируем приложение • Unitтесты • Domтесты • jshint, jslint •
Прочие проверки 23
None
Сервируем приложение
Grunt
Выливаем на бой
Выливаем на бой 1. Собираем в Jenkins 2. Выливаем на
стейджинг 3. Выливаем на бой Ansible 28
Илья Таратухин
[email protected]
@darkilfa 29