Question
Quelles sont les différences entre un Cadre de génération et un non-Cadre à construire (à savoir, UNIX standard construire) de Python sur Mac OS X? Aussi, quels sont les avantages et les inconvénients de chacun?
La Recherche Préliminaire
Voici les informations que j'ai trouvé avant de poster cette question:
-
[Pythonmac-SIG] Pourquoi est un Framework version de Python nécessaires
- B. Grainger: "je me souviens qu'un Framework version de Python est nécessaire si vous voulez faire quelque chose avec le natif de Mac de l'interface graphique. Est ma compréhension correcte?"
- C. Barker: "Assez bien (pour avoir accès à la Mac de l'interface utilisateur, une application doit être dans une bonne application Mac bundle. Le Cadre construire des fournitures."
-
Apple Developer Connection: Cadre De Définition
- "Un framework est un ensemble (un répertoire structuré) qui contient une dynamique partagée, la bibliothèque avec les ressources associées, telles que la plume de fichiers, des fichiers image et des fichiers d'en-tête. Lorsque vous développez une application, votre projet de liens vers une ou plusieurs cadres. Par exemple, l'application iPhone de projets en lien par défaut à la Fondation, UIKit, et les Graphiques de Base des cadres. Votre code d'accès à la capacité d'un cadre par le biais de l'interface de programmation d'application (API), qui est publié par le cadre de ses fichiers d'en-tête. Parce que la bibliothèque est dynamique partagée, plusieurs applications peuvent accéder au code de la structure et des ressources simultanément. Le système charge le code et les ressources d'un cadre en mémoire, en tant que de besoin, et partage une copie d'une ressource parmi toutes les applications."
-
Cadre Guide de Programmation: Quels sont les Cadres?
- "Les cadres offrent les avantages suivants par rapport à la statique des librairies et d'autres types de dynamique bibliothèques partagées:
- Les cadres du groupe liées, mais distinctes, les ressources. Ce groupement est plus facile à installer, désinstaller, et de localiser ces ressources.
- Les cadres peuvent inclure une plus grande variété de types de ressources que les bibliothèques. Par exemple, un cadre peut prévoir une analyse des fichiers d'en-tête et de la documentation. Plusieurs versions d'un cadre peut être inclus dans le même bundle. Cela permet d'être compatible avec les anciens programmes.
- Une seule copie d'un cadre de lecture seule en ressources résider physiquement dans la mémoire à un moment donné, quel que soit le nombre de processus à l'aide de ces ressources. Ce partage de ressources réduit l'empreinte mémoire du système et permet d'améliorer les performances."
- "Les cadres offrent les avantages suivants par rapport à la statique des librairies et d'autres types de dynamique bibliothèques partagées:
Arrière-plan
Avant Mac OS X 10.6 Snow Leopard, je n'avais pas pensé beaucoup à ce sujet, que je ne serait tout simplement de télécharger et d'installer le Python 2.6.2 Mac Image du Disque d'installation, qui est un framework, et de vaquer à mes affaires à l'aide de virtualenv, pip, etc. Cependant, avec les changements dans Snow Leopard 64 bits, gcc, etc., J'ai remarqué que certaines questions qui ont fait de moi voulons construire/compiler Python 2.6.2+ moi-même à partir de la source, ce qui m'amène à ma question sur les différences et les avantages/inconvénients de la construction de Python comme un MacOSX|Darwin cadre.