Jaka jest różnica między katalogiem a folderem?

107

Większość ludzi używa zamiennie terminów „folder” i „katalog”. Czy z punktu widzenia programisty jest jakaś różnica, a jeśli tak, to jaka? Czy zależy to od systemu operacyjnego, czy też istnieje szeroki, ogólny konsensus? To przynajmniej sugeruje, że istnieje różnica.

mafu
źródło
Jeśli chodzi o to, dlaczego to pytanie należy do SO i nie jest oszustwem,
mafu
Ale jest też programmers.stackexchange.com

Odpowiedzi:

92

Sprawdź sekcję „Metafora folderu” w Wikipedii . W Stanach:

Istnieje różnica między katalogiem, który jest koncepcją systemu plików, a metaforą graficznego interfejsu użytkownika, która jest używana do jego reprezentowania (folder). Na przykład system Microsoft Windows wykorzystuje koncepcję specjalnych folderów, aby pomóc przedstawić zawartość komputera użytkownikowi w dość spójny sposób, który uwalnia użytkownika od konieczności zajmowania się bezwzględnymi ścieżkami katalogów, które mogą się różnić w zależności od wersji systemu Windows i między indywidualne instalacje. ...

Jeśli chodzi o kontener dokumentów, bardziej odpowiedni jest termin folder. Termin katalog odnosi się do sposobu, w jaki uporządkowana lista plików i folderów dokumentów jest przechowywana na komputerze. Różnica może wynikać ze sposobu uzyskiwania dostępu do katalogu; w systemach uniksowych / usr / bin / jest zwykle nazywany katalogiem, gdy jest przeglądany w konsoli wiersza poleceń, ale jeśli jest dostępny przez graficzny menedżer plików, użytkownicy mogą czasami nazywać go folderem.

Anand Shah
źródło
41

Folder niekoniecznie jest fizycznym katalogiem na dysku. Może to być na przykład folder drukarek lub folder panelu sterowania w systemie Windows.

Raymond Chen wyjaśnia:

Windows 95 wprowadził Eksploratora Windows, a wraz z nim termin folder. Jaka jest zależność między folderami i katalogami?

Niektórzy uważają, że Windows 95 zmienił nazwy katalogów na foldery, ale w rzeczywistości to coś więcej.

Eksplorator Windows umożliwia przeglądanie folderów, które są kontenerami w przestrzeni nazw powłoki. Katalogi to jeden rodzaj folderów, a mianowicie foldery, które odpowiadają lokalizacjom systemu plików. Istnieją inne typy folderów, takie jak Panel sterowania, Otoczenie sieciowe lub Drukarki. Te inne typy folderów reprezentują obiekty w przestrzeni nazw powłoki, które nie odpowiadają plikom. W powszechnym użyciu termin folder wirtualny jest stosowany w odniesieniu do folderów, które nie są katalogami. Innymi słowy, mamy ten diagram Eulera:

(Foldery wirtualne = Foldery - Katalogi)

Ogólnie rzecz biorąc, kod, który manipuluje przestrzenią nazw powłoki, powinien działać na folderach i elementach, a nie na katalogach i plikach, aby nie wiązać się z określonym nośnikiem pamięci. Na przykład kod, który ogranicza się do plików, nie będzie mógł przejść do pliku Zip, ponieważ zawartość pliku Zip jest ujawniona w postaci folderu wirtualnego.

Antony W.
źródło
10
W przypadku czepiania się, zazwyczaj /procnie ma go również na dysku .
n611x007
16

Cytując Álvaro G. Vicario :

W większości przypadków są to terminy zamienne. Katalog to klasyczny termin używany od wczesnych czasów systemów plików, podczas gdy folder to rodzaj przyjaznej nazwy, która może brzmieć bardziej znajomo dla użytkowników systemu Windows.

Główna różnica polega na tym, że folder jest logiczną koncepcją, która niekoniecznie musi odpowiadać katalogowi fizycznemu. Katalog jest obiektem systemu plików. Folder to obiekt GUI. Wikipedia wyjaśnia to w ten sposób :

Folder nazw, stanowiący analogię do folderu plików używanego w biurach, a pierwotnie używanego przez firmę Apple Lisa, jest używany w prawie wszystkich środowiskach graficznych nowoczesnych systemów operacyjnych. Foldery są często przedstawiane za pomocą ikon, które wizualnie przypominają fizyczne foldery plików.

Ściśle mówiąc, istnieje różnica między katalogiem, który jest koncepcją systemu plików, a metaforą graficznego interfejsu użytkownika, która jest używana do jego reprezentacji (folder). Na przykład system Microsoft Windows wykorzystuje koncepcję specjalnych folderów, aby pomóc przedstawić zawartość komputera użytkownikowi w dość spójny sposób, który uwalnia użytkownika od konieczności zajmowania się bezwzględnymi ścieżkami katalogów, które mogą się różnić w zależności od wersji systemu Windows i między indywidualne instalacje.

Jeśli chodzi o kontener dokumentów, bardziej odpowiedni jest termin folder. Termin katalog odnosi się do sposobu, w jaki uporządkowana lista plików i folderów dokumentów jest przechowywana na komputerze. Jest to porównywalne z książką telefoniczną, która zawiera listy nazwisk, numerów i adresów i nie zawiera samych dokumentów.

mafu
źródło
13
  • Katalog to koncepcja systemu plików. W graficznym interfejsie użytkownika katalog jest reprezentowany jako folder .
  • Przykład 1: Systemy uniksowe /usr/bin/są zwykle określane jako katalog podczas przeglądania w konsoli wiersza poleceń, ale jeśli dostęp do niego uzyskuje się za pośrednictwem graficznego menedżera plików , użytkownicy mogą czasami nazywać go folderem.
  • Przykład 2 : Windows używa zarówno katalogu (w poleceniach takich jak mkdir, cd) , jak i folderu (w GUI).

Książka telefoniczna: Katalog nazw stanowi analogię do książki telefonicznej:

Obraz książki telefonicznej


Folder : nazwa folderu stanowi analogię do folderu plików używanego w biurach:

Obraz folderów biurowych


Analogia:

  • Folder jest jak pokój.
  • Katalog jest jak hotelarz, który zna wszystkie pokoje.

Jeśli chcesz mieć określony folder, użyj katalogu. Jeśli chcesz otrzymać konkretny pokój, zapytaj właściciela hotelu. Źródło

Premraj
źródło
4

Wcześniej nie znałem różnicy między tymi dwoma słowami w języku angielskim, nawet w edytorze rejestru systemu Windows znalazłem dwa podklucze Folderi Directorypod HKEY_CLASSES_ROOT.

Nie znałem różnicy, dopóki nie utworzyłem ręcznie niektórych wartości w rejestrze i nie zaobserwowałem różnic w elementach menu kontekstowego. Jeśli utworzę węzeł HKEY_CLASSES_ROOT\Folder\shelltylko pod , stwierdziłem, że pojawia się on w menu kontekstowym zarówno folderów wirtualnych (aka system directory), jak Recycle Bini katalogu systemu plików, takiego jak C:\Windows.

Jeśli utworzę węzeł HKEY_CLASSES_ROOT\Directory\shelltylko pod , pojawi się on tylko w menu kontekstowym katalogu systemu plików, jak C:\Windowsfolder wirtualny, ale nie. Tak więc, jak powiedział @AntonyW, w systemie Windows foldery = foldery wirtualne + katalogi systemu plików.

賈 可 Jacky
źródło
1

Nazwy folderów wyświetlanych w Eksploratorze plików (GUI wcześniej nazywany Eksploratorem Windows) niekoniecznie są takie same, jak katalogi, które reprezentują. Rozważ przypadek, w którym próbujesz programowo otworzyć określony folder, zwykły katalog w pamięci masowej, a nie magazyn wirtualny. Powiedzmy, że zostało to określone przez użytkownika na podstawie nazwy wyświetlanej w Eksploratorze plików. Ta nazwa mogła zostać zastąpiona przez informacje w alternatywnym strumieniu danych (ADS) w katalogu, a program nie będzie odnosił się do pliku przy użyciu jego prawdziwej ścieżki.

W dwóch napotkanych przykładach moja aplikacja nie mogła otworzyć ścieżki określonej przez użytkownika. Jeden z tych przykładów był związany z OneDrive; Nie pamiętam pełnych okoliczności z drugiego przykładu. W każdym razie nazwa wyświetlana jest przechowywana w ADS o nazwie ms-properties: $ DATA .

Możesz użyć CMD.EXE, aby wyświetlić ADS za pomocą DIR / R. Zmiana nazw takich folderów za pomocą elementu menu Właściwości w Eksploratorze plików powoduje zmianę zawartości tych reklam, a nazwa wyświetlana użytkownikowi końcowemu w Eksploratorze plików jest wpisywana przez niego. Ale ta procedura nie zmienia nazwy katalogu.

DudleyM
źródło
0

Twój link zasadniczo opisuje, co różni się pod względem technicznym. W większości przypadków ludzie używają ich zamiennie, a wybór zależy głównie od środowiska, z którego pochodzą.

Jeśli nie tworzysz aplikacji na różnych platformach, aby modyfikować pliki, nie musisz znać różnic. Gdy przygotowujesz się do pracy z kilkoma różnymi typami systemów plików, powinieneś znać różnice między nimi.

Nie oczekuj, że ludzie będą wiedzieć, jakiego terminu użyć. Myślę o tych terminach jako o wymiennych, ponieważ różnice są znane zbyt małej liczbie osób.

Flyhard
źródło
1
Nie o to jednak proszę.
mafu