Es ist schon eine Weile her, dass ich umfangreiche Webentwicklungen durchgeführt habe und ich möchte die neuesten Praktiken nutzen, aber ich habe Mühe, den Workflow zu visualisieren, um alles zu integrieren.
Folgendes möchte ich verwenden:
- CakePHP-Framework
- jsmin (JavaScript Minify)
- SASS (Synctactically Awesome StyleSheets)
- Git
CakePHP:
Ziemlich selbsterklärend, nehmen Sie Änderungen vor und aktualisieren Sie die Quelle.
jsmin:
Wenn Sie ein Skript ändern, führen Sie jsmin manuell aus, um den neuen minimierten Code auszugeben, oder führen Sie besser einen Pre-Commit-Hook aus, der automatisch jsmin-Ausgaben von geänderten Javascript-Dateien generiert. Angenommen, ich habe keine Kenntnisse über die Implementierung von Commit-Hooks.
SASS:
Mir gefällt das, was SASS zu bieten hat, sehr gut, aber mir ist auch bewusst, dass SASS-Code standardmäßig nicht von Browsern unterstützt wird. Daher muss der SASS-Code irgendwann in normales CSS umgewandelt werden. An welchem Punkt im Workflow ist dies erledigt?
Git
Ich habe Angst, es zuzugeben, aber als ich das letzte Mal eine wesentliche Webentwicklung durchgeführt habe, habe ich keine SCM-Quellcodeverwaltung verwendet (IE, ich habe die Quellcodeverwaltung verwendet, aber sie bestand aus einem sehr detaillierten Änderungsprotokoll mit Sicherungen).
Ich habe seitdem viel Erfahrung mit Git (sowie Mercurial und SVN) für die Desktop-Entwicklung, aber ich frage mich, wie ich es am besten für die Web-Entwicklung implementieren kann.
Ist es üblich, ein Remote-Repository auf dem Webhost zu implementieren, damit ich die Änderungen direkt auf den Produktionsserver übertragen kann, oder gibt es ein plattformübergreifendes Tool (Windows / Linux), mit dem nur geänderte Dateien einfach auf den Produktionsserver hochgeladen werden können? . Gibt es Webhosting-Unternehmen, die die Implementierung eines Remote-Repositorys vereinfachen? Benötige ich SSH-Zugriff usw.
Ich weiß, wie ich dies auf meinem eigenen Testserver mit einem Remote-Repository mit einem separaten Remote-Tracking-Zweig erreichen kann, aber ich habe es noch nie zuvor auf einem Remote-Produktions-Webhosting-Server durchgeführt, sodass mir die Optionen noch nicht bekannt sind.
Extra:
Ich habe überlegt, ein Javascript-Framework zu implementieren, bei dem separate Javascript-Dateien, die auf einer Seite verwendet werden, für jede Seite auf dem Produktionsserver zu einer einzigen Datei kompiliert werden, um die Anzahl der pro Seite erforderlichen Dateidownloads zu begrenzen.
Gibt es so etwas schon? Gibt es bereits ein Open-Source-Projekt in freier Wildbahn, das etwas Ähnliches implementiert, das ich verwenden und dazu beitragen könnte?
In Anbetracht der paranoiden Webentwickler in Bezug auf die Leistung (und der Tatsache, dass die Anzahl der Dateianforderungen auf einer Website einen großen Einfluss auf die Leistung hat) schätze ich, dass es im Internet einen Assistenten-Hacker gibt, der dieses Problem bereits behoben hat.