Wie sollte ich meine Programmierumgebung für die PHP-, mySQL- und JavaScript-Entwicklung einrichten?

Ich habe Probleme, eine komfortable Programmierumgebung zu finden, und ich hoffe, dass jemand das gleiche Problem hatte. Auf meiner Windows-Box im Büro habe ich meine ideale Programmierumgebung gefunden, die ich wirklich mag. VS2010 oder Eclipse, Notepad++, WinScp, Fireftp ist oft alles was ich brauche.

Auf meinem Macbook Pro habe ich jedoch noch nicht diese Umgebung gefunden, die nur "Klick" sagt.

Was ich suche, ist eine Lösung, die "IntelliSense" mit PHP, SSH-Browsing wie WinScp und Windows über die Hälfte des Bildschirms wie Windows 7 verarbeiten kann.

Ich habe eine Lösung für den letzten Punkt gefunden, aber es gab viele Fehler, so dass es deaktiviert wurde. Aus irgendeinem Grund finde ich Eclipse auf meinem Mac etwas langsam, und ich habe auch keine gute Möglichkeit gefunden, einen Browser für den Remote-Server per ssh einzubinden.

Ich mache dieses Community-Wiki, weil ich mich wirklich darauf freue zu sehen, wie jeder seine Umgebung einrichtet. Ich bin mir sicher, dass einige Edelsteine ​​zu finden sind.

Auf meinem Mac entwickle ich hauptsächlich mit PHP, mySQL und Javascript.

Wenn Ihnen die Win-Umgebung wirklich gefällt und Sie keine Mac-spezifischen Sprachen verwenden, warum verwenden Sie Win nicht auf dem Mac? Sie können eine VM booten und zur integrierten Ansicht wechseln (Windows-Teil von Mac OS). Ihr Arbeitsordner kann ein nativer OS X-Ordner sein (in der Win-VM bereitgestellt).
Weil ich irgendwie Mac OS auf meinem MacBook mag. Es ist ein nettes Laptop-Betriebssystem für mich. Windows ist für mich eher ein Desktop-System (hauptsächlich, weil ich nach vielen Jahren der Arbeit mit mehreren Bildschirmen und Hochleistungsprozessoren daran gewöhnt bin, dies zu glauben).
Oh, und ich würde gerne mehr spontan programmieren und ich mag das Konzept nicht, zwei Betriebssysteme auf meinem Laptop zu verwenden. Wenn ich keine ausreichend gute Lösung finde, wird dies natürlich meine Worst-Case-Lösung sein.
Dies ist meiner Meinung nach eine der besten subjektiven Fragen, die wir bisher auf der Website gestellt haben.
Schön, dass es dir gefallen hat! Es wärmt mein Herz, so viele tolle Antworten zu sehen.

Antworten (10)

Ich habe ungefähr 7 Jahre Erfahrung im Programmieren in einer Windows-Umgebung, bevor ich Anfang dieses Jahres meinen ersten Mac bekam. Ich weiß also genau, wovon du sprichst. Ich war sehr an die Kombination von Visual Studio für c++ und .net, Notepad++ für .bat und andere Scripting- und Lightweight-Aufgaben und gelegentlich etwas Eclipse für Java gewöhnt.

Als ich anfing, meinen Mac zu verwenden, war ich frustriert über das, was ich als Mangel an gleichwertiger Software für OS X sah. Ich habe verschiedene IDEs und Textbearbeitungslösungen ( Eclipse , Aptana , Textmate , Smultron , Fraise usw.) ausprobiert, aber wie Sie haben gesagt, nichts hat wirklich "Klick" gemacht.

Irgendwann habe ich jedoch aufgehört, nach Ersatz zu suchen, und angefangen, die Tools zu verwenden, die üblicherweise auf *nix-Maschinen verwendet werden. Besonders vim. Ich habe festgestellt, dass sich mein Horizont erweitert hat, als meine Erwartung, Softwareäquivalente zu allem zu finden, was ich unter Windows verwendet habe, weggefallen ist. Ich habe das Gefühl, dass mein Interesse am Programmieren erneuert wurde, weil ich eine völlig andere Art zu arbeiten und über den Prozess zu denken lerne. Ich verwende die Befehlszeile viel mehr als jemals zuvor in der Vergangenheit, und dies hat sich sogar in meiner Windows-Entwicklung in neue Techniken niedergeschlagen (wie die Verwendung von Powershell- und Befehlszeilenversionen von Tools anstelle der GUI).

Bevor ich anfing, meinen Mac zu verwenden, steckte ich in einem riesigen Programmiertrott, aber ich finde, dass der Zwang, meinen Prozess und meine Tools auf eine andere Art und Weise zu betrachten, wirklich Talente und Interessen hervorbringt, von denen ich vorher nicht wusste, dass ich sie habe. Ich codiere in Python und C++ anstatt in Javascript und C#, in einem der ältesten existierenden Editoren, und ich liebe es.

Amen zum Erlernen und Verwenden der CLI.
Schöne Geschichte. Ist die Lernkurve dann weniger steil als gemeinhin angenommen? Ich bin nur frustriert von VIM, also benutze ich immer nano, wenn ich auf einer Linux-Box ohne Gnome/kde/was auch immer bin. Mir gefällt deine Herangehensweise, ich persönlich schätze mein persönliches „Wachstum“ als Entwickler sehr hoch und daher würde ich gerne auch deine Herangehensweise ausprobieren.
@Phil: Ich würde nicht wirklich sagen, dass es leicht zu lernen ist. Abhängig von Ihrer Situation wäre mein Rat, so etwas wie das zu tun, was @mankoff in den Kommentaren vorgeschlagen hat, und dies mit dem Erlernen der neuen Tools zum Spaß zu kombinieren. Ich habe nicht einfach meine Windows-Umgebung fallen gelassen und sofort angefangen, vim für alles zu verwenden. Es ist eine Art Babyschritt.. begann damit, dass ich in meinen Windows-Computer remotete, um meine professionelle Arbeit zu erledigen, während ich nach und nach Vim, Python, Bash usw. auf meinem Macbook für meine eigenen persönlichen Projekte lernte.
@Phil: Es ist ungefähr 6 Monate her, und erst kürzlich (letzte Woche) habe ich in meiner Windows-Umgebung auf vim umgestellt. Seltsamerweise hatte ich endlich einen Punkt erreicht, an dem sich die Verwendung von Notepad ++ und dergleichen "falsch" anfühlte, so wie sich vim zuvor seltsam angefühlt hatte. Dann weißt du, dass es an der Zeit ist, umzusteigen :) Ich denke, der Hauptpunkt ist, es langsam angehen zu lassen und nicht zu versuchen, dich zu überstürzen. Sie werden eher weitermachen, wenn Sie nicht erwarten, dass Sie alles auf einmal wissen, und Sie sich nicht stressen, indem Sie sich zwingen, für wichtige Projekte Tools zu verwenden, mit denen Sie noch nicht vertraut sind
@Phil: ein spezieller Vorschlag ... Holen und verwenden Sie MacPorts für die Installation und Wartung all Ihrer Tools. Und versuchen Sie, alle Installationen zu dokumentieren, die Sie von Tools und dergleichen machen, wenn Sie Macports nicht verwenden ... Sie werden mir später danken, wenn Sie sich nicht erinnern können, warum sich eine bestimmte Binärdatei in /usr/bin befindet, und Sie sich nicht daran erinnern, sie installiert zu haben , würde es aber gerne mit MacPorts oder einem anderen Paketmanager aktualisieren :)
MacVim ist eine schöne Version von gvim, ähnlich wie vim unter Windows oder gvim unter Linux. Mit ein wenig kreativem Soft-Linking können Sie die MacVim-Version von der Befehlszeile aus verwenden, um die Standard-Vim zu ersetzen, oder durch Eingabe von mvim die MacVim-App mit Dateien öffnen. Das Beste ist, dass Ihr Editor in der Befehlszeile oder mit einer Fensteroberfläche auf allen möglichen Betriebssystemen verfügbar ist. Ich verbringe Stunden damit, in Hosts bei der Arbeit zu ssh'en, indem ich vim in der Befehlszeile verwende. Manchmal verwende ich das netscp vim-Plugin, um Dateien von den Hosts auf meinem Büro-Mac zu öffnen. Es sind alle die gleichen Tastendrücke und Plugins und Farbschemata.

Ich verwende meine eigene Variante der IDE zum Codieren:

Als ich PHP gemacht habe, habe ich hauptsächlich Zend Studio verwendet , das auf Eclipse basiert.

Daneben verwende ich Eclipse selbst (aber ich hatte nicht Ihr Problem mit der Geschwindigkeit) oder NetBeans (es war wirklich gut).

Und manchmal verwenden Sie Vim oder MacVim .

Ich fand TextMate mit einem PHP-Completion-Bundle und einem FTP+SSH-Bundle ziemlich solide. Sie erhalten alles, was Sie sich wünschen, mit Ausnahme der Fensterverwaltung, und wie @mankoff feststellte, gibt es dafür viele Möglichkeiten. Nicht aufgeführt von ihm ist HyperDock , das sowohl das Einrasten von Fenstern als auch die Fenstervorschau vom Dock aus verarbeitet.

Wenn Vim als Lösung angegeben wird, sollte Aquamacs meiner Meinung nach auch in Betracht gezogen werden. Es ist eine Version von Emacs, die so konfiguriert ist, dass sie OS X ähnlicher ist. (Beachten Sie die üblichen vi/Emacs-Argumente)

Emacs enthält mehrere Modi, die die Programmierung unterstützen.

Emacs hat die vi-Aufteilung zwischen dem Einfügen von Text und der Textmanipulation nicht, was ein Vorteil von Aquamacs sein könnte, wenn Sie Nano aus diesem Grund verwenden.

Irgendwelche Besonderheiten, die Sie mehr empfehlen als die anderen?
Ich benutze keinen von ihnen. Ich verwende aFloat und lasse Fenster transparent werden, wenn sie nicht verwendet werden.
@Phil: Ich benutze Shiftit, aber ich arbeite nur auf einem Laptop-Bildschirm, also habe ich nicht viele Anforderungen an diese Art von Anwendung.
Ich habe gerade eine neue Seite gefunden, die ein paar mehr auflistet ... alternativeto.net/software/shiftit

Ich habe eine Kombination aus Eclipse und TextMate verwendet. TextMate ist mir schnell ans Herz gewachsen, zumal ich von der Prämisse ausgegangen bin, einen kostenlosen Editor zu finden, es war einfach sehr ordentlich. Ich verwende VI für schnelle Befehlszeilenbearbeitungen.

TextMate hat eine schöne SCM-Integration, ausschnittsbasierte Vervollständigung, großartige Hervorhebung und Faltung. Es hat auch viele Hilfsskripte und ein wirklich gutes System zum Anpassen oder Hinzufügen von Sprachen. Es fehlt jedoch, wenn Sie eine Codebasis durchsuchen möchten - keine Indizierung. Für diese Art der Indizierung und schweren Autovervollständigung wechsle ich zu Eclipse. TextMate ist schnell und leicht, ähnlich wie Np++ unter Windows. Das Erweitern von Textmate kann mit einfachen Skripten erfolgen - Ruby, Shell und andere.

Eclipse kennen Sie bereits - einfach herunterladen und entpacken. Schwer, etwas langsam, aber großartig zum Durchsuchen von Quellen.

Mit dem SSHFS-Vorschlag von mankoff werfen Sie einen Blick auf macfusion - praktisches Setup für Fuse-Dateisysteme.

Ich werde empfehlen:

  • MacVim - es ist ein großartiger Editor, extrem leistungsfähig und verwendet dieselben Plugins und Konfigurationsdateien auf MacOS wie auf einem PC oder Linux. Dies ist mein Haupteditor bei der Arbeit und ich mache ungefähr 50% meiner Codierung zu Hause damit.
  • TextMate - nur MacOS, obwohl es jetzt einige Klone für Windows gibt. Auch sehr flexibel und leistungsfähig, aber nicht die schnellste oder leistungsfähigste beim Suchen/Ersetzen. Es ist sehr einfach, Snippets und Tab-Vervollständigung einzurichten. Ich empfehle, sich die Videos anzusehen, um zu sehen, was es tun kann. Es ist kommerziell und hat seit einiger Zeit keine Verbesserungen erfahren, aber es ist solide. Wenn ich experimentiere oder Fragen für Ruby-Code auf StackOverflow beantworte, verwende ich TextMate.
  • Komodo Edit - Ziemlich nützlich. Ich benutze es nicht so oft wie die anderen beiden, aber einige Leute schwören darauf oder auf seinen großen Bruder Komodo.
  • BBEdit - BB und ich gehen weit zurück, bevor es als kommerzielles Produkt veröffentlicht wurde. Es ist sehr schnell beim Suchen/Ersetzen in mehreren Dateien - erstaunlich schnell. Die Entwickler kennen den Mac wirklich gut und haben meiner Meinung nach einen viel mächtigeren Editor als TextMate oder Komodo Edit. Wenn ich eine Menge Dateien durchsuchen oder durchsuchen muss, ist es meine erste Wahl. Das kleinere Geschwister von BBEdit ist TextWrangler, das kostenlos und ziemlich schnell ist und auch gut ausgestattet ist.
  • Coda - ein großartiger Webentwicklungseditor und meine erste Wahl, wenn ich viel HTML machen werde, wegen der Integration der Webseitenvorschau und der CSS-Bearbeitung.

Wenn Sie viel CSS verwenden, sehen Sie sich auch CSSEdit an . Das ist alles, was es tut, aber es macht es wirklich gut.

Was sind "Software-Links"?
Ich denke, er meint Links zu den Seiten für die Apps, die Sie auflisten.
Oh. Diese werden als URLs bezeichnet. Ich bin mir sicher, dass er dasselbe zu all den anderen Respondern gesagt hat, die sie nicht auch eingegeben haben.

Für das SSH-Browsing können Sie sshfsdas Laufwerk lokal mounten und dann den Finder oder einen beliebigen lokalen Browser verwenden.

Ich habe gesehen, dass dies an einigen Stellen gemacht wurde, aber aus irgendeinem Grund habe ich es immer abgelehnt, da es irgendwie umständlich erscheint. Mir ist klar, dass es an der Zeit ist, zweimal darüber nachzudenken, da es sehr schön wäre, es montiert zu haben. Ich werde das überprüfen.

Ich persönlich verwende für meine PHP/JavaScript-Entwicklung eine Kombination aus NetBeans PHP Edition und Coda . Ich verwende NetBeans, wenn ich lokal an einem vollständigen Projekt arbeite und wenn ich Subversion anwende, die auf unseren Testserver hochlädt . Ich verwende Coda zum Bearbeiten von Dateien über SFTP sowie für schnelle PHP- oder JavaScript-Bearbeitungen. Ich verwende Transmit auch gelegentlich, wenn ich eine SFTP / FTP-Site durchsuchen muss.