Es lohnt sich, nach Rake zu migrieren?

8

Ist es wirklich vorteilhaft, von Ameise zu Rake zu ziehen?

Wer ist aus der Ameise gewandert und hat etwas Monumentales gefunden?

Zu Ihrer Information: Die aktuelle Umgebung ist Ant für J2ME-Builds

    
prakash 16.09.2008, 11:28
quelle

4 Antworten

9

Ich würde ja sagen, aber ich habe eine andere Perspektive als ein Java-Environment-Typ, weil ich ein .NET-Environment-Typ bin. Ich hatte ein nicht-triviales Build-Skript (clean, generate-assembly-info, build, test, coverage, analysis, package) in msbuild geschrieben (MS 'XML-driven NAnt) und es war sehr schmerzhaft:

>
  • XML ist nicht freundlich; es ist sehr laut
  • Niemand im Team war daran interessiert, es zu dem Punkt zu bringen, mehr und nützlichere Automatisierungen auszuführen; so hoch Bus-Faktor (dh, wenn ich von einem Bus getroffen werde, sind sie festgefahren)
  • Es hat sich nicht zum Refactoring oder zur Verbesserung geleiht - es war eines dieser Dinge, mit denen Sie in Berührung kommen konnten, wissen Sie?
  • Es mussten benutzerdefinierte C # -Tasks geschrieben werden, um die verschiedenen Tools ausführen zu können, die der Build benötigte (obwohl fair, oft werden diese von den Anbietern geschrieben)

In ungefähr einer Arbeitswoche meiner Zeit (ich habe zu Weihnachten leere Büros zu lieben!), habe ich genug Ruby + Rake gelernt, um das Ganze durch ein kürzeres (in Bezug auf LOC) Skript mit etwas zu ersetzen mehr Funktionalität und mehr Verständlichkeit (ich hoffe jedenfalls, habe es noch nicht überprüft).

Es profitiert von:   - Es ist eine neue Sprache, aber eine echte Sprache. Meine Teamkollegen lernen gerne neue Sprachen, und dies, obwohl eine dünne Ausrede, ist immer noch eine Ausrede ;-) Das könnte den Bus-Faktor mildern, wenn ich recht habe.   - Es ist ein kurzer Sprung (ich versichere mich) von hier zu capistrano, dem automatisierten / remote / verteilten Einsatzwerkzeug aus der RoR-Welt. Obwohl wir ein MS-Stack-Shop sind, werden wir das in Kombination mit IIS7 verwenden, um endlich ein CLI-Config-Tool zu haben.

Also, ja. Ihre Laufleistung kann variieren, aber es hat sich für mich gelohnt.

    
Peter Mounce 30.12.2008, 23:07
quelle
6

Rake ist großartig, wenn Sie wollen:

  • Zugang zu einer echten Programmiersprache; Conditionals und Loops sind alle tot-einfach, verglichen mit Ant (in denen sie fast unmöglich sind)
  • Dateiformat, das leicht zu lesen ist und Syntax-geprüft werden kann
  • Mehr intuitive / vorhersagbare Zuweisung von Werten zu Variablen

Rake ist schlecht für dich, weil:

  • Sie müssen selbst eine Menge Basisaufgaben erledigen (zB javac ausführen, jar-Dateien erstellen). Projekte wie Raven könnten hilfreich sein, aber es scheint darauf ausgerichtet zu sein, Abhängigkeiten automatisch herunterzuladen und nicht so sehr einen Build / Deploy-Prozess zu automatisieren. Außerdem fehlt die Dokumentation etwas.
  • Die meisten Java-Tools, die automatisiert werden können, werden als Ant-Aufgaben ausgeführt, die nicht leicht von Rake ausgeführt werden können. Starten der JVM kann zur Build-Zeit ärgerlich sein
davetron5000 23.09.2008 20:04
quelle
1

Vielleicht möchten Sie auch buildr ausprobieren. Es ist ein Build-Tool auf höherer Ebene, das auf Rake basiert. IMHO braucht es viele gute Eigenschaften von Maven und schmeißt die Schlechten weg. Ich habe es nicht in etwas Großem selbst benutzt, aber ich kenne Leute, die damit zufrieden sind und recht glücklich sind.

    
auramo 16.09.2008 12:30
quelle
0

Ein weiteres Tool, das Sie vielleicht ausprobieren möchten, ist Gant , falls ant Ihre Anforderungen nicht erfüllt. Es fügt ant volle Skriptunterstützung hinzu, erlaubt Ihnen aber, Ihre ant-Aufgaben nach Bedarf wiederzuverwenden. Es hängt wirklich davon ab, was du an Ameisen nicht magst.

    
Peter Kelley 18.09.2008 07:27
quelle

Tags und Links