WEBVTT

00:00:01.510 --> 00:00:03.330 align:middle
In this video I would like 
to show you

00:00:03.330 --> 00:00:06.530 align:middle
some simple elements of Nautilus.
I will show you

00:00:06.530 --> 00:00:08.770 align:middle
more complex elements
in following videos

00:00:08.770 --> 00:00:12.060 align:middle
related to the class browser.

00:00:12.140 --> 00:00:14.920 align:middle
Nautilus is what will enable you
to browse in the code.

00:00:16.860 --> 00:00:18.640 align:middle
I open it. What do we have?

00:00:20.110 --> 00:00:21.700 align:middle
You have all Pharo packages.

00:00:23.150 --> 00:00:27.800 align:middle
Let’s consider for example
AST-Core which is a package

00:00:27.800 --> 00:00:31.530 align:middle
used by the compiler to parse code
and represent code.

00:00:32.660 --> 00:00:36.360 align:middle
I have the AST-Core package.
I will have the classes

00:00:36.550 --> 00:00:39.800 align:middle
contained in the AST-Core package
and we can see for 

00:00:39.800 --> 00:00:44.250 align:middle
instance that there is inheritance
here, RBAssignmentToken

00:00:45.510 --> 00:00:46.680 align:middle
inherits from RBToken.

00:00:49.630 --> 00:00:54.390 align:middle
Now, for instance, if I click on
NumberParser,

00:00:54.390 --> 00:00:57.740 align:middle
here you have
the NumberParser class.

00:00:57.740 --> 00:01:00.460 align:middle
Here, I can see its comment.

00:01:02.140 --> 00:01:03.990 align:middle
And there I see the protocols.

00:01:03.990 --> 00:01:07.370 align:middle
The protocols are conceptual
groups of methods.

00:01:07.870 --> 00:01:10.160 align:middle
If I click on “all”, I can see
all the methods

00:01:10.160 --> 00:01:12.400 align:middle
of this class, otherwise
I can select 

00:01:12.980 --> 00:01:15.070 align:middle
some protocols giving me 
a more precise piece of 

00:01:15.070 --> 00:01:17.660 align:middle
information as, for instance,
initalize-release.

00:01:17.660 --> 00:01:20.610 align:middle
It means that it is the method 
that will initialise the Parser.

00:01:20.610 --> 00:01:24.940 align:middle
Here you have all the methods
linked to the way you 

00:01:24.940 --> 00:01:25.680 align:middle
parse a number.

00:01:25.850 --> 00:01:27.700 align:middle
I can see that this one is
public whereas

00:01:27.700 --> 00:01:30.220 align:middle
these ones are private,
indicating I won’t

00:01:30.290 --> 00:01:32.660 align:middle
have to call them from
the outside in a general way.

00:01:32.980 --> 00:01:37.800 align:middle
Now if I am here, I will see the 
method’s code.

