SlideShare a Scribd company logo
Тимур Лукин
Архитектура
программного
обеспечения
Что такое архитектура ПО?
4
Что такое архитектура ПО?
Наиболее абстрактное описание системы.
5
Что такое архитектура ПО?
Наиболее абстрактное описание системы.
То, что будет сложно изменить в дальнейшем.
6
Что такое архитектура ПО?
Наиболее абстрактное описание системы.
То, что будет сложно изменить в дальнейшем.
То, что кажется архитектору важным.
7
Что такое архитектура ПО?
Наиболее абстрактное описание системы.
То, что будет сложно изменить в дальнейшем.
То, что кажется архитектору важным.
Конкретный набор документов.
Описание архитектуры
9
Описание архитектуры
Компоненты системы и их взаимодействие.
10
Описание архитектуры
Директ
Партнерский
Интерфейс
База Движок
Поиск
Компоненты системы и их взаимодействие.
РСЯ
11
Описание архитектуры
Самые важные классы / функции.
Компоненты системы и их взаимодействие.
12
Описание архитектуры
Самые важные классы / функции.
Компоненты системы и их взаимодействие.
class Banner (object):
phrases = []
def show (self, condition):
'''Returns banner representation'''
pass
def add_phrase (self, phrases):
'''Adds Phrase object to phrases list'''
pass
class Phrase (object):
text = ''
13
Описание архитектуры
Самые важные классы / функции.
Компоненты системы и их взаимодействие.
Организация данных.
14
Описание архитектуры
Самые важные классы / функции.
Компоненты системы и их взаимодействие.
Организация данных.
Структура пользовательского интерфейса.
15
Описание архитектуры
Самые важные классы / функции.
Компоненты системы и их взаимодействие.
Организация данных.
Структура пользовательского интерфейса.
Обработка исключительных ситуаций и сбоев.
16
Описание архитектуры
Самые важные классы / функции.
Компоненты системы и их взаимодействие.
Организация данных.
Структура пользовательского интерфейса.
Обработка исключительных ситуаций и сбоев.
Безопасность.
17
Описание архитектуры
Самые важные классы / функции.
Компоненты системы и их взаимодействие.
Организация данных.
Структура пользовательского интерфейса.
Обработка исключительных ситуаций и сбоев.
Безопасность.
Использование технологий и стороннего ПО.
18
Описание архитектуры
Самые важные классы / функции.
Компоненты системы и их взаимодействие.
Организация данных.
Структура пользовательского интерфейса.
Обработка исключительных ситуаций и сбоев.
Безопасность.
Использование технологий и стороннего ПО.
Использование ресурсов.
19
Описание архитектуры
Самые важные классы / функции.
Компоненты системы и их взаимодействие.
Организация данных.
Структура пользовательского интерфейса.
Обработка исключительных ситуаций и сбоев.
Безопасность.
Использование технологий и стороннего ПО.
Использование ресурсов.
Способы развития системы.
20
Описание архитектуры
Самые важные классы / функции.
Компоненты системы и их взаимодействие.
Организация данных.
Структура пользовательского интерфейса.
Обработка исключительных ситуаций и сбоев.
Безопасность.
Использование технологий и стороннего ПО.
Использование ресурсов.
Способы развития системы.
Способы тестирования системы.
21
22
23
Когда нужно проектирование?
25
26
Что нужно архитектору
Что нужно архитектору
Опыт
Что нужно архитектору
Умение работать с абстракциями.
Опыт
Что нужно архитектору
Умение работать с абстракциями.
Знание типовых решений.
Опыт
Опыт
Опыт
Умение работать с абстракциями
Умение работать с абстракциями
Х. Абельсон, Д. Сассман
“Структура и интерпретация
компьютерных программ”
SICP
Умение работать с абстракциями
Х. Абельсон, Д. Сассман
“Структура и интерпретация
компьютерных программ”
SICP
Типовые решения
Типовые решения
Архитектурные шаблоны.
Типовые решения
Архитектурные шаблоны.
Низкоуровневые шаблоны.
Типовые решения
Архитектурные шаблоны.
Низкоуровневые шаблоны.
Алгоритмы.
Типовые решения
Алгоритмы.
Идиомы языка.
Низкоуровневые шаблоны.
Архитектурные шаблоны.
Архитектурные шаблоны
Концепция слоев
Концепция слоев
Концепция слоев
Представление (Presentation).
Концепция слоев
Представление (Presentation).
Домен (Domain, бизнес-логика).
Концепция слоев
Представление (Presentation).
Домен (Domain, бизнес-логика).
Источник данных (Data Source).
Шаблоны домена
Шаблоны домена
Сценарий транзакции (Transaction Script).
Модель предметной области (Domain Model).
Слой служб (Service Layer).
49
Сценарий транзакции (Transaction Script)
50
Слой представления (Presentation)
Слой домена (Domain)
Слой источника данных (Data Source)
Action procedure Action procedure Action procedure
Action procedure Action procedure
Aux. function Aux. function
Сценарий транзакции (Transaction Script)
51
Плюсы:
• прост в реализации;
• интуитивно понятен.
Сценарий транзакции (Transaction Script)
52
Плюсы:
• прост в реализации;
• интуитивно понятен.
Минусы:
• тяжело описывать сложную логику;
• тяжело следить за дублированием кода;
• плохая изоляция представления от источника.
Сценарий транзакции (Transaction Script)
53
Модель предметной области (Domain Model)
54
Слой представления (Presentation)
Слой домена (Domain)
Слой источника данных (Data Source)
Domain Object
Domain Object
Domain Object
Domain Object
Domain Object
Модель предметной области (Domain Model)
55
Плюсы:
• хорошо описывает сложную бизнес-логику;
• обеспечивает хорошую изоляцию.
Модель предметной области (Domain Model)
56
Плюсы:
• хорошо описывает сложную бизнес-логику;
• обеспечивает хорошую изоляцию.
Минусы:
• сложна в реализации;
• возможны проблемы с эффективностью.
Модель предметной области (Domain Model)
57
Слой служб (Service Layer)
58
Слой представления (Presentation)
Слой домена (Domain)
Слой источника данных (Data Source)
Action procedure Action procedure Action procedure
Domain object Domain object
Domain object
Domain object
Слой служб (Service Layer)
59
Плюсы:
• хорошо описывает сложную бизнес-логику;
• хорошо реализует сценарии использования;
• обеспечивает отличную изоляцию.
Слой служб (Service Layer)
60
Плюсы:
• хорошо описывает сложную бизнес-логику;
• хорошо реализует сценарии использования;
• обеспечивает отличную изоляцию.
Минусы:
• сложен в реализации;
• возможны проблемы с эффективностью.
Слой служб (Service Layer)
Шаблоны источника данных
Шаблоны источника данных
Шлюз таблицы данных (Table Data Gateway).
Шлюз записи данных (Row Data Gateway).
Преобразователь данных (Data Mapper).
63
Шлюз таблицы данных (Table Data Gateway)
64
Слой домена (Domain)
Слой источника данных (Data Source)
Table objectTable object Table object
Источник данных
Шлюз таблицы данных (Table Data Gateway)
65
Подходящие решения домена:
• сценарий транзакции;
• модель предметной области.
Шлюз таблицы данных (Table Data Gateway)
66
Шлюз записи данных (Row Data Gateway)
67
Слой домена (Domain)
Слой источника данных (Data Source)
Row ObjectRow Object Row Object
Источник данных
Шлюз записи данных (Row Data Gateway)
68
Подходящие решения домена:
• сценарий транзакции;
• модель предметной области (Active Record);
• слой служб.
Шлюз записи данных (Row Data Gateway)
69
Преобразователь данных (Data Mapper)
70
Слой домена (Domain)
Слой источника данных (Data Source)
Источник данных
Data Mapper
Преобразователь данных (Data Mapper)
71
Подходящие решения домена:
• модель предметной области;
• слой служб (с моделью предметной области).
Преобразователь данных (Data Mapper)
Шаблоны представления
Шаблоны представления
Модель — Представление — Контроллер
(Model — View — Controller).
74
Модель — Представление — Контроллер (MVC)
Слой представления (Presentation)
Слой домена (Domain)
Представление (View)
Контроллер (Controller)
Модель (Model)
Контроллеры
Контроллеры
Контроллер страниц (Page Controller)
Контроллер запросов (Front Controller)
77
Контроллер страниц (Page Controller)
78
Контроллер страниц (Page Controller)
Плюсы:
• простота;
• хорошая изоляция.
79
Контроллер страниц (Page Controller)
Плюсы:
• простота;
• хорошая изоляция.
Минусы:
• плохая гибкость;
• быстрый рост числа страниц.
80
Контроллер запросов (Front Controller)
81
Контроллер запросов (Front Controller)
Плюсы:
• высокая гибкость.
82
Контроллер запросов (Front Controller)
Плюсы:
• высокая гибкость.
Минусы:
• плохая изоляция;
• сложность реализации.
83
Контроллер запросов (Front Controller)
•urls.py
•views.py
Шаблоны представления
Шаблоны представления
Представление по шаблону (Template View).
Представление с преобразованием
(Transform View)
86
Представление по шаблону (Template View)
87
Плюсы:
• гибкость;
• наглядность написания.
Представление по шаблону (Template View)
88
Плюсы:
• гибкость;
• наглядность написания.
Минусы:
• доступность скриптлетов (scriptlets) и,
следовательно, опасность спагетти-кода;
• возможны побочные эффекты;
• сложность верстки.
Представление по шаблону (Template View)
89
Представление с преобразованием
(Transform View)
90
Представление с преобразованием
(Transform View)
XML + XSLT
91
Плюсы:
• гибкость;
• отличная изоляция представления;
• не дублируется код.
Представление с преобразованием
(Transform View)
92
Плюсы:
• гибкость;
• отличная изоляция представления;
• не дублируется код.
Минусы:
• сложность верстки;
• еще одна технология для изучения.
Представление с преобразованием
(Transform View)
93
Архитектурные шаблоны
Мартин Фаулер
“Архитектура корпоративных программных
приложений”
Алгоритмы
95
Алгоритмы
96
Алгоритмы
Д. Кнут "Искусство программирования"
97
Алгоритмы
Д. Кнут "Искусство программирования"
Н. Вирт "Алгоритмы и структуры данных"
98
Алгоритмы
Д. Кнут "Искусство программирования"
Н. Вирт "Алгоритмы и структуры данных"
Т. Кормен "Алгоритмы. построение и анализ"
99
Алгоритмы
Д. Кнут "Искусство программирования"
Н. Вирт "Алгоритмы и структуры данных"
Т. Кормен "Алгоритмы. построение и анализ"
А. Шень "Программирование. Теоремы и задачи"
Шаблоны проектирования
101
Шаблоны проектирования ООП
102
Шаблоны проектирования ООП
Э. Гамма , Р. Хелм, Р. Джонсон, Дж. Влиссидс
"Приёмы объектно-ориентированного
проектирования. Паттерны проектирования"
“Банда четырех”
103
Шаблоны проектирования ООПclass Singleton (object):
_instance = None
def __new__ (cls, *args, **kwargs):
if cls._instance is None:
cls._instance = super(cls.__class__,
cls).__new__(cls, *args, **kwargs)
return cls._instance
else:
return cls._instance
>>> class A (Singleton):
... pass
...
>>> a, b = A(), A()
>>> a is b
True
104
Шаблоны проектирования ФП
105
reduce(lambda res, x: res + x,
map(lambda x: x * x,
filter(lambda x: x % 2,
range(1, 101))))
Шаблоны проектирования ФП
Вывод
Тимур Лукин
timlukin@yandex-team.ru
Спасибо

More Related Content

Viewers also liked

Mystery Shopping For Competitive Analysis Slidecast (In Russian)
Mystery Shopping For Competitive Analysis Slidecast (In Russian)Mystery Shopping For Competitive Analysis Slidecast (In Russian)
Mystery Shopping For Competitive Analysis Slidecast (In Russian)Evgeniy Simakhin
 
03 Архитектура информационных систем. Принципы проектирования архитектуры
03 Архитектура информационных систем. Принципы проектирования архитектуры03 Архитектура информационных систем. Принципы проектирования архитектуры
03 Архитектура информационных систем. Принципы проектирования архитектурыEdward Galiaskarov
 
Mvc, mvp and mvvm: A comparison of architectural patterns
Mvc, mvp and mvvm: A comparison of architectural patternsMvc, mvp and mvvm: A comparison of architectural patterns
Mvc, mvp and mvvm: A comparison of architectural patternsIvan Dyachenko
 
Семинары и тренинги по делопроизводству, документообороту и архиву предприятия
Семинары и тренинги по делопроизводству, документообороту и архиву предприятияСеминары и тренинги по делопроизводству, документообороту и архиву предприятия
Семинары и тренинги по делопроизводству, документообороту и архиву предприятияProfi-Cariera
 
креативное мышление
креативное мышлениекреативное мышление
креативное мышлениеJaneKozmina
 
Cовременные командные принципы
Cовременные командные принципыCовременные командные принципы
Cовременные командные принципыgaperton
 
оценка трудозатрат
оценка трудозатратоценка трудозатрат
оценка трудозатратgaperton
 
PMBOK Extension for Software Projects (in Russian)
PMBOK Extension for Software Projects (in Russian)PMBOK Extension for Software Projects (in Russian)
PMBOK Extension for Software Projects (in Russian)IAMCP MENTORING
 
Презентация семинаров по деловой переписке с клиентами
Презентация семинаров по деловой переписке с клиентамиПрезентация семинаров по деловой переписке с клиентами
Презентация семинаров по деловой переписке с клиентамиProfi-Cariera
 
Корпоративное обучение от "Профи-Карьера"
Корпоративное обучение от "Профи-Карьера"Корпоративное обучение от "Профи-Карьера"
Корпоративное обучение от "Профи-Карьера"Profi-Cariera
 
Профессиональная разработка требований. Карта онлайн курса
Профессиональная разработка требований. Карта онлайн курсаПрофессиональная разработка требований. Карта онлайн курса
Профессиональная разработка требований. Карта онлайн курсаYulia Madorskaya
 
De Rol van de Registrar in het Museum
De Rol van de Registrar in het MuseumDe Rol van de Registrar in het Museum
De Rol van de Registrar in het Museumguestff8cab
 
Промышленная разработка ПО. Лекция 3. Особенности работы программиста. Часть...
Промышленная разработка ПО. Лекция 3. Особенности работы программиста.  Часть...Промышленная разработка ПО. Лекция 3. Особенности работы программиста.  Часть...
Промышленная разработка ПО. Лекция 3. Особенности работы программиста. Часть...Mikhail Payson
 
Плохой против хорошего консультанта
Плохой против хорошего консультантаПлохой против хорошего консультанта
Плохой против хорошего консультантаJaneKozmina
 
Системное мышление
Системное мышлениеСистемное мышление
Системное мышлениеJaneKozmina
 
Требования к по
Требования к поТребования к по
Требования к поJaneKozmina
 
Нотации оформления требований
Нотации оформления требованийНотации оформления требований
Нотации оформления требованийJaneKozmina
 

Viewers also liked (20)

Sep reqm-lec1
Sep reqm-lec1Sep reqm-lec1
Sep reqm-lec1
 
Mystery Shopping For Competitive Analysis Slidecast (In Russian)
Mystery Shopping For Competitive Analysis Slidecast (In Russian)Mystery Shopping For Competitive Analysis Slidecast (In Russian)
Mystery Shopping For Competitive Analysis Slidecast (In Russian)
 
03 Архитектура информационных систем. Принципы проектирования архитектуры
03 Архитектура информационных систем. Принципы проектирования архитектуры03 Архитектура информационных систем. Принципы проектирования архитектуры
03 Архитектура информационных систем. Принципы проектирования архитектуры
 
Mvc, mvp and mvvm: A comparison of architectural patterns
Mvc, mvp and mvvm: A comparison of architectural patternsMvc, mvp and mvvm: A comparison of architectural patterns
Mvc, mvp and mvvm: A comparison of architectural patterns
 
Семинары и тренинги по делопроизводству, документообороту и архиву предприятия
Семинары и тренинги по делопроизводству, документообороту и архиву предприятияСеминары и тренинги по делопроизводству, документообороту и архиву предприятия
Семинары и тренинги по делопроизводству, документообороту и архиву предприятия
 
креативное мышление
креативное мышлениекреативное мышление
креативное мышление
 
Cовременные командные принципы
Cовременные командные принципыCовременные командные принципы
Cовременные командные принципы
 
оценка трудозатрат
оценка трудозатратоценка трудозатрат
оценка трудозатрат
 
PMBOK Extension for Software Projects (in Russian)
PMBOK Extension for Software Projects (in Russian)PMBOK Extension for Software Projects (in Russian)
PMBOK Extension for Software Projects (in Russian)
 
Презентация семинаров по деловой переписке с клиентами
Презентация семинаров по деловой переписке с клиентамиПрезентация семинаров по деловой переписке с клиентами
Презентация семинаров по деловой переписке с клиентами
 
Корпоративное обучение от "Профи-Карьера"
Корпоративное обучение от "Профи-Карьера"Корпоративное обучение от "Профи-Карьера"
Корпоративное обучение от "Профи-Карьера"
 
Профессиональная разработка требований. Карта онлайн курса
Профессиональная разработка требований. Карта онлайн курсаПрофессиональная разработка требований. Карта онлайн курса
Профессиональная разработка требований. Карта онлайн курса
 
De Rol van de Registrar in het Museum
De Rol van de Registrar in het MuseumDe Rol van de Registrar in het Museum
De Rol van de Registrar in het Museum
 
CDI and Weld
CDI and WeldCDI and Weld
CDI and Weld
 
Промышленная разработка ПО. Лекция 3. Особенности работы программиста. Часть...
Промышленная разработка ПО. Лекция 3. Особенности работы программиста.  Часть...Промышленная разработка ПО. Лекция 3. Особенности работы программиста.  Часть...
Промышленная разработка ПО. Лекция 3. Особенности работы программиста. Часть...
 
Yyyyyy yyyy 1-8
Yyyyyy yyyy 1-8Yyyyyy yyyy 1-8
Yyyyyy yyyy 1-8
 
Плохой против хорошего консультанта
Плохой против хорошего консультантаПлохой против хорошего консультанта
Плохой против хорошего консультанта
 
Системное мышление
Системное мышлениеСистемное мышление
Системное мышление
 
Требования к по
Требования к поТребования к по
Требования к по
 
Нотации оформления требований
Нотации оформления требованийНотации оформления требований
Нотации оформления требований
 

Similar to Тимур Лукин - Архитектура и проектирование ПО

Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUAREТехники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARESQALab
 
Cradle. Знакомство с Demo проектом
Cradle. Знакомство с Demo проектомCradle. Знакомство с Demo проектом
Cradle. Знакомство с Demo проектомYulia Madorskaya
 
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовРеализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовSQALab
 
Open Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesOpen Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesAliaksandr Ikhelis
 
Бизнес и системный анализ весна 2013 лекция 8
Бизнес и системный анализ весна 2013 лекция 8Бизнес и системный анализ весна 2013 лекция 8
Бизнес и системный анализ весна 2013 лекция 8Technopark
 
Потоковая обработка данных и Микросервисная архитектура
Потоковая обработка данных и Микросервисная архитектураПотоковая обработка данных и Микросервисная архитектура
Потоковая обработка данных и Микросервисная архитектураVyacheslav Benedichuk
 
Oracle Application Management and Testing Suites for Siebel CRM
Oracle Application Management and Testing Suites for Siebel CRMOracle Application Management and Testing Suites for Siebel CRM
Oracle Application Management and Testing Suites for Siebel CRMАлексей Распопов
 
физическая структура хранения артемов Ready
физическая структура хранения артемов Readyфизическая структура хранения артемов Ready
физическая структура хранения артемов Readyrit2010
 
06 Архитектура информационных систем. Паттерны и фреймворки
06 Архитектура информационных систем. Паттерны и фреймворки06 Архитектура информационных систем. Паттерны и фреймворки
06 Архитектура информационных систем. Паттерны и фреймворкиEdward Galiaskarov
 
14-02-26 DBA 101_ как найти и устранить причины замедления работы БД
14-02-26 DBA 101_ как найти и устранить причины замедления работы БД14-02-26 DBA 101_ как найти и устранить причины замедления работы БД
14-02-26 DBA 101_ как найти и устранить причины замедления работы БДAndrew Sovtsov
 
Больше чем анализ
Больше чем анализБольше чем анализ
Больше чем анализSQALab
 
20151112 Что нового в DB PowerStudio 2016
20151112 Что нового в DB PowerStudio 201620151112 Что нового в DB PowerStudio 2016
20151112 Что нового в DB PowerStudio 2016Andrew Sovtsov
 
ASP.NET, MVC, ASP.NET MVC
ASP.NET, MVC, ASP.NET MVCASP.NET, MVC, ASP.NET MVC
ASP.NET, MVC, ASP.NET MVCGetDev.NET
 
Automation from the trenches
Automation from the trenchesAutomation from the trenches
Automation from the trenchesGleb Rybalko
 
Масштабируемая архитектура фронтенда
Масштабируемая архитектура фронтендаМасштабируемая архитектура фронтенда
Масштабируемая архитектура фронтендаRoman Dvornov
 
Tfs Overview And Architecture (www.cmcons.com)
Tfs Overview And Architecture (www.cmcons.com)Tfs Overview And Architecture (www.cmcons.com)
Tfs Overview And Architecture (www.cmcons.com)Alexander Novichkov
 
redux: the best for isomorphic apps
redux: the best for isomorphic appsredux: the best for isomorphic apps
redux: the best for isomorphic appsDenis Izmaylov
 
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25MoscowJS
 

Similar to Тимур Лукин - Архитектура и проектирование ПО (20)

Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUAREТехники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
 
Cradle. Знакомство с Demo проектом
Cradle. Знакомство с Demo проектомCradle. Знакомство с Demo проектом
Cradle. Знакомство с Demo проектом
 
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовРеализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
 
Open Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesOpen Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practices
 
Бизнес и системный анализ весна 2013 лекция 8
Бизнес и системный анализ весна 2013 лекция 8Бизнес и системный анализ весна 2013 лекция 8
Бизнес и системный анализ весна 2013 лекция 8
 
Потоковая обработка данных и Микросервисная архитектура
Потоковая обработка данных и Микросервисная архитектураПотоковая обработка данных и Микросервисная архитектура
Потоковая обработка данных и Микросервисная архитектура
 
Oracle Application Management and Testing Suites for Siebel CRM
Oracle Application Management and Testing Suites for Siebel CRMOracle Application Management and Testing Suites for Siebel CRM
Oracle Application Management and Testing Suites for Siebel CRM
 
физическая структура хранения артемов Ready
физическая структура хранения артемов Readyфизическая структура хранения артемов Ready
физическая структура хранения артемов Ready
 
06 Архитектура информационных систем. Паттерны и фреймворки
06 Архитектура информационных систем. Паттерны и фреймворки06 Архитектура информационных систем. Паттерны и фреймворки
06 Архитектура информационных систем. Паттерны и фреймворки
 
14-02-26 DBA 101_ как найти и устранить причины замедления работы БД
14-02-26 DBA 101_ как найти и устранить причины замедления работы БД14-02-26 DBA 101_ как найти и устранить причины замедления работы БД
14-02-26 DBA 101_ как найти и устранить причины замедления работы БД
 
Web application framework
Web application frameworkWeb application framework
Web application framework
 
Больше чем анализ
Больше чем анализБольше чем анализ
Больше чем анализ
 
20151112 Что нового в DB PowerStudio 2016
20151112 Что нового в DB PowerStudio 201620151112 Что нового в DB PowerStudio 2016
20151112 Что нового в DB PowerStudio 2016
 
ASP.NET, MVC, ASP.NET MVC
ASP.NET, MVC, ASP.NET MVCASP.NET, MVC, ASP.NET MVC
ASP.NET, MVC, ASP.NET MVC
 
Automation from the trenches
Automation from the trenchesAutomation from the trenches
Automation from the trenches
 
Масштабируемая архитектура фронтенда
Масштабируемая архитектура фронтендаМасштабируемая архитектура фронтенда
Масштабируемая архитектура фронтенда
 
Automation from the trenches
Automation from the trenchesAutomation from the trenches
Automation from the trenches
 
Tfs Overview And Architecture (www.cmcons.com)
Tfs Overview And Architecture (www.cmcons.com)Tfs Overview And Architecture (www.cmcons.com)
Tfs Overview And Architecture (www.cmcons.com)
 
redux: the best for isomorphic apps
redux: the best for isomorphic appsredux: the best for isomorphic apps
redux: the best for isomorphic apps
 
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
 

More from Yandex

Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksПредсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksYandex
 
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Yandex
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаYandex
 
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаПредставление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаYandex
 
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Yandex
 
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Yandex
 
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Yandex
 
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Yandex
 
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Yandex
 
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Yandex
 
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Yandex
 
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Yandex
 
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровКак защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровYandex
 
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Yandex
 
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Yandex
 
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Yandex
 
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Yandex
 
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Yandex
 
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Yandex
 
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Yandex
 

More from Yandex (20)

Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksПредсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of Tanks
 
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
 
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаПредставление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
 
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
 
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
 
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
 
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
 
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
 
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
 
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
 
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
 
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровКак защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
 
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
 
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
 
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
 
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
 
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
 
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
 
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
 

Тимур Лукин - Архитектура и проектирование ПО