ファイルやフォルダを当たり前に使ってると思いますが、プログラミングする場合はもう少し知識が必要になります。
OSの努力により、ほぼ隠されて存在が見えませんが、それらは必要な知識です。ここで隠されてる知識を学びましょう。
階層型ファイル構造
意識したことがあるかは分かりませんが、ファイルやフォルダは階層構造で管理されます。
簡単な画像を用意したのでどうぞ。そして、このような構造は木構造(tree)と言います。
ディレクトリ (directory)
ファイルまたはディレクトリを格納できる場所です。Windowsの場合はフォルダとも言います。
これは単に名称が違うだけで意味は同じですが、プログラムの世界だとディレクトリを使います。
ルートディレクトリ (root directory)
最上位に位置するディレクトリです。自身より上の階層が存在しないディレクトリとも言えます。
WindowsならC:\みたいなディレクトリがルートディレクトリになりますね。
カレントディレクトリ (current directory)
OSを利用してると実感が持てないと思いますが、現在位置を示すディレクトリです。
プログラムを実行する時は必ずどこかがカレントディレクトリになっていて、大抵はプログラムが存在するディレクトリです。
これは明示的に変更することもでき、例えば現在位置から5階層上に存在するプログラムを実行することもできます。
エクスプローラの場合、現在開いてるフォルダの位置がカレントディレクトリになるよ。
全然意識したことないです。
それだけGUIが優れてるってことだね。この仕組みがなかったら発狂してるよ。
親ディレクトリ (parent directory)
ある場所を起点にした1つ上のディレクトリです。自身が所属するディレクトリとも言えます。
サブディレクトリ (sub directory)
親ディレクトリの反対で、ある場所を起点した時に下に存在するディレクトリです。
1つだけ下の階層を指すこともあれば、下に所属する全てのディレクトリを指すこともあります。
僕は使いませんが子ディレクトリと呼ばれることもあるとか。
ファイル (file)
逆に説明が難しいのですが、データと言うべきでしょうか。まぁ、普段から使ってるやつです。
当たり前のことですが、ファイル単体では存在できず、必ずどこかのディレクトリに所属します。
このファイルについては専用の解説を用意しました。なので、そちらで学びましょう。
ファイルとは何でしょうか。エンジニアになるならファイルへの理解は必須です。ここでは何気なく使ってるファイルについて、より知識を深めましょう。ファイルの概念そもそもファイルとは何でしょうか。以前から話してる通りコンピュータは0と1しか扱えません。がっ、そんな0と1の集合を人間が理解するのは不可能です。そうなると対策が必要ですよね。これを解決してくれるのがファイルの概念です。このおかげで我々はデータを簡単に扱えます。画像とか音楽もファイルですよね。これも0と1の集合ですか?...
あとがき
カレントディレクトリの概念がとても大切なんですが、エクスプローラに隠蔽されてて実感を得ませんよね。
真面目に覚えようと思ったら、CLIでコマンド叩いてディレクトリ移動するのが1番だと思います。
◆ コンピュータサイエンスに関する学習コンテンツ
この記事は参考になりましたか?
コメント