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
Затащи меня в ад
Search
Vitaly Slobodin
November 18, 2017
Programming
55
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Затащи меня в ад
Vitaly Slobodin
November 18, 2017
More Decks by Vitaly Slobodin
See All by Vitaly Slobodin
Что нам новый .NET несет?
vitallium
0
99
ORMs: You're doing it wrong (continued)
vitallium
0
77
ORMs: You’re Doing it wrong
vitallium
0
140
ASP.NET MVC 5
vitallium
0
290
Other Decks in Programming
See All in Programming
GKE で Pod の見方を変えたら、スケールアウト時の挙動を真に捉えられた話
stkk
0
120
[GoCon2026] When Goroutines Are Not Enough: Runtime Locality in High-Throughput Go
takehaya
6
2.3k
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
1.9k
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
280
JPUG勉強会 OSSデータベースの内部構造を理解しよう(第2回)
oga5
0
230
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
470
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
1
1k
Jetpack Compose メカニズム
skydoves
0
430
SREの越境 / SRE Collaboration
y0hgi
1
200
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
1
150
setup-vp GitLab対応の裏側
naokihaba
0
100
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
270
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
410
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
410
Everyday Curiosity
cassininazir
0
320
Agile that works and the tools we love
rasmusluckow
331
22k
Site-Speed That Sticks
csswizardry
13
1.5k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
520
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Transcript
9 кругов ада разработки Front-End Виталий Слободин @vitalliumm RND.JS 9
апреля, 2016 г.
None
1. Язык программирования Минздрав предупреждает: весь материал воспринимается лучше под
музыку W.A.S.P. – Babylon’s Burning
1. Язык программирования • JavaScript • CoffeeScript • TypeScript •
Dart • ClojureScript • Elm • asm.js
2. JavaScript!
2. JavaScript! function returnObj() { return { x: 42 };
} console.log(JSON.stringify(returnObj()));
2. JavaScript! function returnObj() { return { x: 42 };
} console.log(JSON.stringify(returnObj())); => // {"x":42}
2. JavaScript! function returnObj() { return { x: 42 };
} console.log(JSON.stringify(returnObj()));
2. JavaScript! function returnObj() { return { x: 42 };
} console.log(JSON.stringify(returnObj())); => // undefined
2. JavaScript!
2. ES5 или ES6? ES6: • Исправить проблемы ES5 •
Обратная совместимость • Современный синтаксис • Большие приложения • Расширение стандартной библиотеки ES5: • Проблема контекста • Области видимости переменных и функций • Функции обратного вызова
3.
4. Автоматизация • Grunt • Gulp • Make файлы •
Webpack • Browserify • Broccoli
5. Фреймворк? Библиотека? • AngularJS • Backbone • React •
EmberJS • Aurelia • ExtJS • Kendo UI • Knockout • Cappuccino • MooTools • Polymer • jQuery + jQuery UI • Dojo • Agility.js • … • ТЫСЯЧИ ИХ!
5. ТЫСЯЧИ ИХ!
6. Тестирование
6. Что выбрать? Как тестировать? • Фреймворк (библиотека) • Покрытие
кода тестами • Selenium • CI сервер • чик-чик и в продакшен!
7. jQuery http://youmightnotneedjquery.com/
8. Node.js npm
8. Проблема Azer Koçulu
Мы забыли как программировать http://www.haneycodes.net/npm-left-pad-have-we-forgotten-how-to-program/ module.exports = leftpad; function leftpad
(str, len, ch) { str = String(str); var i = -1; if (!ch && ch !== 0) ch = ' '; len = len - str.length; while (++i < len) { str = ch + str; } return str; }
Мы забыли как программировать http://www.haneycodes.net/npm-left-pad-have-we-forgotten-how-to-program/ module.exports = leftpad; function leftpad
(str, len, ch) { str = String(str); var i = -1; if (!ch && ch !== 0) ch = ' '; len = len - str.length; while (++i < len) { str = ch + str; } return str; } return toString.call(arr) == '[object Array]'; • Более 20,299,287 загрузок в прошлом месяце 70 зависимых пакетов • Всего 1 строчка кода
None
9. JavaScript везде! http://stackoverflow.com/research/developer-survey-2015
Хватит писать приложения на Electron!
Выдохнули!
Спасибо! Время Q&A! Где и как можно меня найти? •
https://vk.com/vitallium • @vitalliumm • Github: https://github.com/vitallium • Slack: @vitallium •
[email protected]
Ищем Ruby on Rails разработчика elonsoft.ru