Ich versuche, in Grunt einzusteigen, für das ich neu bin, aber ich verstehe seine Nützlichkeit nicht.
Ich verstehe, dass es ein Taskrunner ist. Ich verstehe, dass es verwendet werden kann, um Dinge wie Bundle, Uglify, Jshint, Minify usw. usw. usw. zu tun, alles, was in eine Skriptaufgabe umgewandelt werden kann.
Aber ich sehe nicht, welchen Vorteil dies bringt. Fast alle können ohnehin über die Befehlszeile ausgeführt werden, dh Sie können sie einfach mit einem einfachen Shell-Skript kombinieren. Es scheint mir, dass das Einrichten von grunt + gruntfiles und das Schreiben von Aufgaben mehr Arbeit als das Schreiben eines Shell-Skripts ist und nicht weniger.
Was fehlt mir daran?
javascript
automation
gruntjs
temporärer_Benutzername
quelle
quelle
Antworten:
Grunt ist im Grunde ein Build- / Task-Manager, der auf NodeJS geschrieben wurde. Ich würde es das NodeJS-Stack-Äquivalent von ANT für Java nennen. Hier sind einige gängige Szenarien, unter denen Sie Grunzen verwenden möchten:
Ich glaube nicht, dass Ihr Shell-Skript all dies kann. Zusammenfassend lässt sich sagen, dass das Einrichten einer Gruntfile.js für jemanden mühsam ist, der wenig mit Javascript zu tun hat / neu bei nodeJS ist. Ich habe die gleichen Schmerzen wie ein Lernender durchgemacht, aber Grunt ist eine erstaunliche Software. Investieren Sie die Zeit, um eine richtige Gruntfile.js für Ihr Front-End-Projekt einzurichten, und Sie werden Gott dafür danken, dass Sie Ihr Leben viel einfacher gemacht haben :)
Der Vorteil gegen Shell-Skript:
Wenn Sie für jede dieser Aufgaben ein Shell-Skript schreiben, ist es mühsam, diese zu verwalten und dann an jede Ihrer Anforderungen anzupassen. Gruntfile.js ist eigentlich ziemlich einfach. Es gibt eine Konfiguration, mit der Sie sie initiieren und die angibt, welche Aufgaben Sie ausführen möchten, die Quellen und Ziele für jede Aufgabe.
Die Integration mit Projekt-Saatgutgeneratoren auf Yeoman, Gulp, ist ein weiterer wichtiger Faktor. Yeoman und Gulp kommen mit Gruntfile.js 'mit intelligenten Standardeinstellungen. Für jemanden, der der einzige UI-Mitarbeiter in seinem Team ist, ist dies für mich von unschätzbarem Wert!
Wenn jemand, der an Frontend-Technologien arbeitet, mehr als eine Person mit Ihnen zusammenarbeitet, ist es für ihn ziemlich einfach, Grunt kennenzulernen, das bereits mit vielen Antworten auf SO gut dokumentiert ist, als Ihre Shell-Skripte. Dies kann in großen Teams ein Faktor sein.
Die zahlreichen Plugins für Grunt erweitern die Basisfunktionalität. Sofern Ihr Shell-Skript nicht SEHR beliebt und SEHR modular ist, werden keine Plugins dafür erstellt. Dies gilt auch für die Einbeziehung neuer Front-End-Technologien in Ihr Projekt. Wenn Sie morgen Typoskript in Ihrem Projekt verwenden möchten, muss Ihr Shell-Skript dies berücksichtigen und es aus eigener Kraft berücksichtigen. Mit Grunt ist es genauso einfach wie "npm install" und das Hinzufügen einer Konfiguration.
quelle
Auch wenn ich mit den meisten Vorteilen einverstanden bin, auf die in Akzeptierte Antwort hingewiesen wird , muss ich dennoch die Nachteile berücksichtigen, die Keith Cirkel in Warum wir Grunt & Gulp nicht mehr verwenden sollten , hervorhebt
Daher werden einige Vorteile durch Grunt-Overheads widerlegt, und zumindest sollten Sie all dies bei Ihrer endgültigen Entscheidung über die Verwendung von Grunt berücksichtigen oder nicht.
quelle