Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Nur zusammengefasste und komprimierte Dateien liefern?
#1
Hallo zusammen,

mittlerweile kommen immer mehr (professionelle) Webentwickler auf den Trichter, dass man Quelldateien (CSS, JS) auch zusammenfassen und minifizieren kann. Nun stelle ich mir die Frage, ob es rechtens ist, dass ein Entwickler eben nur diese Dateien dem Auftraggeber nach Beendigung und Freigabe zur Verfügung stellt?
Im Print weiß ich, dass das gang und gäbe ist. Hier wird fast ausschließlich das PDF geliefert, nicht aber das InDesign-Dokument zu einer Anzeige oder einem Flyer.
Der Hintergrund ist natürlich, dass Änderungen nur durch die ursprüngliche Agentur vorgenommen werden sollen. Als Auftraggeber kann man die offenen Dokumente dann oft gegen eine zusätzliche (nicht zu unterschätzende) Gebühr erwerben.

Wie sieht das ganze im Online-Bereich aus? Liefere ich nur die zusammengefassten und minifizierten Dateien, so kann die Agentur nicht ohne weiteres eigenständigen Änderungen vornehmen. Genau so verhält es sich bei mir als Auftraggeber, wenn ich andere Entwickler beauftrage.

Haltet ihr solche Sachen in einem Vertrag fest? Bisher habe ich diesen Fall nie berücksichtigt. Ich bin mittlerweile dazu übergegangen auf Produktions-Umgebungen nur noch zusammengefasste und minifizierte Quelldateien bereitzustellen. Die SASS-Dateien oder einzelne Icons, welche in Sprites zusammengefasst sind, liegen nicht mehr im Webspace. Der Auftragnehmer kann die Quelldateien also nur von mir persönlich erhalten.

Viele Grüße
Michael Schulze
Webentwickler & Designer

http://michsch.de
http://michs.ch/twitter
Zitieren
#2
Im Print Bereich ist das in Österreich geregelt der Kunde kauft das Produck und nicht die Erstellungsdaten, möchte der Kunde die Erstellungsdaten so muss er die extra kaufen.
Wie das aber im Web ist weis ich momentan nicht, aber ich denke mal das es sich hier auch so verhält...
Zitieren
#3
Hm, darüber habe ich mir bisher noch keine Gedanken gemacht. Ich hatte aber bisher noch nie Kunden, die die Rohdaten wollten, die waren bisher immer zufrieden damit, wenn die Seite online war.
Zitieren
#4
Da ich auch für Agenturen arbeite, kann hier durchaus ein Interesse an den Quelldateien bestehen. Dies würde der Agentur ermöglichen selbst Änderungen vorzunehmen bzw. bei einer Überarbeitung einen anderen Freiberufler zu beauftragen.
Grundsätzlich stören mich diese beiden Fälle nicht.

Allerdings habe ich doch ein Problem damit, wenn man die von mir erstellte Website öfter kopiert, ein wenig anpasst (Farben, Breiten, Schriftgrößen etc.) und weiter verkauft. Streng genommen ist das sogar vertraglich untersagt, aber ich habe keine Zeit das Internet stets nach illegalen Kopien meiner Arbeiten zu durchsuchen.
Ein ähnlichen Fall habe ich momentan und habe das nur durch einen Zufall erfahren. Würde ich allerdings nur zusammengefasste und kaum lesbare Dateien ausliefern, dann wäre die Hürde schon um einiges größer.

Viele Grüße
Michael Schulze
Webentwickler & Designer

http://michsch.de
http://michs.ch/twitter
Zitieren
#5
(29.08.2012, 22:54)michsch schrieb: ... Würde ich allerdings nur zusammengefasste und kaum lesbare Dateien ausliefern, dann wäre die Hürde schon um einiges größer. ...

Wie kann man den eine Quelldatei so komprimiert anzeigen lassen, dass sie nicht mehr auslesbar ist? Und kann man diese dann auch nicht mehr mit "Firebug" lesen?
Gruß scholzi Wink

Meine bisherigen Arbeiten:
meine Seite: http://straight-line.de
Weitere Seiten: http://baptisten-stollberg.de; http://ergotherapie-freitag.de; http://bausachverstaendiger-schneider.de; ...
Webmaster/Redakteur der Unterseite: http://gjw-sachsen.de
Zitieren
#6
Bei Javascript zum Beispiel kann man dieses Tool hier benutzen und wenn man sich den Code hinterher anschaut, ist er kaum noch zu lesen.

http://closure-compiler.appspot.com/home

Gesendet von meinem Nexus 4 mit Tapatalk 2
Zitieren
#7
Hallo scholzi,

(21.07.2013, 23:17)scholzi schrieb: Wie kann man den eine Quelldatei so komprimiert anzeigen lassen, dass sie nicht mehr auslesbar ist? Und kann man diese dann auch nicht mehr mit "Firebug" lesen?

man kann CSS und JavaScript zusammenfassen und zusätzlich minifizieren. Dann steht z.B. das CSS alles in einer Zeile ohne Leerzeichen. In JavaScript werden zusätzlich lange Variablen durch kurze getauscht. An der Logik und Funktion ändert das nichts, aber der Code wird schwer lesbar.
Selbstverständlich kann man diesen dann noch mit Firebug oder anderen Dev-Tools lesen, aber es wird sehr kompliziert.
Bei CSS geht das noch einigermaßen, aber bei JavaScript wird es nahezu unmöglich zu verstehen was dort passiert. Eine Funktion, die vorher "calculateColumnSize" hieß, heißt dann z.B. nur noch "c3". Während der ursprüngliche Name der Funktion immerhin noch darauf schließen lässt, was diese Funktion macht, kann man das im minifizierten Code nicht mehr an Funktions- oder Variablennamen ablesen.

Es gibt zwar Beautifier, welche solchen minifizierten Code wieder auf mehrere Zeilen umbrechen und schön einrücken, aber die Variablennamen bleiben immer noch sehr unleserlich.

Hat man im ursprünglichen Projekt also beispielsweise 20 JavaScript-Dateien, fasst diese alle zusammen und minifiziert diese, dann wird es sehr schwer diese wieder leserlich zu bekommen und zu verstehen. Da alle Kommentare ebenfalls aus dem Quelltext gelöscht werden wird sich da außer "Rain Man" keiner zurecht finden.

Oder verstehst du das hier:
    JAVASCRIPT Programming
  1. define("module/domReady", [], function() {
  2. "use strict";
  3. function a(a) {
  4. var b;
  5. for (b = 0; b < a.length; b += 1)
  6. a[b](j)
  7. }
  8. function b() {
  9. var b = k;
  10. i && b.length && (k = [], a(b))
  11. }
  12. function c() {
  13. i || (i = !0, g && clearInterval(g), b())
  14. }
  15. function d(a) {
  16. return i ? a(j) : k.push(a), d
  17. }
  18. var e, f, g, h = "undefined" != typeof window && window.document, i = !h, j = h ? document : null, k = [];
  19. if (h) {
  20. if (document.addEventListener)
  21. document.addEventListener("DOMContentLoaded", c, !1), window.addEventListener("load", c, !1);
  22. else if (window.attachEvent) {
  23. window.attachEvent("onload", c), f = document.createElement("div");
  24. try {
  25. e = null === window.frameElement
  26. } catch (l) {
  27. }
  28. f.doScroll && e && window.external && (g = setInterval(function() {
  29. try {
  30. f.doScroll(), c()
  31. } catch (a) {
  32. }
  33. }, 30))
  34. }
  35. "complete" === document.readyState && c()
  36. }
  37. return d.version = "2.0.1", d.load = function(a, b, c, e) {
  38. e.isBuild ? c(null) : d&copy;
  39. }, d
  40. })


Und das ist schon die "schöne" Variante nach einem Beautifier. Hier das Original

Viele Grüße
Michael Schulze
Webentwickler & Designer

http://michsch.de
http://michs.ch/twitter
Zitieren
#8
Das handhabe ich immer so... nicht nur, weil der Code dadurch schwer auszulesen wird, sonder auch aus Gründen der Geschwindigkeit!
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste