1
00:00:02,300 --> 00:00:04,250
Hello, this is David Starr, and I've been

2
00:00:04,250 --> 00:00:06,060
running software for more years than I

3
00:00:06,060 --> 00:00:08,660
care to admit. One thing I've found is

4
00:00:08,660 --> 00:00:10,910
design patterns. They're helpful when

5
00:00:10,910 --> 00:00:12,410
talking with other developers about a

6
00:00:12,410 --> 00:00:14,740
solution and in solving problems I see in

7
00:00:14,740 --> 00:00:18,420
code again and again. A design pattern is

8
00:00:18,420 --> 00:00:21,070
essentially a known solution to a commonly

9
00:00:21,070 --> 00:00:23,660
recurring problem. In this short course,

10
00:00:23,660 --> 00:00:25,440
we're going to look at the null object

11
00:00:25,440 --> 00:00:28,650
design pattern and see how it can improve

12
00:00:28,650 --> 00:00:32,720
the code we write. First, we're going to

13
00:00:32,720 --> 00:00:34,800
start with the origins of null. Where did

14
00:00:34,800 --> 00:00:36,550
this irritating little bit of nothingness

15
00:00:36,550 --> 00:00:38,640
come from? And then look at the problem

16
00:00:38,640 --> 00:00:40,405
that we're going to try and solve around

17
00:00:40,405 --> 00:00:42,575
null. Now it may just seem an irritant,

18
00:00:42,575 --> 00:00:45,970
but it can have severe implications, and

19
00:00:45,970 --> 00:00:48,100
we're going to introduce the null object

20
00:00:48,100 --> 00:00:50,630
pattern as a way to deal with nulls and

21
00:00:50,630 --> 00:00:53,430
see how that pattern helps us resolve some

22
00:00:53,430 --> 00:00:55,550
of the problems in question. And then

23
00:00:55,550 --> 00:00:58,440
finally, using null objects in practice

24
00:00:58,440 --> 00:01:05,000
will let us see the null object pattern working in live code, of course,

