1
00:00:05,440 --> 00:00:06,726
>> Hi, welcome to this new video.

2
00:00:06,726 --> 00:00:10,233
In this video we're going to be
wrapping up our conversation regarding

3
00:00:10,233 --> 00:00:11,994
object-oriented programming.

4
00:00:13,214 --> 00:00:16,910
Specifically, we're going to be trying to
think about what does it mean to start

5
00:00:16,910 --> 00:00:19,614
thinking in an object-oriented
kind of way, right.

6
00:00:19,614 --> 00:00:24,769
So as you face object oriented programming
as a paradigm, as a programming paradigm,

7
00:00:24,769 --> 00:00:29,606
you're going to realize that there's no
clear cut on what should be an object.

8
00:00:29,606 --> 00:00:31,262
You have to take some decisions.

9
00:00:31,262 --> 00:00:35,803
Perhaps some things might be
straightforward for you in terms of, well,

10
00:00:35,803 --> 00:00:40,487
I want to model a vehicle, a car, so
maybe that's going to be an object, but

11
00:00:40,487 --> 00:00:43,636
there's a lot of granularity
that you can go into,

12
00:00:43,636 --> 00:00:48,399
let's say modeling objects for
the different parts, or perhaps conceptual

13
00:00:48,399 --> 00:00:52,605
objects that might represent the way
the vehicle behaves and so on.

14
00:00:52,605 --> 00:00:55,426
So there's a whole range of
approaches that you could have and

15
00:00:55,426 --> 00:00:57,674
maybe that would feel overwhelming, right.

16
00:00:57,674 --> 00:01:00,002
So that's understandable.

17
00:01:00,002 --> 00:01:01,903
I think that learning from others and

18
00:01:01,903 --> 00:01:05,234
learning what are the solutions
that others have taken?

19
00:01:05,234 --> 00:01:09,994
How do they kind of construct objects
to tackle different programs?

20
00:01:09,994 --> 00:01:15,026
Actually it's very useful and
that takes us into design patterns.

21
00:01:15,026 --> 00:01:15,858
Design patterns.

22
00:01:15,858 --> 00:01:19,707
It's a beautiful subject
that has its own range,

23
00:01:19,707 --> 00:01:25,618
like a whole dedicated course that
could be dedicated to design patterns.

24
00:01:25,618 --> 00:01:30,611
But design patterns basically talk about
the solutions that have been implemented

25
00:01:30,611 --> 00:01:33,824
time and time again for
known issues, right.

26
00:01:33,824 --> 00:01:38,655
So, for instance, the idea of a singleton
pattern is the idea in how classes

27
00:01:38,655 --> 00:01:43,368
actually make sure that there's only
one instance of them in the world.

28
00:01:43,368 --> 00:01:46,802
So when you know that there's an object,
that there needs to be only a single

29
00:01:46,802 --> 00:01:50,614
instance in the world, in the programming
environment that you're working with,

30
00:01:50,614 --> 00:01:53,204
you might want to implement
a singleton pattern.

31
00:01:53,204 --> 00:01:57,589
And like that, there's many other
patterns like the observer pattern,

32
00:01:57,589 --> 00:02:02,327
the command pattern that allows you to
conceptualize behaviors that are kind of

33
00:02:02,327 --> 00:02:07,297
repeated or have been done many times in
different forms of software programming.

34
00:02:07,297 --> 00:02:13,502
So this is a little introduction to this
world of object-oriented thinking and

35
00:02:13,502 --> 00:02:18,708
how the consideration of patterns
as created by others, right.

36
00:02:18,708 --> 00:02:22,856
What are the kind of the composition
that different people,

37
00:02:22,856 --> 00:02:27,007
different programmers have
taken to solve these particular

38
00:02:27,007 --> 00:02:30,698
problems could be useful to your journey,
right.

39
00:02:30,698 --> 00:02:35,354
So we're going to leave this basically
as just an introduction to this matter.

40
00:02:35,354 --> 00:02:38,399
This is something that if
you're interested in this,

41
00:02:38,399 --> 00:02:43,030
there's a lot of really great textbooks
and also tutorials that you can cover, but

42
00:02:43,030 --> 00:02:47,474
really your journey into how do you start
thinking in an object oriented way?

43
00:02:47,474 --> 00:02:53,066
It's something that, yeah, will take a lot
of iteration and really trial and error.

44
00:02:53,066 --> 00:02:57,042
So I invite you to experiment see what
works and certainly learn from others.

45
00:02:57,042 --> 00:02:58,994
So, with that in mind,
we'll leave it here.