2009-07-05 16 views
2

Ich habe die meiste Zeit meiner Webentwicklungskarriere im Microsoft-Lager verbracht, aber aus verschiedenen Gründen versuche ich, mir Optionen anzusehen.Nicht-Windows-RAD-Webentwicklung

Vor einigen Jahren habe ich ein wenig Java/Struts-Entwicklung in Eclipse gemacht, was für seine Zeit angenehm war, aber meine Erinnerungen daran sind nicht annähernd das, was Visual Studio heute liefert.

Einige der Stärken des MS-Stack wie ich es sehe, sind:

  • Einfache Bedienung. Kostenlose Tools (Express Editionen), einfach einzurichten, einfach zu implementieren, Lasten von Komponenten und Unterstützung, auch für innovative Funktionen wie Ajax und jQuery.
  • Intellisense, so dass die API Referenz ist da, wie Sie es brauchen.
  • Größe der Gemeinschaft. Dinge wie www.asp.net, mit den kostenlosen Video-Tutorials, Proben, Dokumentation etc. Free, offiziell und zuverlässig aktualisiert Informationen von MSDN.
  • Enterprise skalierbar und anständig Leistung.
  • Vollständig objektorientiert, (semi) kompiliert Sprachen, so dass für Sound-Design, Muster und Praktiken.

Es gibt natürlich auch Schwächen als auch, wie:

  • Preise, wenn Sie mit etwas semi-professioneller Live gehen.
  • Lieferantensperre.
  • Vollständiger Mangel an plattformübergreifender Unterstützung.

Ich habe einige Zeit an diesem Abend damit verbracht, den Griff zu bekommen, wie die Dinge sind außerhalb der Microsoft Welt und Ich habe viele PHP-Frameworks gefunden, Ruby on Rails und Verwandte, mehr Java-Frameworks und ein paar sehr merkwürdige Alternativen.

Einige von diesen scheinen sehr interessant, so würde ich gerne von tatsächlichen Entwicklern mit den verschiedenen Frameworks zu hören, und versuchen, herauszufinden, wie sie im Vergleich zu dem, was MS im Moment hat.

Welchen Rahmen verwenden Sie, warum ist es großartig, was könnte besser sein und welche Art von Websites haben Sie damit gebaut?

Jeff & Co gemacht meisten Stack Overflow in ein paar Monaten mit ASP.NET MVC. Wenn Sie das Gleiche mit einem Nicht-MS-Framework und Tools tun müssten, was würden Sie wählen und warum?

+0

er ... http: //phpancake.sourceforge.net nahm mich alleine um 200 Stunden (und ich habe es gemacht, um ZF zu lernen). Es ist nicht perfekt und noch lange nicht fertig, aber Sie verstehen es. –

+0

Ich würde bestreiten, dass der MS-Stack vollständig OO ist. Können Sie Objekte ohne Klassen in C# haben? Sie können in Ruby. –

Antwort

1

Wenn ich gehen Open Source wollte ich gehen würde:

RAD Web-Entwicklung: tomcatRailo läuft, eine Java-basierte Open Source CFML Implementierung, da CFML ist ein gutes RAD-Tool. Railo funktioniert gut, ist in der Lage zu gruppieren, kann durch Bearbeiten der Quelle oder Hinzufügen eigener Erweiterungen erweitert werden.

DB: MySQL für ein DB-Backend, weil es gut funktioniert und einfach funktioniert.

IDE: - Eclipse + CFEclipse weil das ist, was verfügbar ist, obwohl ich einige Verbesserungen möchte. Da CFML eine dynamische Sprache ist, haben Sie kein Intellisense, nur Kontexthilfe für die API.

OS: Jede OpenSource-Unix-basierten OS. Wahrscheinlich Ubuntu.

MVC-Frameworks: Mach-II oder Model-Glue, weil ich sie kenne, obwohl ich zum Auschecken ColdBox offen bin.

2

Wir haben eine ziemlich große Investition in das Microsoft Framework im Büro und so mache ich jetzt hauptsächlich ASP.NET MVC Sachen. Wenn ich zu diesem Zeitpunkt eine Alternative wählen würde, würde ich wahrscheinlich mit RubyOnRails gehen. Es hat eine sehr saubere MVC-Implementierung - das Herumspielen mit ihm machte es ziemlich einfach, mit ASP.NET MVC anzufangen, als es dazu kam. Es gibt auch eine Menge zu tun, um die Testbarkeit zu verbessern - besonders natürlichsprachliche Test-Frameworks, die aus dem RoR-Camp mit Cucumber, et. al. Die ganze Investition in Tests macht TDD/BDD in diesem Rahmen viel natürlicher.

0

Ich verwende Django. Es ist einfach zu lernen, sehr gut dokumentiert und die meisten klugen Dinge passieren in Python (vorausgesetzt, Sie mögen Python). Ich entwickle all meine HTML und CSS mit Aptana von Hand - gibt bessere Kontrolle, hat aber nette hilfreiche Funktionen.

Mit vielen IDEs/Editoren können Sie die Auto-Vervollständigung basierend auf der Django Code-Basis (Netbeans, PyScripter, Komodo) erhalten. Sie können dann auf Windows oder Unix (Linux, Solaris, Mac) hosten.

1

baue ich Web-Anwendungen mit:

  • PHP
  • Zend Framework
  • ExtJS Toolkit
  • Aptana IDE

Nachteile sind die typisch diejenigen: Mangel an Integration zwischen den Werkzeugen , Schwäche der Debugging-Tools, Komplexität der Bereitstellung (obwohl das Bereitstellungsproblem für fast alles außer AS gilt) P, wenn Sie über Windows-Server sprechen).

Ich bin nicht sehr bewusst von ASP.NET, nur marginale Erfahrung mit ihm, aber die Vorteile, wie ich sie sehen würde, sind plattformübergreifende Unterstützung, billige Hosting-Fähigkeit, Architektursteuerung (PHP ist niedriger und Zend Framework ist einfach in ein Modul zu kaufen, so dass Sie das Verhalten jeder Seite genauer kontrollieren können.