97
Николай Птущук Евгений Батовский Я.Субботник, Киев, 5 мая 2012 года Современный станок верстальщика

Евгений Батовский, Николай Птущук "Современный станок верстальщика"

  • Upload
    yandex

  • View
    1.923

  • Download
    7

Embed Size (px)

DESCRIPTION

Рассказ о том, что представляет собой наш «станок» верстальщика сегодня. Рассказывается с примерами, какие браузеры поддерживаем, как производим кроссбраузерное тестирование и какие инструменты используем, готовя проект к выходу в свет.

Citation preview

Page 1: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Николай ПтущукЕвгений Батовский

Я.Субботник, Киев, 5 мая 2012 года

Современный станок верстальщика

Page 2: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

2

Page 3: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

3

Page 4: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

4

Page 5: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

5

Page 6: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Наш современный станок

6

Page 7: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Наш современный станок

— Аналитика пользователей

6

Page 8: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Наш современный станок

— Аналитика пользователей

— Зоопарк браузеров

6

Page 9: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Наш современный станок

— Аналитика пользователей

— Зоопарк браузеров

— Оптимизация

6

Page 10: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Наш современный станок

— Аналитика пользователей

— Зоопарк браузеров

— Оптимизация

— Сопровождение

6

Page 11: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Аналитика пользователей

Page 12: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Firefox

Opera

Chrome

IE

Safari

20%

27%

30%

16%1%

8

Page 13: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

9

Firefox Chrome IE Opera Safari12 – 1,7% 18 – 12,6% 9 – 9,7% 11.6 – 14,3% 5 – 0,7%

11 – 13,9% 17 – 5,4% 8 – 12,9% 11.5 – 1,4%

10 – 2,8% 16 – 0,9% 7 – 3% 11.1 – 0,6%

9 – 1,8% 15 – 0,6% 6 – 1,7%

8 – 1,3%

7,6,5,4 – 0,7%

3.6 – 4,3%

3.5 – 0,9% Итого 23 браузера

> 0,5%

Page 14: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

10

Page 15: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

11

Page 16: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Graceful degradation

12

Page 17: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Graceful degradation

— Доступные контент и функциональность

12

Page 18: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Graceful degradation

— Доступные контент и функциональность

— Браузерозависимые стили

12

Page 19: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

13

Page 20: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Зоопарк браузеров

Page 21: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

15

БРАУЗЕРЫ

Ну почему вас так много?

Page 22: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Как проверяем верстку

16

Page 23: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Как проверяем верстку

1 верстальщик = 7 компьютеров

16

Page 24: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Как проверяем верстку

1 верстальщик = 7 компьютеров

30 верстальщиков = 210 компьютеров

16

Page 25: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

17

Это почти правда

Page 26: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Кто они — наши пользователи?

18

Page 27: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

19

Page 28: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

19

Page 29: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

19

Page 30: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

забывают обновлять браузер

20

Page 31: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

устанавливают альфа и бета версии

21

Page 32: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

свой набор медиа плагинов, «баров»

22

Page 33: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

собственные сборки браузера

23

Page 34: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

24

Page 35: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

25

Разработчику нужно быть ближе к пользователю

Page 36: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

26

Разработчик интерфейсов?ORLY?Установи JAWS, какой-нибудь сниффер http/https, Fiddler к примеру, прокси сервер туда же для отладки, privoxy и OpenVPN туннель еще нужен...

Page 37: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

27

Разработчик интерфейсов?ORLY?

— Протестировать страницы для печати

— Проверить адаптивность страниц

— Настроить браузеры «под себя»

Page 38: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

28

Page 39: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

29

Page 40: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Образы виртуальных машин MS VPC

clck.ru/10L4i

30

Page 41: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

MS VPC + VirtualBox = ievms

clck.ru/10L6k

31

Page 42: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

MS Windows XP IE6

MS Windows Vista IE7

MS Windows 7 IE8

MS Windows 7 IE9

32

Page 43: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Универсальные комбайны

33

IETesterMultiply IEIECollectionAdobe BrowserLab

Page 44: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

34

WineVMWareThinApp

Виртуализация приложений

Page 45: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

34

WineVMWareThinApp

Novell ZENWorks Application Virtualisation

Виртуализация приложений

Page 46: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

35

Выбор платформы для виртуализации ОС

Page 47: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

35

Выбор платформы для виртуализации ОС

Page 48: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

35

Выбор платформы для виртуализации ОС

Page 49: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

35

Выбор платформы для виртуализации ОС

Page 50: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

2048 Mб памяти15 Гб на диске

36

Page 51: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

MS Windows Volume Licence 7 Pro 32-bit

ZENworks Application Virtualization User License + 1-Year Standard Maintenance

37

Page 52: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

IE9

IE8

IE7

IE6

38

+ Developer ToolBar

Page 54: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

ftp.opera.com/pub/

Opera/11.01/opera.exe

+ DragonFly

40

Page 57: Евгений Батовский, Николай Птущук "Современный станок верстальщика"
Page 58: Евгений Батовский, Николай Птущук "Современный станок верстальщика"
Page 59: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Оптимизация

Page 60: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

46

Page 61: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

47

Page 62: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

48

Page 63: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

49

Каждый день консоль!

ssh, tcpdump, find, sed, awk, svn/git/hg, ack, shell script, make, node, npm...

Page 64: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

50

UglifyJS

github.com/mishoo/UglifyJS

Page 65: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

51

как работает uglifyjs

> uglifyjs -o blockA.js blockB.js js/script.js

Page 66: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

52

reset.css

body { ... }

ol, ul { ... }

table { ... }

Page 67: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

53

layout.css

.wrapper { ... }

.column-left { ... }

.column-right { ... }

Page 68: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

54

style.css

.header { ... }

.content { ... }

.footer { ... }

Page 69: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

55

подключение стилей

<link rel="stylesheet" href="reset.css">

<link rel="stylesheet" href="layout.css">

<link rel="stylesheet" href="style.css">

Page 70: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

56

style.css

@import "reset.css";

@import "layout.css";

.header { ... }

.content { ... }

.footer { ... }

Page 71: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

57

borschik

github.com/veged/borschik

Page 72: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

58

как работает borschik

> borschik -t css -i style.css -o main.css

Page 73: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

59

main.css

body { ... }

ol, ul { ... }

table { ... }

.wrapper { ... }

.column-left { ... }

.column-right { ... }

.header { ... }

.content { ... }

.footer { ... }

Page 74: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

60

style.css

.block{

margin: 20px;color: #f00;margin-bottom: 25px;font-size: 0.6em;

}

Page 75: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

61

csso

github.com/css/csso

Page 76: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

62

style.css

.block{

margin: 20px;color: #f00;margin-bottom: 25px;font-size: 0.6em;

}

Page 77: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

63

как работает csso

> csso -i style.css -o main.css

Page 78: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

64

main.css

.block{color:red;margin:20px 20px 25px;font-size:.6em}

Page 79: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

65

как работает csso

margin: 20px;margin-bottom: 25px;

margin: 20px 20px 25px;

Page 80: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

66

как работает csso

color: #f00;

color: red;

Page 81: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

67

папка с картинками

images/logo.png

css/style.css

Page 82: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

68

style.css

.logo{

background:url(/images/logo.png);

}

Page 83: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

69

перенос картинок

images/

static/img/

Page 84: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

70

cssrb

github.com/afelix/cssrb

Page 85: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

71

.cssrb.js

exports.config = {fromBase: '/Users/user/site/images/',toBase: '/Users/user/site/static/img/',patterns: {

'^/?images': '/static/img/'}

}

Page 86: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

72

как работает cssrb

> cssrb -c .cssrb.js style.css main.css -mv

Page 87: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

73

style.css

.logo{

background:url(/static/img/logo.png);

}

Page 88: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

74

оптимизация картинок

imagemagickpngoutoptipngpngrewriteexiftool

advpngjpegtrangifsiclepngnqdefluff

Page 89: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

75

imgo

github.com/imgo/imgo

Page 90: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

76

как работает imgo

> imgo images/

Page 91: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

77

как работает imgo

Result:

Processed: 13 Mles of 13, total size 1520795 bytes

ProMt: 146579 bytes (9%)

Total time: 00:00:51 (HH:MM:SS)

Page 92: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

Дальнейшая поддержка кода

Page 94: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

80

BEM-Tools

Page 95: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

80

BEM-Tools

github.com/bem/bem-tools

Page 96: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

80

BEM-Tools

github.com/bem/bem-tools

> bem server

Page 97: Евгений Батовский, Николай Птущук "Современный станок верстальщика"

[email protected]

mcslayer

Евгений Батовский

[email protected]

batovsky

Вопросы?

Николай Птущук