1
00:00:01,350 --> 00:00:04,550
このビデオでは
Nautilusでの小技をお見せします。

2
00:00:06,450 --> 00:00:09,370
ちなみに
Nautilus(ノーチラス)は

3
00:00:09,370 --> 00:00:11,500
ジュール・ベルヌの「海底2万海里」
に出てくる潜水艦の名前です。

4
00:00:11,500 --> 00:00:14,420
Nautilus は海中を航海できるので

5
00:00:14,420 --> 00:00:15,490
Pharo にとてもとてもピッタリなのです。

6
00:00:16,920 --> 00:00:18,430
OrderedCollection クラスを見てみましょう。

7
00:00:25,260 --> 00:00:28,070
Collection-Sequenceable パッケージで
定義されています。

8
00:00:30,040 --> 00:00:32,500
このパッケージには
システムのコアなクラスがいくつか入っています。

9
00:00:32,500 --> 00:00:36,400
Array(配列)クラスやInterval(区間)や
LinkedList(連結リスト)があります。

10
00:00:36,960 --> 00:00:40,070
このパッケージを見れば

11
00:00:40,070 --> 00:00:42,840
OrderedCollection クラスがあり
そのサブクラスに SortedCollectionがあります。

12
00:00:42,840 --> 00:00:47,280
ほかには

13
00:00:47,280 --> 00:00:51,390
グラフィカルには表示されませんが

14
00:00:52,380 --> 00:00:55,800
OrderedCollection は
SequenceableCollection のサブクラスです。


15
00:00:57,920 --> 00:00:59,820
ときどき

16
00:00:59,820 --> 00:01:02,390
スーパークラスの中だけを
辿って見たいことがあります。

17
00:01:02,390 --> 00:01:04,410
どのメソッドが再定義されているかとか
そういうことです。

18
00:01:06,160 --> 00:01:09,510
そのためには
Inheritance をクリックしてください。

19
00:01:13,110 --> 00:01:16,120
つまり階層を見るのです。
OrderedCollectionのスーパークラスの

20
00:01:17,140 --> 00:01:20,430
SequenceableCollection と
その階層が見えます。

21
00:01:23,450 --> 00:01:26,550
また、OrderedCollectionのサブクラスで
他のパッケージに格納されている

22
00:01:26,990 --> 00:01:29,950
他のサブクラスが見えます。
そして

23
00:01:29,950 --> 00:01:32,210
SortedCollection はOrderedCollectionの
サブクラスだとわかります。

24
00:01:33,050 --> 00:01:37,660
黒字で表示されているので
これは

25
00:01:37,660 --> 00:01:40,210
OrderedCollectionと同じパッケージです。

26
00:01:41,190 --> 00:01:46,090
同じようにブラウズして

27
00:01:46,090 --> 00:01:47,850
他のパッケージに格納されている
メソッドを見ることができます。

28
00:01:50,490 --> 00:01:55,230
ここで
スーパークラスを見ている時に

29
00:01:55,230 --> 00:01:56,890
このモードを選択するのをやめたら
どうなるでしょう？

30
00:01:57,340 --> 00:02:00,330
そのクラスのパッケージが見えます。

31
00:02:00,650 --> 00:02:03,450
つまり、SequenceableCollection クラスが

32
00:02:03,450 --> 00:02:04,440
Collection-Abstract パッケージに
格納されています。

33
00:02:05,470 --> 00:02:08,180
ではここでもう一度
Inheritanceを見たらどうでしょう。

34
00:02:08,180 --> 00:02:12,490
SequenceableCollection の
全てのサブクラスと全てのスーパークラスが

35
00:02:12,490 --> 00:02:13,480
見えます。


36
00:02:14,570 --> 00:02:17,990
SequenceableCollection は

37
00:02:17,990 --> 00:02:20,640
同じパッケージのCollection を継承して

38
00:02:20,640 --> 00:02:25,260
同じパッケージの ArrayedCollectionを定義しています。

39
00:02:25,260 --> 00:02:27,490
階層がとても大きいことがわかります。

40
00:02:27,490 --> 00:02:30,620
OrderedCollection を探さなければなりません。
OrderedCollection はここにありました。

41
00:02:30,650 --> 00:02:34,190
さて
また OrderedCollection を選択して

42
00:02:34,190 --> 00:02:36,700
また Inheritance をクリックしたら

43
00:02:36,700 --> 00:02:39,390
元のパッケージである
Sequenceable に戻ります。

44
00:02:40,860 --> 00:02:42,440
スタート地点に戻りました。

45
00:02:43,810 --> 00:02:46,670
ここでお見せしたのは
Nautilus を使って

46
00:02:46,670 --> 00:02:50,260
パッケージを無視して
継承に従ってブラウズできることです。

47
00:02:50,610 --> 00:02:54,130
ただし今どのパッケージをブラウズしているか
表示しながら。
