Frage

Ich bin Java-Programmierer und mag meinen Compiler, meine statischen Analysetools und Unit-Testing-Frameworks als Tools, die mir helfen, schnell robusten und effizienten Code zu liefern.Die JRE ist praktisch überall dort, wo ich auch arbeiten würde.

Angesichts dieser Situation kann ich mir keinen Grund vorstellen, warum ich mich jemals für Shell-Scripting, VB-Scripting usw. entscheiden sollte, egal wie klein die Aufgabe ist, wenn ich einen meiner anderen Hüte wie meinen coolen schwarzen Systemadministrator-Fedora trage.

Die anderen Hüte trage ich nicht allzu oft, Unter welchen Umständen sollte ich Skripting dem Schreiben von kompiliertem Code vorziehen?

War es hilfreich?

Lösung

Wie auch immer Sie denken, wird am effizientesten für Sie!

Ich hatte einen Mitarbeiter, der eine andere Sprache für jede Aufgabe zu verwenden schien; Perl für eine schnelle Textverarbeitung, PHP für kleine interne Web-Anwendungen, .NET für unser Hauptprodukt, Cygwin für Dateisystem Sachen. Er zog es die Technologie zu verwenden, die auf die Aufgabe in der Hand war sehr spezifisch.

Ich persönlich finde, dass Kontextwechsel zwischen den Technologien schmerzhaft ist. Mein Tag zu Tag Arbeit ist in .NET, so das ist so ziemlich die Begriffe Ich glaube, in. Für die meisten Aufgaben, die ich finden es effizienter, etwas in C # klopfen mit SnippetCompiler als würde ich in Powershell zu hacken um oder einer Scripting-Umgebung .

Andere Tipps

Wenn Sie sind komfortabel mit Java und der JRE ist überall arbeiten Sie, dann würde ich sagen, halten Sie es. Es gibt aber Sprachen wie Perl und Python, die besonders geeignet sind, um schnell Probleme zu lösen. Ich würde vorschlagen, entweder Perl oder Python zu lernen, und dann Ihr Urteil verwenden, wenn es zu benutzen.

Wenn ich ein kleines Problem hat, dass Ich mag würde schnell lösen, neige ich dazu, eine Skriptsprache zu verwenden. Der Code Steuer ist kleiner, und, zumindest für mich, ist das Ergebnis schneller kommt.

Ich würde sagen, wo es Sinn macht. Wenn es Sie länger dauern IDE zu öffnen, kompilieren Sie das Skript usw. als wäre es eine Skript-Datei zu bearbeiten und damit als die Verwendung Skriptdatei durchgeführt werden. Wenn Sie nicht das Ding oft wechselnden gehen werden und sind schneller auf Java-Codierung dann diesen Weg gehen:)

Es ist in der Regel schneller Skripte als kompilierte Programme zu schreiben. Sie müssen nicht so viel über die Portabilität zwischen verschiedenen Plattformen und Umgebungen sorgen. Ein Shell-Skript läuft so ziemlich überall auf den meisten Plattformen. Weil Sie ein Java-Entwickler und Sie erwähnen, dass Sie Java überall Sie groovy aussehen könnte ( http: // groovy. codehaus.org/ ). Es ist eine in Java geschrieben Skriptsprache mit der Fähigkeit, Java-Bibliotheken zu verwenden.

So wie ich es sehe (die andere nicht) alle Ihre Code muss wartbar sein. Die kleinste nützliche Sammlung von Code ist, dass der eine einzelne Person unterhält. Auch, dass die Vorteile aus der Sprache und Tools, die Sie erwähnt.

Es gibt jedoch offensichtlich Aufgaben sein kann, wo Fachsprachen sind vorteilhafter als eine einzige Mehrzweck-Sprache.

Wenn Sie es schneller in Java schreiben kann, dann gehen sie.

Versuchen Sie einfach, und sich bewusst sein, was die verschiedenen Skriptsprachen tun können.

z. Sie nicht eine vollständige geblasen Java-Anwendung, wenn Sie das gleiche mit einem Bash Einzeiler tun können.

Wiegen Sie die Bedeutung des Werkzeugs gegen Aufspringen einen Texteditor für eine schnelle Bearbeitung vs. Öffnung IDE, neu zu kompilieren, Umschichtung, etc.

Natürlich sollte die oberste Gebot sein „verwenden, was Sie bequem mit.“ Wenn Java der Job richtig gemacht und pünktlich bekommen, dabei zu bleiben. Aber viele der Skriptsprachen könnten Sie etwas Zeit sparen, weil sie auf verschiedene Probleme abgestimmt sind. Wenn Sie reguläre Ausdrücke verwenden, sind die Skriptsprachen eine gute Passform. Wenn Sie in der Shell-Befehle sind fallen, Skripte sind nett.

Ich neige dazu, Ruby-Skripte zu verwenden, wenn ich etwas schreibe, das klein ist, weil es schnell ist, zu schreiben, leicht zu pflegen, und (mit Gems) einfach ohne benötigten zusätzliche Funktionalität verschrauben JAR-Dateien oder etwas zu verwenden. Ihre milage wird natürlich variieren können.

Am Ende des Tages ist dies eine Frage, die nur Sie selbst beantworten. Basierend auf der Tatsache, dass Sie sagt: „Ich kann keinen Grund sehen, warum ich jemals wählen würde Shell-Scripting verwenden, ...“, dann ist es wahrscheinlich der Fall, dass Sie sollten es jetzt nie richtig wählen.

Aber wenn ich Sie wäre, würde ich eine Skriptsprache wie Python, Ruby oder Perl auswählen und starten versuchen, mit dieser Sprache einige dieser kleinen Probleme zu lösen. Im Laufe der Zeit werden Sie beginnen, um ein Gefühl dafür zu bekommen, wenn es geeignetere eine schnelle Skript zu schreiben, als eine ausgewachsene Lösung aufzubauen.

Ich benutze Skriptsprachen für Programme zu schreiben, die über wenige Hinrichtung gehalten werden, nicht zu erwarten. Die meisten dieser Sprachen sind leicht auf Kessel-Platte Syntax und machen einen REPL haben. Diese beiden Funktionen ermöglichen Rapid Prototyping.

Da Sie bereits Java kennen, können Sie JVM Sprachen versuchen, wie Groovy, JRuby, Beanshell usw. Scala hat viel leichter Syntax als Java, hat ein REPL, ist statisch typisiert und läuft auf der JVM - Sie geben könnte, dass ein Schuss als gut.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top