¿Por qué las aplicaciones de Mac nunca se "cierran"?

60

Soy un usuario de Linux / Windows / Mac. Me gustan todos los sistemas, * nixes más que Windows, pero no obstante me gustan todos.

Comencé a usar una Mac este año, y una diferencia entre Linux y Windows que no puedo entender es: ¿por qué las aplicaciones nunca se cierran cuando presiono el botón "x", ya que así es como se comportan Linux y Windows? Necesito presionar cmd + q o salir por el menú superior.

Quiero decir, ¿es eso solo para ser diferente de todos ellos, o hay una razón para este comportamiento? No puedo ver ninguna ventaja. Si quiero cerrar, quiero cerrar. Período.

Alguien sabe la razón de eso?

Alguien todavía te usa MS-DOS
fuente
1
Es solo que el comportamiento predeterminado del Xbotón es esconderse. Estoy de acuerdo en que es estúpido, pero es el resultado de la mentalidad "Tu macbook sabe mejor que tú". Algunos programas de Windows y Linux hacen lo mismo, pero en general, Xsignifica cerrar.
Falmarri
1
A veces, un comportamiento predeterminado tiene una razón, incluso histórica, que no tiene sentido. Me gustaria saberlo
Alguien todavía te usa MS-DOS
1
Creo que históricamente cierra la ventana, pero no sale de la aplicación. No sé con certeza por qué, pero sospecho que está arraigado en el tiempo antes de que las Mac tuvieran memoria virtual y cambio de aplicación real, podría cerrar ventanas, posiblemente liberar algo de memoria, pero no retrasar la apertura de una nueva (er).
Neth
25
Cuando una aplicación siempre tiene una sola ventana (principal) (por ejemplo , Preferencias del sistema ), al cerrarla (ya sea Archivo > Cerrar , Comando + W o la X roja por ventana en la esquina superior izquierda) se cierra la aplicación (se está "terminando" con "la ventana significa que" ha terminado con "la aplicación ya que solo hay una ventana). Las aplicaciones que pueden tener más de una ventana principal no se cierran cuando se cierra la última ventana. La aplicación permanece abierta para que pueda usar (por ejemplo) Archivo > Nuevo ... (o Archivo > Abrir ... ) para abrir una nueva ventana sin tener que salir y reiniciar la aplicación.
Chris Johnsen
1
@ Chris la suya debería ser una respuesta, tiene más sentido para mí
phunehehe

Respuestas:

89

En cierto sentido, es una convención de UI con historia que se remonta hasta 1984. Dado que Windows y X11 publican la GUI original de Mac, se podría decir que Windows lo hace a la manera de Windows "solo para ser diferente" en lugar de sugiriendo que la Mac es el bicho raro.

En los primeros días de Macintosh, solo podía ejecutar una aplicación a la vez. Era perfectamente razonable que una aplicación se abriera sin ventanas porque siempre tenía una barra de menú visible en la parte superior de la pantalla. Cuando cerró todas las ventanas de una aplicación, tenía sentido mantenerla abierta porque siempre podía usar la barra de menú para crear un nuevo documento o abrir uno existente. Salir del proceso solo porque una ventana estaba cerrada no tenía ningún sentido en ese momento, porque no habría habido otro proceso para enfocarse.

Unos años después, el Macintosh de finales de los 80 avanzó hasta el punto en que había suficiente memoria para tener múltiples aplicaciones abiertas a la vez. Dado que las herramientas para hacer esto tenían que mantener la compatibilidad con las aplicaciones existentes, naturalmente no iban a cambiar las convenciones básicas de la interfaz de usuario y matar aplicaciones sin abrir ninguna ventana. El resultado fue una distinción clara en la interfaz de usuario entre un elemento visual GUI (una ventana) y un proceso de ejecución abstracto (la aplicación).

Mientras tanto, Microsoft había estado desarrollando Windows. A principios de los 90, Microsoft tenía Windows 3.X funcionando bien, y Motif en X11 había sido fuertemente inspirado por el trabajo de Microsoft. Mientras que Macintosh se creó alrededor de la presentación de una interfaz de usuario de aplicaciones, Windows (como su nombre lo sugiere) se basó en la filosofía de que la propia ventana debería ser la unidad fundamental de la interfaz de usuario, con el único concepto de una aplicación en forma de Ventanas de contenedor de estilo MDI. X11 también consideró una aplicación en gran medida sin importancia desde el punto de vista de la interfaz de usuario. Un solo proceso podría incluso abrir ventanas en múltiples pantallas conectadas a varias máquinas a través de una red de área local (muy novedosa).

El problema con el enfoque de estilo de Windows era que no podía hacer algunas formas de interacción del usuario, como abrir con solo una barra de menú, y el usuario no tenía ninguna garantía real de que un proceso hubiera salido realmente cuando las ventanas se habían ido. Un usuario de Macintosh podría cambiar fácilmente a una aplicación que se estaba ejecutando sin Windows para salir o usarla, pero Windows no proporcionó absolutamente ninguna forma para que el usuario interactuara con dicho proceso. (Excepto para notarlo en el administrador de tareas y eliminarlo). Además, un usuario no podía elegir dejar un proceso en ejecución para poder volver a él sin reiniciarlo, excepto para mantener una interfaz de usuario visible del desorden del proceso subir la pantalla y consumir (en ese momento, recursos muy limitados). Mientras que Macintosh tenía un menú de "Aplicaciones" para cambiar, Windows popularizó una "barra de tareas" que mostraba todas las ventanas de nivel superior sin tener en cuenta el proceso que las había abierto. Para las multitareas pesadas, la "sopa de barra de tareas" resultó poco natural. Para usuarios más básicos, la capacidad de actualización sobre lo que calificaba exactamente como una "ventana de nivel superior" a veces era confusa, ya que no había una regla que se pudiera aprender sobre qué ventanas aparecerían realmente en la barra.

A finales de los 90, la GUI de Microsoft era la más utilizada. La mayoría de los usuarios tiene una PC con Windows en lugar de una estación de trabajo Macintosh o UNIX X11. En consecuencia, a medida que Linux crecía en popularidad con el tiempo, muchos desarrolladores provenían de un contexto de uso de convenciones de IU de Windows en lugar de convenciones de UI de UNIX. Eso se combinó con la historia de los primeros trabajos en cosas como Motif que se basa en las convenciones de la interfaz de usuario de Windows, para dar como resultado que los entornos de escritorio modernos de Linux se comporten mucho más como Windows que las cosas clásicas de X11 como twm o Macintosh.

En este punto, el Mac OS "clásico" había seguido su curso con Mac OS 9, y el Macintosh se convirtió en una máquina Unix con agallas muy diferentes en forma de Mac OS X. Por lo tanto, heredó el concepto de interfaz de usuario NeXT de un Dock. En las máquinas NeXT originales, se usaba X11, pero con un conjunto bastante único de widgets y convenciones de interfaz de usuario. Probablemente, el más distintivo de ellos fue el Dock, que era una especie de combinación de iniciador de programas y conmutador de tareas. (El cuadro de diálogo de archivo abierto "multicolumna" que se conoce en OS-X también vino de NeXT, así como de otras cosas visibles. Sin embargo, los cambios más significativos en la transición de OS-X fueron todos invisibles). funcionó bien con el concepto de Macintosh de "Aplicación como elemento fundamental de la interfaz de usuario". Entonces, un usuario podría ver que una aplicación está abierta por una marca en el icono del dock y cambiar a ella o iniciarla haciendo clic en ella. Dado que el OS-X moderno ahora soportaba la multitarea mucho mejor que el Mac OS clásico, de repente tuvo sentido que un usuario quisiera tener todo tipo de cosas ejecutándose en segundo plano, como un software de conversión de video que se apaga en el fondo , una grabadora de pantalla, software VOIP, radio por Internet, un servidor web, algo que habla en respuesta a un comando hablado, etc. Ninguna de esas cosas requiere necesariamente que se abra una ventana visible para tener una experiencia de usuario sensata, y el menú la barra todavía estaba separada de las ventanas en la parte superior de la pantalla, y podía tener un menú directamente en el icono del dock, de modo que el usuario siempre podía interactuar con un programa que no tenía una IU abierta. por consiguiente, abandonar la convención existente de mantener abierta una aplicación, solo para parecerse más a Windows, habría sido vista por la mayoría de los usuarios de Mac como un paso horrible en la dirección equivocada. Hace que varios modos de interacción sean imposibles, sin ningún beneficio real.

Obviamente, algunos usuarios prefieren la convención de Windows, y ninguno de los dos es "demostrablemente correcto". Pero, migrar lejos de algo útil como eso, sin ninguna buena razón, simplemente no tendría sentido. Con suerte, este recorrido por parte de la historia le brinda un poco de contexto que le resulta útil.

wrosecrans
fuente
1
Nit: NeXTSTEP no usó X11. Tenía su propia ventana basada en Display PostScript (que finalmente formó la base de Quartz 2D de OS X, aunque basada en PDF en lugar de PS).
gsnedders
Excepto que todos imitaron al Xerox Alto. Jobs y Gates incluso lo dijeron literalmente. Y X11 / Motif se basó básicamente en todos ellos.
Evi1M4chine
1
Apple da a los desarrolladores la opción de salir de una aplicación después de que se cierre la última ventana. Depende de los desarrolladores hacer esa elección. Aparentemente, muchos desarrolladores prefieren crear sus aplicaciones de esa manera.
SpaceDog
20

La ventana no es la aplicación en MacOS, en MacOS la ventana se conecta a la aplicación. Es por eso que la aplicación no sale cuando cierra una ventana.

En Windows, la ventana es la aplicación, es por eso que la aplicación debe salir al presionar el botón de salida.

En Linux, el desarrollador decide qué arquitectura les gusta usar, en ambos sentidos es posible ...

Johan
fuente
44
En Windows, ambas formas son posibles también ...
Chris Down
1
Y si está utilizando Cocoa para crear aplicaciones, puede elegir si su aplicación se cierra cuando se cierra la última ventana.
Blacklight Shining
Además, las Preferencias del sistema se cierran cuando se cierra su ventana. (Puede haber otras aplicaciones incluidas que hacen esto, pero esa es la única en la que puedo pensar en este momento.)
Blacklight Shining
@ChrisDown: ¿Cómo interactuaría uno con una aplicación sin una ventana en Windows? El acoplador del sistema?
Evi1M4chine
15

Esto es específico de la aplicación. Por ejemplo, la aplicación Preferencias del sistema no renunció al hacer clic en el botón rojo. Sin embargo, la mayoría de los programas solo cierran la ventana (y los documentos dentro) cuando intenta "cerrarla". Supongo que la idea detrás de esto es hacer que las cosas sean más rápidas cuando quieras volver a usar la aplicación.

Si quiero cerrar, quiero cerrar. Período.

Estoy de acuerdo, así que uso atajos de teclado, Cmd+ wpara cerrar la ventana y Cmd+ qpara salir realmente. La mayoría de las aplicaciones tienen esto implementado. Una alternativa es hacer clic derecho en el icono de la aplicación y elegir "Salir", que es mucho más lento.

phunehehe
fuente
8

Sí, esto es muy, muy molesto.

Mientras tanto, esta aplicación debería ayudar:
http://www.carsten-mielke.com/redquits.html

De la descripción:

¿Alguna vez ha tratado de cerrar una aplicación con su botón rojo y se preguntó por qué todavía está abierta? RedQuits cambia esto. Todos los programas ahora se cierran y cierran todas las ventanas abiertas si hace clic en el botón rojo.

Tamas
fuente
Solución interesante
Alguien todavía te usa MS-DOS el
1
Las personas que usan esta solución alternativa probablemente deberían cambiar a Windows o aprender la filosofía de OS X de hacer las cosas. No quiero comenzar una guerra de llamas aquí, pero esto generalmente se aplica cuando alguien quiere comportar un producto como otro. Es bueno que exista la herramienta. Probablemente hay un par de personas que lo usan.
Rafael Bugajewski
2
Y esta es la única respuesta correcta, ¡GRACIAS @Tamas! La regla es que la computadora y el software deben ser flexibles y ajustarse a mis necesidades y hábitos, ¡no al revés!
Marecky
3

La razón de esto se debe a lo que es una ventana. En Microsoft Windows, cada aplicación tiene su propia ventana, donde en Mac OSX y versiones anteriores de Mac OS cada archivo o documento tiene su propia ventana. Cuando "cierra Safari" no está cerrando [saliendo] de la aplicación Safari sino simplemente cerrando el archivo (http://unix.stackexchange.com). Del mismo modo, si cierra la ventana de Pages (la aplicación de procesamiento de texto de Apple), está cerrando el documento en el que estaba trabajando pero la aplicación Pages todavía se está ejecutando. Si desea salir de la aplicación, use CMD + Q. Algunas aplicaciones que no son de creación de archivos siguen este patrón, ya que pueden tener múltiples ventanas abiertas o ninguna en absoluto y seguir funcionando (iTunes).

Pasos alternativos: presione CMD + Q para salir de la aplicación en lugar de cerrar la ventana [CMD + W] Haga clic secundario en el ícono en el dock (CTRL + clic o botón derecho del mouse o toque con dos dedos en el trackpad / mouse mágico) y elija déjalo de esa manera.

Lamentablemente, esto es solo una pequeña cosa que hay que hacer para desaprender Windows y pensar en Mac: D

vyse
fuente
Lo obtuve después de unos meses. :) En realidad, ambos enfoques tienen sentido.
Alguien todavía te usa MS-DOS el
0

Al principio pensé que también era una mala idea, pero realmente, ahora creo que es increíble. En realidad no me gusta ese comportamiento estúpido de que "X" termina la aplicación. Es muy importante tener en cuenta que es un enfoque mucho mejor para aplicaciones basadas en documentos, como Photoshop o editores de documentos, de hecho, ahora siempre me olvido de recordar que "X" finaliza la aplicación (como Photoshop), y luego necesito gastar más tiempo de inicialización. La aplicación simplemente está ahí esperando sus nuevos documentos, ¿por qué debería terminarla? Ok, eso es un problema de memoria, pero hoy en día la RAM es tan barata que no importa en absoluto.

zzz
fuente