1

00:00:00,900  -->  00:00:06,630
Next very important thing that we are going to look at as source code navigation these are the specific

2

00:00:06,630  -->  00:00:08,350
main items that we would look at.

3

00:00:08,500  -->  00:00:15,300
And they're very commonly used Fussell to look at type exploration which include stuff like searching

4

00:00:15,300  -->  00:00:20,940
for types like classes and interfaces and Valke meant that can contain and things like that.

5

00:00:21,390  -->  00:00:27,570
Next we will look at Methot exploration victualling knowing things like how to navigate a particular

6

00:00:27,570  -->  00:00:33,340
matter from the point of invocation or which methods are invoking a particular method.

7

00:00:33,990  -->  00:00:39,780
Third we will look at how we can search for specific strings in the entire workspace or how we can search

8

00:00:39,780  -->  00:00:44,250
for specific Djala constructs like metal Sophies.

9

00:00:44,250  -->  00:00:47,690
Main thing you would learn would be some really important shortcuts.

10

00:00:48,120  -->  00:00:51,150
OK let's switch over to eclipse now.

11

00:00:52,110  -->  00:00:54,610
OK let's begin with type exploration.

12

00:00:54,780  -->  00:00:59,790
And often we would like to search for a specific type like a class or an interface.

13

00:01:00,260  -->  00:01:04,360
Ok so for that all we need to do is just hit Control shift.

14

00:01:04,460  -->  00:01:07,970
D where the stands for type on.

15

00:01:08,040  -->  00:01:10,650
Let's say you want to search for basics demo.

16

00:01:10,770  -->  00:01:15,380
As we are typing you can see that in real time there is a search operation that is going on under to

17

00:01:15,390  -->  00:01:19,160
showing all the all the matches real time matches.

18

00:01:19,470  -->  00:01:26,050
And let's say we just want to look for this particular class BASIX demo and here it is.

19

00:01:26,310  -->  00:01:28,980
And so that's how you would search for that type.

20

00:01:29,040  -->  00:01:34,950
And let's say the next thing is we want to get an outline of the class make what matters it has on stuff

21

00:01:34,950  -->  00:01:35,580
like that.

22

00:01:35,790  -->  00:01:37,230
So there are three ways to do it.

23

00:01:37,230  -->  00:01:39,160
One is you can do it from the package Explorer.

24

00:01:39,180  -->  00:01:47,250
Just click on the basics demo class and you can see that all the members that it has and and the the

25

00:01:47,340  -->  00:01:56,850
quick way to do it as just hit control or and that search so this pop up as a quick outline and all

26

00:01:56,850  -->  00:02:00,770
you do is head control and all stands for outline.

27

00:02:00,890  -->  00:02:01,230
OK.

28

00:02:01,260  -->  00:02:06,630
And you can look at all the methods and you can even search for those methods in the example print here

29

00:02:06,640  -->  00:02:06,930
.

30

00:02:07,350  -->  00:02:12,290
And if you want to go there just double click on that and you're here a different method.

31

00:02:12,630  -->  00:02:15,620
So that's a second way it will do it control.

32

00:02:16,440  -->  00:02:20,980
And a third way is just right click on that and says Sure.

33

00:02:21,000  -->  00:02:23,400
And Brett Graham and there you go.

34

00:02:23,400  -->  00:02:25,650
Here you how hard it sure.

35

00:02:25,650  -->  00:02:31,960
The Brit commission here breadcrumb is nothing but it's just a path that it shows like Des Moines.

36

00:02:31,950  -->  00:02:37,080
The project's sources are so scored on here as a package and within the package we have this glass and

37

00:02:37,080  -->  00:02:43,750
you can look for any specific methods on members of the class or here on if you want to just hide it

38

00:02:43,800  -->  00:02:49,580
just right click on this bar and see hide Brett grum on your gun.

39

00:02:49,590  -->  00:02:51,910
So that's the hard way of doing it.

40

00:02:51,910  -->  00:02:57,550
Personally a strict control always the best quickest way to quote an old link.

41

00:02:57,570  -->  00:03:00,180
Third thing is let's look at type hierarchies.

42

00:03:00,210  -->  00:03:12,420
So let me just open this glass X Okay and just click on this glass here and just right click Ironhead

43

00:03:12,540  -->  00:03:19,590
are open type hierarchy and then you go on for that glass.

44

00:03:19,950  -->  00:03:21,470
It is showing the type hierarchy.

45

00:03:21,500  -->  00:03:23,420
The tree 900 and street.

46

00:03:23,730  -->  00:03:28,610
And it is also showing a subclass of itches B which is extending this glass.

47

00:03:28,740  -->  00:03:29,010
OK.

48

00:03:29,010  -->  00:03:30,510
So that's for the class.

49

00:03:30,510  -->  00:03:33,750
Now let's look at it for an interface.

50

00:03:33,750  -->  00:03:40,770
You can just hear x' x to implement this interface low let's just click on that and say open by hierarchy

51

00:03:40,900  -->  00:03:46,750
to showing the interface seat but it does interface C actually extends and of that interface called

52

00:03:46,890  -->  00:03:47,790
interface.

53

00:03:48,090  -->  00:03:54,230
But it only shows interface C and all the classes that are implementing it.

54

00:03:54,360  -->  00:03:59,770
OK so it's basically showing the subtypes off C so it doesn't show any supertype.

55

00:03:59,770  -->  00:04:00,340
Office.

56

00:04:00,410  -->  00:04:01,070
OK.

57

00:04:01,290  -->  00:04:05,100
That's how you would look at type hierarchy.

58

00:04:05,430  -->  00:04:12,200
But there is also a shortcut for those and all you could do is just click on this here and hit until

59

00:04:12,250  -->  00:04:12,770
D.

60

00:04:13,000  -->  00:04:13,360
OK.

61

00:04:13,380  -->  00:04:14,730
And once again.

62

00:04:14,730  -->  00:04:21,980
So this quick Konsole quick can sort of shows up on Nitro's the exact type hierarchy in the pop up.

63

00:04:22,020  -->  00:04:22,350
OK.

64

00:04:22,390  -->  00:04:25,070
Underdose and it is only a control.

65

00:04:25,120  -->  00:04:27,310
Looks like it shows up pop up here.

66

00:04:27,420  -->  00:04:34,840
So that's controlled deep and you can do the same here also control D and that's all.

67

00:04:35,610  -->  00:04:37,110
So that's type expedition.

68

00:04:37,140  -->  00:04:42,900
Next let's look at motard exploration unfought that I will show a different code base data.

69

00:04:42,930  -->  00:04:49,190
How much is a much more larger and I think it will be much more useful to show it with a large codebase

70

00:04:49,270  -->  00:04:49,340
.

71

00:04:49,380  -->  00:04:54,710
So let's do that OK here is a different code base.

72

00:04:54,950  -->  00:04:59,620
And let's say first thing that we want to do and METAR exploration is let's say we have this method

73

00:04:59,640  -->  00:05:03,640
invocation here and we want to look at the matter definition.

74

00:05:03,640  -->  00:05:10,550
All you need to do is just click there and hit F tree and that's it you are you'll be taken to the method

75

00:05:10,570  -->  00:05:11,400
definition.

76

00:05:11,650  -->  00:05:12,160
OK.

77

00:05:12,400  -->  00:05:13,960
So let's just go back one going back.

78

00:05:13,960  -->  00:05:15,670
You can hit this button here.

79

00:05:15,700  -->  00:05:16,990
Back button.

80

00:05:17,110  -->  00:05:18,500
So we are back here.

81

00:05:18,880  -->  00:05:22,380
So that's how we and I we get with a motard definition.

82

00:05:22,390  -->  00:05:25,410
Now let's say we have this method called send request.

83

00:05:25,420  -->  00:05:30,320
Now let's say we want to see which other methods are invoking this method.

84

00:05:30,340  -->  00:05:33,430
OK so let's let's if we want to look at the method invocations.

85

00:05:33,520  -->  00:05:37,540
So just highlight doc encik control shif G.

86

00:05:37,990  -->  00:05:39,340
And here you go.

87

00:05:39,340  -->  00:05:44,460
So if you look at here it shows all the methods that are invoking the send request method.

88

00:05:44,700  -->  00:05:45,050
OK.

89

00:05:45,070  -->  00:05:47,210
So these are all the matters that are invoking it.

90

00:05:47,300  -->  00:05:52,550
And you can click on them and then it shows this and if you want and I'll be good back Baghdad district

91

00:05:52,560  -->  00:05:54,920
on three again you are here.

92

00:05:55,180  -->  00:06:00,570
OK so that's knowing about the math in question something that's gone through a shift G.

93

00:06:00,880  -->  00:06:05,410
So F 3 uncontrolled G are very commonly used shortcuts.

94

00:06:05,490  -->  00:06:06,370
3 is.

95

00:06:06,450  -->  00:06:12,610
Now we get them at their definition and control shift G is for going to get them entering locations

96

00:06:12,610  -->  00:06:12,730
.

97

00:06:12,730  -->  00:06:16,440
OK now let's say we want to look at the call hierarchy itself.

98

00:06:16,980  -->  00:06:24,000
And for that we can do can control out which it is.

99

00:06:24,790  -->  00:06:29,450
So it shows all the methods that are invoking send requests once again.

100

00:06:29,560  -->  00:06:35,920
But if you you can go ahead and we can browse through the call hierarchy so authenticate user here as

101

00:06:35,920  -->  00:06:40,870
being called by this method call log in and log in is being invoked by another method called log in

102

00:06:40,870  -->  00:06:42,280
from some other class.

103

00:06:42,310  -->  00:06:48,790
So the log in is in Done being invoked from this Glasscock from this method called much and Drogin you

104

00:06:48,790  -->  00:06:49,130
see.

105

00:06:49,150  -->  00:06:51,560
So this is the call hierarchy.

106

00:06:51,650  -->  00:06:53,480
And so if adopted as control.

107

00:06:53,730  -->  00:07:00,120
I looked at each ok at stands for hierarchy and that's it that's.

108

00:07:00,190  -->  00:07:05,460
Are the most important or most commonly used shortcuts for motard navigation.

109

00:07:05,760  -->  00:07:14,980
OK so next let's look at a search feature and for that let me just go back to our our own code base

110

00:07:16,330  -->  00:07:18,190
before showing you the search feature.

111

00:07:18,190  -->  00:07:20,660
I want to show you something which I forgot earlier.

112

00:07:20,680  -->  00:07:25,860
So earlier we saw that we need to hit Control shift d in order to search for that type.

113

00:07:25,870  -->  00:07:30,700
Another way to do it is just going to navigate and hit open type here.

114

00:07:31,070  -->  00:07:36,790
And that would show the same concern but I would definitely recommend using the control shifty as it

115

00:07:36,790  -->  00:07:39,300
is much more quicker to get here.

116

00:07:39,700  -->  00:07:40,690
So that's about that.

117

00:07:40,690  -->  00:07:46,210
So there are other shortcuts are just shortcuts but there are always other ways to do it but it's better

118

00:07:46,210  -->  00:07:49,720
to always learn the most frequently used shortcuts.

119

00:07:49,800  -->  00:07:54,220
OK so now let's look at the search feature for that.

120

00:07:54,220  -->  00:08:01,890
All you need to do is hit an edge or just going to that's going to search here and click on search.

121

00:08:02,110  -->  00:08:04,540
And here you how different apps.

122

00:08:04,540  -->  00:08:10,870
So let's say you want to do a string search across the entire workspace just go here and type in let's

123

00:08:10,870  -->  00:08:12,310
take one example.

124

00:08:13,210  -->  00:08:19,060
And it would show one result here showing one is there so just click on that and nerdish as you can

125

00:08:19,060  -->  00:08:21,180
see that is the next out here.

126

00:08:21,540  -->  00:08:24,340
And so that's how you'll search for strings.

127

00:08:24,340  -->  00:08:27,570
Now let's say you want to search for a specific construct.

128

00:08:27,760  -->  00:08:28,060
OK.

129

00:08:28,060  -->  00:08:35,920
So let's for that you go into this type Jawa search and let's say you want to search for a field named

130

00:08:36,010  -->  00:08:44,770
as Id look for all classes are interfaces that how type and how field called ID and for that you just

131

00:08:45,160  -->  00:08:46,640
select field here.

132

00:08:46,870  -->  00:08:54,140
And we are also specifying saying that search in is required by x even Jayati libraries and dentata

133

00:08:54,190  -->  00:09:01,230
workspace here and just collect such and as you can see to showing 454 reference's.

134

00:09:01,900  -->  00:09:07,450
So that's the searching for constructs and final thing is it's the simplest thing is to just search

135

00:09:07,450  -->  00:09:12,730
within a file on Birdsell just like the extra or or just do a control and you can search and you can

136

00:09:12,730  -->  00:09:17,160
also replay sekret you can also replace it with any any any other string.

137

00:09:17,230  -->  00:09:17,920
OK.

138

00:09:17,920  -->  00:09:18,670
So that's about it.

139

00:09:18,670  -->  00:09:24,010
So let's just go ahead and review the shortcuts once again.

140

00:09:24,010  -->  00:09:29,400
Here is a summary of all the shotguns that we look at the first three or 11 book types.

141

00:09:29,530  -->  00:09:34,420
The next three are relevant to methods and the final one is relevant to such.

142

00:09:34,420  -->  00:09:36,210
The first one is control shift.

143

00:09:36,270  -->  00:09:38,770
And you would use doc for searching for that type.

144

00:09:38,770  -->  00:09:39,050
OK.

145

00:09:39,060  -->  00:09:40,010
So behere.

146

00:09:40,040  -->  00:09:46,690
As for pipe next to it all which shows a quick outline of the pipe which means you can look at all the

147

00:09:46,690  -->  00:09:50,740
methods in the eye and it shows a pop up for that.

148

00:09:50,800  -->  00:09:54,370
The third one is contradictory and it shows the type hierarchy.

149

00:09:54,370  -->  00:10:02,650
It's the quick type hierarchy and you can look at the entire i-Pad on the inheritance tree as tree which

150

00:10:02,650  -->  00:10:07,050
is to navigate to a particular matter from the point of the matter in location.

151

00:10:07,090  -->  00:10:08,940
That's a very commonly used.

152

00:10:09,400  -->  00:10:10,990
51 is containership.

153

00:10:11,060  -->  00:10:12,110
And that's true.

154

00:10:12,160  -->  00:10:14,100
Look for any method invocations.

155

00:10:14,110  -->  00:10:18,060
So if you are at a method only if you want to see all the methods that are in working it so that you

156

00:10:18,060  -->  00:10:23,170
can grow HFM G contour add edge is for method call hierarchy.

157

00:10:23,170  -->  00:10:25,770
So it stands for hierarchy.

158

00:10:25,900  -->  00:10:30,250
Finally control etche is for the search console itself.

159

00:10:30,340  -->  00:10:33,030
So those are all the shortcuts that we have up there.

160

00:10:33,040  -->  00:10:33,760
And this lesson
