OS X les décisions de conception. Mettre fin à l'application sur la dernière fenêtre à proximité?

Contrairement à Windows, GNOME et la plupart des autres GUI, OS X les programmes d'application ne sont pas tous d'y mettre fin si la fenêtre principale (ou toutes les fenêtres) de l'application sont fermés.

Par exemple, lancez Firefox, Safari, Word, ou plus document en fonction des applications. Cliquez sur le point rouge dans le coin ou de type cmdW pour fermer la fenêtre. Vous pouvez voir que le menu de ce programme est toujours actif, et le programme est toujours en cours d'exécution. Avec OS X débutants, parfois, vous verrez des dizaines de ces sans fenêtre zombies en cours d'exécution et ils se demandent pourquoi leur ordinateur devient plus lent.

Avec un document en fonction des programmes, il existe un certain sentiment de ne pas l'arrêt de l'application si elle n'a pas de fenêtres. Par exemple, avec Safari ou Word, vous pouvez toujours taper CmdN et obtenir une nouvelle fenêtre de document pour quoi que l'application a été conçue pour faire: naviguer sur le web (Safari) ou tapez un nouveau document (Word).

Apple est mélangé avec leur philosophie de conception sur ce. Fermer la dernière fenêtre fermée et certains ne le font pas. Les applications tierces sont encore plus mixte.

Il y a d'autres applications qui se ferment lors de leur fermeture rouge bouton est cliqué. Préférences système, le Dictionnaire, le Mac App Store, iPhoto et Calculatrice n'fin lorsque la seule ou la dernière fenêtre est fermée. iCal, Carnet d'Adresses, iTunes, Lecteur DVD ne se terminent pas.

Ce que je trouve particulièrement gênant, c'est les applications qui n'ont pas de logique "Nouveau Document" ou "Ouverte" en fonction pourtant, ils ne mettent pas fin lorsque la fenêtre de document est fermé. Exemple: le feu jusqu'à iTunes ou un Carnet d'Adresses et de mettre fin à la fenêtre principale. Il y trouve un zombie avec pas de fenêtre et pas de fonction autre que manuellement en sélectionnant "Quitter".

Il est facile de fermer l'application après la dernière fenêtre se ferme. Cacao vous donne même la notification de cet événement. Juste ajouter ceci à votre délégué d'application:

  - (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)sender
{
    return YES;
}

Ma question est la suivante: Est-il une raison que je ne devrais PAS mettre fin à ma demande après la dernière fenêtre se ferme? Pourquoi est-ce si variable sur logiciel OS X? À moins que l'application dispose d'un "nouveau" ou "ouvrir", ou quelque autre de comprendre clairement la raison de ne pas résilier sans fenêtre ouverte, l'incapacité à mettre fin semble être un bug pour moi.

  • Pourquoi dites vous", ils se demandent pourquoi leur ordinateur devient plus lent'? Un inactif application utilise pas de ressources.
  • Juste une petite remarque: il est parfaitement sain de raison de vouloir lancer iTunes sans fenêtre, j'espère que vous comprenez ce que c'est. Carnet d'adresse est bizarre, si.
  • Norum: "Un inactif application utilise pas de ressources" Qui sont nouvelles pour moi. Démarrer un tas de programmes, y compris le Terminal. Dans le Terminal, tapez top Sûr ressemble à ces programmes utilisent les ressources de moi! Semble que pour accélérer les choses si je renonce à quelques programmes, même ceux qui n'ont pas été active pendant des jours. Comme je tape ce que Photoshop est à l'arrière-plan. Je n'ai pas eu un document ouvert ou avait-elle dans des jours. C'est à l'aide de 5% du CPU et 233MB de résident de mémoire. Multiplier par 10 les programmes assis là et qui est en effet notable sur les performances. Ai-je raté quelque chose?
  • Quand j'ai Safari ouvert pendant un certain temps avec de nombreuses fenêtres, je peux fermer toutes les fenêtres et il laisse toujours mon mac est lent. Safari est parfois de manger 500 mo ou plus, sans ouvrir les fenêtres. Absolument, cela laisse visible la lenteur jusqu'à ce que j'ai fait fermer Safari, à quel point ma mémoire "utilisation" des gouttes incroyablement.
  • sans doute l'utilisation des ressources par les "inactifs" programmes est le bug, alors, ne pas l'échec pour les éliminer lors de leur dernière fenêtre est fermée.
  • Outre le partage de la musique ou de trouver votre branché l'iPhone, quelles sont les raisons pour exécuter iTunes sans fenêtre? Je suppose que mon point de vue est que si il est clair et compréhensible pour exécuter une application sans fenêtre, c'est très bien de ne pas mettre fin. Si il y a un "Nouveau" ou "Ouvrir" ou par une autre claire et compréhensible de la fonction, il est probablement OK pour ne pas mettre fin. Toute autre application doit se terminer avec la dernière fenêtre, sans exception.
  • D'être inactif ne signifie pas qu'il ne devrait pas être l'utilisation des ressources. Tout programme va utiliser la RAM si elle est ouverte, et la fermeture de windows n'est pas toujours aider, car il pourrait ne pas libérer une assez grande zone contiguë. De nombreuses applications ne sont pas les utiliser tout le temps processeur tandis que les inactifs, mais certains le sont.
  • Norum: la Plupart des "inactifs" programmes sur mon système sont actuellement à l'aide de quelques résidents de la mémoire et de certains pays non-zéro de la quantité de CPU. Carnet d'adresses, par exemple, est à l'aide de 0,2% de CPU et 49 mo; l'Aperçu (sans documents) est 0 UC, mais à l'aide de 13MO. Un pour cent du PROCESSEUR ici, un MO là, et bientôt vous un avis... BTW-Ma question ici n'est pas de la performance. Ma question est au sujet de la conception acceptable de modèle.
  • D'accord. Mais alors peut-être une application qui n'a pas à s'ouvrir sans windows serait encore mieux de clôture juste pour éviter la possibilité de bugs consommation de ressources? Il y a toujours une surcharge simplement pour avoir votre processus existent, même si elles ne font pas tout ce qui est "utile", n'est-il pas?
  • Je faisais allusion à l'écoute de la musique.
  • Duh! Je suppose que je n'avais pas pensé à ça! Il n'a encore un sens pour moi à la fin du programme, à MOINS qu'il y est une certaine fonction de reste à disposition, comme jouer de la musique, ouvrir un nouveau doc, etc...

InformationsquelleAutor dawg | 2011-03-29