Яка різниця між каталогом і папкою?


107

Більшість людей взаємозамінно використовують терміни "папка" та "каталог". З точки зору програміста, чи є різниця, і якщо так, то що це? Це залежить від ОС, чи існує широкий загальний консенсус? Це принаймні говорить про те, що є різниця.


Що стосується того, чому це питання належить до SO і не є одуром
mafu

Але є також programmers.stackexchange.com

Відповіді:


92

Перевірте розділ «Метафора папок» у Вікіпедії . У ньому зазначено:

Існує різниця між каталогом, який є концепцією файлової системи, і метафорою графічного користувальницького інтерфейсу, яка використовується для його представлення (папка). Наприклад, Microsoft Windows використовує концепцію спеціальних папок, щоб допомогти представити вміст комп'ютера користувачеві досить послідовно, що звільняє користувача від необхідності мати справу з абсолютними шляхами до каталогу, які можуть змінюватись між версіями Windows і між окремі установки. ...

Якщо ви посилаєтесь на контейнер документів, термін папка є більш відповідним. Термін каталог відноситься до того, як на комп'ютері зберігається структурований список файлів документів і папок. Відмінність може бути пов’язана із способом доступу до каталогу; в системах Unix / usr / bin / зазвичай називають каталогом, коли його переглядають на консолі командного рядка, але якщо це доступ через графічний менеджер файлів, користувачі іноді можуть називати це папкою.


41

Папка не обов'язково є фізичним каталогом на диску. Це може бути, наприклад, папка принтерів або папка панелі управління в Windows.

Реймонд Чен пояснює:

Windows 95 представив Провідник Windows і разом з ним термін папку. Який взаємозв'язок між папками та каталогами?

Деякі люди вважають, що Windows 95 перейменував каталоги в папки, але насправді це більше.

Провідник Windows дозволяє переглядати папки, які є контейнерами в просторі імен оболонок. Каталоги - це один тип папок, а саме папки, які відповідають місцям розташування файлової системи. Існують і інші типи папок, такі як Панель управління або Мережеве сусідство або Принтери. Ці інші типи папок представляють об'єкти в просторі імен оболонок, які не відповідають файлам. Зазвичай, термін віртуальна папка застосовується для позначення папок, які не є каталогами. Іншими словами, у нас є така схема Ейлера:

(Віртуальні папки = Папки - Каталоги)

Загалом, код, який маніпулює простором імен оболонки, повинен працювати на папках та елементах, а не на каталоги та файли, щоб не прив’язати себе до певного носія інформації. Наприклад, код, який обмежує себе файлами, не зможе переміститися у Zip-файл, оскільки вміст Zip-файлу виставляється у вигляді віртуальної папки.


10
Як правило, для нитчінгу /proc це також не на диску .
n611x007

16

Цитуючи Альваро Вікаріо :

У більшості випадків вони є взаємозамінними термінами. Каталог - класичний термін, який використовується з ранніх часів файлових систем, тоді як папка - це якесь дружнє ім’я, яке може здатися більш звичним користувачам Windows.

Основна відмінність полягає в тому, що папка - це логічне поняття, яке не обов'язково відображається у фізичному каталозі. Каталог - об’єкт файлової системи. Папка - об’єкт GUI. Вікіпедія пояснює це так :

Папка з іменами, що представляє аналогію з папкою файлів, що використовується в офісах і спочатку використовується Apple Lisa, використовується майже у всіх робочих середовищах сучасних операційних систем. Папки часто зображуються піктограмами, які візуально нагадують папки фізичних файлів.

Строго кажучи, існує різниця між каталогом, який є концепцією файлової системи, і метафорою графічного користувальницького інтерфейсу, яка використовується для його представлення (папка). Наприклад, Microsoft Windows використовує концепцію спеціальних папок, щоб допомогти представити вміст комп'ютера користувачеві досить послідовно, що звільняє користувача від необхідності мати справу з абсолютними шляхами до каталогу, які можуть змінюватись між версіями Windows і між окремі установки.

Якщо ви посилаєтесь на контейнер документів, термін папка є більш відповідним. Термін каталог відноситься до того, як на комп'ютері зберігається структурований список файлів документів і папок. Вона порівнянна з телефонним довідником, який містить списки імен, номерів та адрес і не містить самих фактичних документів.


13
  • Каталог - це концепція файлової системи. У графічному інтерфейсі каталог представлений у вигляді папки .
  • Приклад 1: Системи Unix /usr/bin/зазвичай називають каталогом, коли його переглядають на консолі командного рядка, але якщо це доступ через графічний файловий менеджер , користувачі іноді можуть називати це папкою.
  • Приклад 2 : Windows використовує обидва каталогу (у таких командах)mkdir , cd), так і папку (в графічному інтерфейсі).

Довідник : Каталог імен є аналогією до телефонного каталогу:

Зображення телефонного довідника


Папка : папка з іменами є аналогією до папки файлів, яка використовується в офісах:

Зображення офісних папок


Аналогія:

  • Папка - це як кімната.
  • Каталог - це як власник готелю, який знає всі номери.

Якщо вам потрібна певна папка, ви використовуєте каталог. Якщо ви хочете конкретного номера, ви запитаєте господаря готелю. Джерело


4

Я раніше не знав різниці між цими двома словами англійською мовою, навіть у редакторі реєстру Windows я міг знайти два підключі Folderта Directoryпід HKEY_CLASSES_ROOT.

Я не знав різниці, поки не створив в реєстрі деякі значення вручну і не помітив відмінності елементів контекстного меню. Якщо я створюю лише вузол HKEY_CLASSES_ROOT\Folder\shell, я виявив, що він відображається в контекстному меню як віртуальних папок (aka system directory), як Recycle Bin, так і каталогу файлової системи, як C:\Windows.

Якщо я створюю лише вузол HKEY_CLASSES_ROOT\Directory\shell, він відображається лише в контекстному меню каталогу файлової системи, як-от C:\Windows, але не у віртуальній папці. Так, як сказав @AntonyW, у Windows папки = віртуальні папки + каталоги файлової системи.


1

Назви папок, що відображаються у Провіднику файлів (GUI, який раніше називався Windows Explorer), не обов'язково збігаються з каталогами, які вони представляють. Розглянемо випадок, коли ви намагаєтесь програмно відкрити певну папку, звичайний каталог на масовому сховищі, а не віртуальний магазин. Скажімо, це було визначено користувачем на основі імені, відображеного у File Explorer. Це ім'я могло бути замінено інформацією в альтернативному потоці даних (ADS) в каталозі, і ваша програма не буде посилатися на файл за його справжнім іменем шляху.

У двох прикладах, з якими я стикався, моя програма не могла відкрити ім'я шляху, вказане користувачем. Один із таких прикладів стосувався OneDrive; Я не пам’ятаю повних обставин іншого прикладу. У будь-якому разі ім'я відображення зберігається в ADS з назвою ms-властивостей: $ DATA .

Ви можете використовувати CMD.EXE, щоб перелічити рекламу за допомогою DIR / R. Перейменування таких папок за допомогою пункту меню "Властивості" у File Explorer змінює вміст цього ADS, і ім'я, що відображається кінцевому користувачеві у File Explorer, - це те, що він або вона введена. Але ця процедура не перейменовує каталог.


0

Посилання в основному описує те, що відрізняється на технічній основі. У більшості випадків люди користуються ними взаємозамінно, і те, що вони обирають, здебільшого ґрунтується на тому, з якого середовища вони походять.

Якщо ви не розробляєте крос-платформу для програми, яка буде змінювати файли, вам не потрібно знати відмінності. Як тільки ви готуєтесь до роботи з кількома різними типами файлової системи, ви повинні знати їх відмінності.

Не чекайте, що люди дізнаються, який термін використовувати, коли. Я вважаю ці терміни незмінними, оскільки відмінності відомі занадто мало людей.


1
Це я не прошу, хоча.
мафу
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.