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
Как писать UI без боли: React + ClojureScript
Search
fwdays
April 29, 2014
Programming
0
3.1k
Как писать UI без боли: React + ClojureScript
Александр Соловьев
fwdays
April 29, 2014
Tweet
Share
More Decks by fwdays
See All by fwdays
Symfony best practices и не только Олег Зинченко
fwdays
0
1.9k
Beyond Testing Михаил Боднарчук
fwdays
0
660
Yii2 - на пути от Alpha до GA. Взгляд с практической стороны Александр Бордун
fwdays
0
1.7k
Laravel 4: простота во всем. Евгений Косинский
fwdays
0
870
Маленькая библиотека для большой компании. Антон Шевчук
fwdays
0
3.7k
Phalcon. Что нового? Александр Торош
fwdays
0
970
Выбираем поисковик умом головы. Андрей Аксенов
fwdays
0
1.2k
Past, Present, and Future: The Evolution of PHP Development. Nate Abele
fwdays
0
670
Функциональный тулчейн Nix
fwdays
1
390
Other Decks in Programming
See All in Programming
TypeScriptコードの漸進的改善 / Progressive Improvement of TypeScript Code
medley
1
440
How to improve maintainability and readability of your automated tests? ( #scrumniigata )
teyamagu
PRO
1
130
Jetpack Composeとデザインシステム
rmakiyama
0
230
教えて!スクラムコーチ品質とスピードのバランスはどうすりゃいいの?
pinboro
0
110
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
17
2.3k
The Cutting Edge Of Versioning (LambdaConf 2024)
chriskrycho
0
250
チーム立ち上げにAWSを活用したらClaudeさんに褒められた話
mkdev10
3
230
Using "modern" Ruby to build a better, faster Homebrew
mikemcquaid
2
260
Enjoy Creative Coding with Ruby (RubyKaigi2024)
chobishiba
0
100
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
1
130
freeeのエンジニアが 就活で出そうな コーディングテストを 解説してみる
freee
1
160
Sheets API使ってみた
toshi0383
2
180
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
92
4.8k
What's new in Ruby 2.0
geeforr
338
31k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
jQuery: Nuts, Bolts and Bling
dougneiner
60
7.2k
Web development in the modern age
philhawksworth
203
10k
Into the Great Unknown - MozCon
thekraken
15
1.1k
What the flash - Photography Introduction
edds
64
11k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
Six Lessons from altMBA
skipperchong
22
3k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
Transcript
Alexander Solovyov, How Far Games Как писать UI без боли
НИКАК А чего вы ожидали? 2 / 16
За увеличение связности За уменьшение связанности За простоту кода За
гибкость мозга За светлое будущее Надо бороться 3 / 16
React за связность и против связанности ClojureScript за простоту кода
и тренировку мозга Человек за светлое будущее И модель данных тоже хочет о себе заявить Кто будет бороться Тëмное пиво 4 / 16
Полный перерендер, компоненты, етц FRP для бедных Спасает от событий
И от случайной сложности И от тормозов Не без вопросов React 5 / 16
Темплейты вместе с кодом Проблемы React'a 6 / 16
Захватывает свой DOM-элемент полностью Нас это не беспокоит Top-to-bottom часто
не хватает А это беспокоит! Проблемы React'a Темплейты вместе с кодом 7 / 16
POJO Backbone.Model Om, Cortex Полноценная БД? Модель данных 8 /
16
Скорость Соединения данных (joins) Язык запросов Ну и всякое прочее
Требования к БД 9 / 16
DatomicScript {:find [?name ?tour-name] :in [$ ?id] :where [[?id :name
?name] [?id :tournament-id ?tour-id] [?tour-id :name ?tour-name]]} 10 / 16
Представление - React БД - выдумали Человек - есть Интерфейс
между ними? Итак 11 / 16
Простой Продуманный Семантически стройный ClojureScript 12 / 16
Я не писал на этом за деньги :( Но использовал
в команде :) Будет ли это всë работать вместе? 13 / 16
4 человека CLJS 877 loc, Clojure 515 loc, общего 111
loc React 430kb, WarMagnet 1.2mb Min: React 57kb (21kb gzip), WarMagnet 300kb (68kb gzip) Для сравнения, jQuery - 33kb gzip WarMagnet 14 / 16
Очень плотный код paredit сильно помогает К неизменяемость данных надо
привыкать Обратно на JS - больно и обидно :( Ну и что, можно? 15 / 16
http://facebook.github.io/react/ https://github.com/swannodette/om/ https://github.com/levand/quiescent/ https://github.com/mquan/cortex/ http://www.emacswiki.org/emacs/ParEdit Ссылки 16 / 16