Трудности повторного использования

31
Трудности повторного использования Кожевников Дмитрий Неизвестный банк GDG Dev2Dev 09.2015

Upload: dev2devconf

Post on 03-Mar-2017

212 views

Category:

Software


0 download

TRANSCRIPT

Трудности повторного использования

Кожевников Дмитрий

Неизвестный банк

GDG Dev2Dev 09.2015

Это я

• Кожевников Дмитрий

• Неизвестный банк

• .NET Developer

• 4+ года enterprise

[email protected]

• dev2dev.ru, vk.kom/dev2dev

2

3

4

Зачем? – Меньше затрат!

• Меньше строк кода

• Меньше рутины

• Выше производительность труда

• Можно выпустить open-source

5

Как нужно писать повторно используемый код?

6

Справочники

7

Чего хотят пользователи

8

Справочники

9

Первое приближение

10

Новые кейсы

11

Наследование

12

Больше иерархий

13

Использование движка

• Кейсы быстро кончились

• Сделать просто так же сложно

• Весело писать, трудно использовать

• Нужно помнить код

• Или быть автором кода(не спасает)

14

Никакого повторного использования!

15

Дырявая абстракция

16

Псевдоабстракция

17

Меньше дыр

18

Наследование

19

Примитивы наследования в C#

• protected abstract method

• protected virtual method

• public abstract method

• public virtual method

• abstract class

• interface

20

Осторожное наследование

• Молчаливые абстрактные классы

• Легкие интерфейсы

• Generic constraints

• Поведение по умолчанию

21

Молчаливый абстрактный класс

22

Легкий интерфейс

23

Generic constraints

24

Дефолтное поведение

25

Функции высших порядков

26

Композиция вместо наследования

27

Library vs Framework

28

Заключение

29

Всякая сложная абстракция протекает

30

Спасибо за внимание!

31