8
votes

Comment un programmeur Windows peut-il être suffisamment productif sur Mac OS X?

J'utilise MacBook Pro pendant quelques mois à la maison et je me demandais s'il y a un bon livre ou un bon guide qui peut m'aider à être un meilleur programmeur sur Mac. Peut-être que Mac-équivalent de Début de la programmation Linux . Note Je ne cherche pas de ressource sur la procédure à programmer une application Mac, mais je suis à la recherche d'un guide plus général d'utilisation de Mac pour l'environnement de développement général.

En tant qu'appount, je suis un programmeur Windows par jour. J'ai également fait des linux et des BSD au fil des ans, ESP à l'école, comme la programmation de socket, les graphiques, faire installer type. À la maison, je vais faire Java, Scala, PHP, etc. sur Mac.

Jusqu'à présent, j'utilise Eclipse, Quicksilver et Textmate. VMware Fusion, Xcode et NetBeans sont mis en place, mais je ne les utilise pas. Un commutateur DVI KVM est connecté au clavier réel, au trackball et au moniteur. Récemment séjourné jusqu'à la fin des combats avec Macports, et j'ai compris que j'avais besoin de x86_64. Le plus lutte que j'avais eu était de configurer PHP. Je ne sais pas pourquoi ils ne sont pas expédiés avec la bibliothèque MySQL et GD. Je l'ai éventuellement compris sur Googling et construisit les extensions de la source. J'ai le sentiment que je n'ai pas eu le mémo et je n'ai pas lu un guide de base sur la façon de devenir programmeur sur Mac, comme le fonctionnement de l'architecture entière. Comment un programmeur Windows peut-il être suffisamment productif sur Mac OS X?

associé : Configuration d'un Mac pour les programmeurs

Modifier : le type d'application spécifique que je veux développer n'a pas vraiment d'importance à mon avis. Cela pourrait être Java, Scala, PHP comme je l'ai mentionné ou cacao, C ++ ou autre.

Que que je recherche est un livre, une ressource, des conseils sur la manière d'être programmeur plus efficace sur Mac, de préférence quelque chose au-delà "Installer XYZ".


6 commentaires

Qu'est-ce que vous voulez réellement programmer? Applications Mac? Scripts pour automatiser les tâches?


Je ne comprends pas la signification du clavier / trackball / moniteur ...


Pourquoi supposez-vous que Mac OS X expédié avec MySQL et GD Bibliothèque? Windows ne fait pas?


@Harto, "Obtenez un clavier et une souris décentes" a été suggéré dans l'autre question et je suis totalement d'accord. Je ne suis entièrement basculé vers Mac uniquement après avoir accusé le clavier ergonomique Microsoft Natural® ergonomique 4000, une boule de trackball et un second moniteur utilisant KVM.


@Brock Woolf, ce n'est pas le mysql ou le gd lui-même qui était difficile. C'est le processus d'installation des extensions PHP pour eux dans le PHP intégré du léopard que j'ai trouvé douloureux, comparé à la réalisation similaire dans Windows ou Distro Linux moderne.


@ EED3SI9N C'est parce que vous ne devez jamais modifier le serveur Web de Leopard inBuget. Entendu parler de MAMP?


6 Réponses :


2
votes

Si vous souhaitez écrire quelque chose de plate-forme inter-plate-forme, il peut être très utile d'avoir une machine virtuelle pour les tests. Quand sous Linux, j'ai toujours utilisé Virtualbox , et cela fonctionne également sur OS X.

Également, comme pour le choix de l'IDE, beaucoup de cela revient à votre préférence. Eclipse est bien parce qu'il y a un plugin pour presque tout pour cela. Mon expérience avec Textmate est limitée, mais mon groupe d'utilisateurs de rubis locaux jure par elle.

Enfin, une suggestion pour pas seulement Mac, mais toute plate-forme vraiment. Apprenez votre HOTKEYS , configurez de nouveaux pour des choses que vous faites courez couramment et utilisez-les fréquemment . Ne pas avoir à prendre vos mains sur le clavier pour cliquer sur une souris à travers quelques menus peuvent vraiment améliorer la productivité. Cela peut prendre un peu de temps pour qu'ils se développent sur vous, mais une fois qu'ils deviendront une seconde nature, vous vous demanderez comment vous avez vécu sans eux.


3 commentaires

La virtualisation peut également être lente et je ne pense pas que l'auteur demandait comment utiliser Windows sur son Mac, mais plutôt comment s'habituer à son Mac.


Je ne dis pas qu'il s'agit de programmes dans une machine virtuelle. Je dis que s'il écrit quelque chose (dans OS X) qui peut être utilisé dans différentes plates-formes qu'une machine virtuelle est une chose très utile dans le test.


Faites fonctionner votre ordinateur comme vous le souhaitez. Si cela signifie installer une machine virtuelle avec un système d'exploitation différent, allez-y. Vous pouvez être productif de cette façon, par rapport à vous avoir à se recycler de faire des choses d'une autre manière aléatoire.



2
votes

J'ai une situation similaire comme la vôtre. J'utilise Windows pour le développement et environ un an a acheté un MBP pour la maison (comme je me suis déplacé vers un bureau). Je trouve qu'il est vraiment difficile d'obtenir un travail réel sur mon MBP. D'une manière ou d'une autre, je suis habitué à l'environnement Windows avec deux écrans. Mais que cela ne vous empêche pas. Un couple de logiciels que je suggère que vous devriez obtenir sont:

  1. Transmit - Bon client FTP
  2. MAMP - exécute un serveur Web presque hors de la case. Bon pour le développement de base
  3. Quicksilver - aide à la recherche rapide des applications
  4. espaces avec des gestes (configurez vos gestes pour passer d'un écran à un autre, j'utilise trois doigts glissant. C'est incroyable)
  5. Entourage - pour email
  6. Terminal - Pour SSH (PUTTY Alternative) (Inclus)
  7. Dreamweaver / Becbedit / Textmate (tous assez décents. Mais j'adore Editplus sur Windows. Pas un fan d'IDE)

    Je suppose que votre question ne concerne pas l'apprentissage du cacao et plus d'être plus efficace en utilisant un Mac. Eh bien, les outils ci-dessus pourraient vous aider.

    Malheureusement, votre question n'est pas très claire quant à ce que vous voulez vraiment.


0 commentaires

2
votes

Vous semblez vouloir avoir une vue d'ensemble de la fonctionnalité Mac OS X au niveau du système, plus que des recomentions sur les outils et ainsi de suite. Si tel est le cas, je commencerais avec le (très basique) Architecture du système Mac OS X Guide d'Apple, puis passez à Mise en route avec Mac OS X , qui devrait vous donner assez d'une vue d'ensemble pour commencer.

Ce n'est pas clair de votre question ce que vous avez l'intention de faire en réalité faire avec votre temps de programmation, mais si vous décidez de persuader le développement de cacao / OS X, je vous recommande Programmation de cacao pour Mac OS X par Aaron Hillegass.


0 commentaires

5
votes

Avoir converti de Windows en Mac OS X il y a environ cinq ans, je me trouve souvent penser à la même chose. Je ne peux tout simplement pas être productif sur Windows (autant, je peux être productif) comme je peux sur Mac OS X.

Pour être honnête, il existe de nombreuses petites différences entre Mac OS X et Windows. Je trouve la plus grande raison pour laquelle les gens pensant comme ceci (à cela ne s'applique normalement qu'aux joueurs et développeurs) est qu'ils essaient d'utiliser le Mac comme une machine Windows. Vous devez apprendre à accepter que vous devez utiliser la clé de commande, pas la clé de contrôle, etc.

On dirait que vous utilisez un Mac parce que vous devez plutôt que vous le souhaitez. C'est vraiment une grande plate-forme bien meilleure que les fenêtres une fois que vous vous y habituez.

Je pense que beaucoup de programmeurs Windows viennent à Mac et n'essayent pas de l'apprendre correctement car ils sont complaisants pensant qu'ils savent tout cela parce qu'ils ont "utilisé des fenêtres toute leur vie". Je suppose qu'une fois que vous avez découvert Spotlight, exposent, Raccourcis clavier Mac OS X , etc. Vous trouverez votre auto-être beaucoup plus productif que vous étiez jamais sur Windows ... et c'est en fait un système d'exploitation amusant à utiliser.

Checkout Certaines des meilleures applications MAC Vous pouvez obtenir ici et ici . Vous pouvez également effectuer une recherche sur "Top 100 applications Mac".

En outre, j'ai remarqué que vous essayiez de configurer une sorte de serveur Web directement dans Mac OS X. Il est expédié avec un, mais si vous allez ajouter MySQL et d'autres extensions, je ne voudrais pas aller à la route MacPorts. Obtenez VMware Fusion ou VirtualBox (open source) et exécutez le serveur dans une machine virtuelle. Beaucoup plus propre. J'ai un Subversion / Trac FreeBSD VM qui gère mon contrôle de version locale.

Je voudrais ajouter que si vous n'utilisez pas actuellement xcode, vous devez certainement l'apprendre et l'utiliser dès que possible. C'est une IDE beaucoup plus agréable à utiliser que Visual Studio et cela rendra votre vie beaucoup plus facile.

N'oubliez pas que vous avez probablement passé des années sur des sites d'aide Windows, vous aurez à petit degré de le faire avec le Mac. Chaque fois que vous avez un problème à propos de l'utilisation du Mac, posez une question sur ServerFault . Nous sommes tous plus que désireux de vous aider.

bonne chance.


4 commentaires

J'ai dû échanger les significations de la commande et de contrôler sur mon Mac afin que je puisse rester sain d'esprit tout en travaillant sur Mac / Linux / Windows.


Je trouve que la clé de commande au centre du clavier facilite la tâche d'atteindre l'autre clé dont j'ai besoin d'appuyer en combinaison. Mais maintenant, je peux passer entre les raccourcis du clavier Mac et Windows et je n'ai même pas à y penser. C'est vraiment automatique pour moi.


+1 J'ai été "converti" vers le Mac OS de l'année dernière lorsque j'ai acheté mon premier Mac (l'un des avantages de l'UNIBOPOR MAC). J'ai aussi appris toutes les différences de Windows (assez rapidement). Il n'y a rien de retourner pour moi, à ce stade.


@Ryan je sais que c'est beaucoup de plaisir à être un utilisateur Mac. Vous ne pouviez pas me faire revenir à Windows si vous avez essayé. Et c'est après avoir utilisé tout ma vie :)



1
votes

Fondamentalement, vous pouvez appliquer toutes vos connaissances Linux / Unix que vous avez déjà au Mac. Si vous utilisez le terminal (/appplications/utiers/Traitiers/termin.app), vous pouvez exécuter toutes vos commandes UNIX préférées. Mac a une commande spéciale appelée "Open" qui équivaut à la commande "Démarrer" Windows (utilisée pour lancer des programmes et des fichiers). Vous pouvez également utiliser "OUVERT -A" pour ouvrir une application par nom (par exemple "Ouvrir -a Finder").

Vous voudrez peut-être reconsidérer Xcode. Xcode s'ouvre plus rapidement que Eclipse et offre une très bonne mise en évidence de la syntaxe, une correspondance de la corset, une indentation de bloc, et plus encore. XCode ne doit pas nécessairement être utilisé comme IDE, vous pouvez également l'utiliser comme éditeur de code, tout comme vous utilisez actuellement Textmate.


2 commentaires

Au lieu du terminal intégré.app, je vous suggérerais Iererm - ivererm.sourceforge.net - Il ajoute beaucoup de belles choses comme une borne à onglets, des effets de transparence, etc.


Ouais, j'utilise Ivererm aussi bien sur ma machine tigre. Cependant, la borne intégrée est légèrement plus snappe et, puisque Leopard, prend en charge les onglets.



1
votes

Pour l'édition de code (et tout le reste), essayez Aquamacs ( http://www.aquamacs.org ). C'est une construction de Cocoa-Native d'Emacs, et elle est brillante pour toute tâche de programmation.


0 commentaires