AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Was bringen Konstanten?

Ein Thema von Pseudemys Nelsoni · begonnen am 16. Sep 2003 · letzter Beitrag vom 13. Jul 2004
Antwort Antwort
Seite 3 von 6     123 45     Letzte »    
Tom

Registriert seit: 8. Jan 2003
318 Beiträge
 
RAD-Studio 2009 Pro
 
#21

Re: Was bringen Konstanten?

  Alt 16. Sep 2003, 08:54
Zitat von silent:
1. (wenn es um eine versionsnummer geht) hat kein anderer das an meinem programm zu ändern
Mit 19 steht man noch nicht unbedingt im Berufsleben und arbeitet isoliert vor sich hin. Falls Du mal mit programmieren Geld verdienen möchtest: Du wirst Quelltexte anderer fortführen müssen und andere werden Deine Quelltext fortführen. Ist so.

Zitat:
wenn derjenige nichtmal weiss was die variable/konstante tut
Es geht darum anderen (und auch Dir selber) das Leben leicht zu machen. Sieht man oben im Quelltext Const Version = '0.815'; weiß jeder Programmierer, dass diese Angabe nirgendwo mehr geändert wird. Nutze ich dagegen eine Variable ist davon auszugehen, dass irgendwo im Quelltext eine Änderung erfolgt. Dieses gibt selbst bei Versionsnummern - Stichwort: Bedingte Compilierung - Sinn.

PS: Das Beispiel mit der Versionsnummer ist etwas unglücklich, da man diese über die Projektoptionen einstellt und diese im Source bei der Anzeige auswertet.
PPS: Du benutzt auch noch globale Variablen. Pfui!
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#22

Re: Was bringen Konstanten?

  Alt 16. Sep 2003, 09:00
hm, jo aber ne version wird doch nicht mitten im source geändert ...aber vom prinzip her wirds mir doch klar was ihr meint

Zitat:
Mit 19 steht man noch nicht unbedingt im Berufsleben und arbeitet isoliert vor sich hin. Falls Du mal mit programmieren Geld verdienen möchtest: Du wirst Quelltexte anderer fortführen müssen und andere werden Deine Quelltext fortführen. Ist so.
soweit werd ich sowieso nie kommen


Zitat:
PPS: Du benutzt auch noch globale Variablen. Pfui!
jo, sag mir mal folgendes...

Eine Prozedur ändert einen Wert...wie willst du nun mit einer anderen Prozedur darauf zurückgreifen ohne eine globale variable?
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#23

Re: Was bringen Konstanten?

  Alt 16. Sep 2003, 09:00
Kaum Nachteile, nur: Delphi hat mehr zu tun, der Compiler braucht 1 mS länger, ein paar Byte mehr Platz wird gebraucht, EXE wird größer usw. Also nichts wichtiges. Das ist nicht ironisch gemeint ! Es ist echt fast egal. Die Fehlerquelle ist aber immer noch vorhanden und das bist Du Stell Dir eine Rechnung vor, wo Du mit Variablen hantierst. Und jetzt willst Du mit MWST := i; diese auf 16 einstellen. Vorher hast Du an anderer Stelle i auf 33 gesetzt. Dann am besten noch global deklariert. Schon krachts. Deshalb so was erst gar nicht anfangen. Globale Variablen gehören hier auch zum Thema: Vorsicht damit !

Theorie und Praxis sind aber 2 paar Schuhe. Wenn es ginge würde ich den Mwst.-Satz sofort in eine Konstante packen. Aber es ist nur eine Konstante auf Zeit. Deshalb liegt das ganze in einer Datei. Und dazu brauche ich eine Variable, die den Wert aufnimmt. Eine Versionsnummer, oder die Anzahl Zeilen auf einem Blatt Papier in eine Variable zu packen ist Blödsinn.

Und noch was anderes ist noch gar nicht gesagt worden: Wozu gibt es Compiler-Direktiven ? Falls Herr Meier nur Din A 5 Papier benutzt und Herr Schmitt Din A 4 könnte man coden:

Delphi-Quellcode:
(*$DEFINE MEIER*)

type PapierTyp = (DINA5,DINA4);

(*IFDEF Meier*)
  CONST
    p = DINA5;
(*$ELSE*)
  CONST
    p = DINA4;
So und nun ists gut. Produziere eben notfalls Spaghetti - Code mit Variablen. Bluescreens kommen nicht von ungefähr.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#24

Re: Was bringen Konstanten?

  Alt 16. Sep 2003, 09:04
Zitat:
MWST := i;
diese auf 16 einstellen. Vorher hast Du an anderer Stelle i auf 33 gesetzt. Dann am besten noch global deklariert. Schon krachts. Deshalb so was erst gar nicht anfangen.
ich werd die variable kaum auf 33 irgendwo setzen wenn MWST sowieso 16 ist -_-


aber danke für die ganzen besispiele, z.b mit herr maier ^^
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Tom

Registriert seit: 8. Jan 2003
318 Beiträge
 
RAD-Studio 2009 Pro
 
#25

Re: Was bringen Konstanten?

  Alt 16. Sep 2003, 09:04
Zitat von silent:
Eine Prozedur ändert einen Wert...
Das wäre dann eine Funktion mit Rückgabewert ..., statt eine globale Variable zu ändern.

Zitat:
wie willst du nun mit einer anderen Prozedur darauf zurückgreifen ohne eine globale variable?
Diese Konstrukte sollte man mit Übergabeparametern vermeiden. Ansonsten ist in der OOP alles an Klassen, Methoden und Eigenschaften etc. orientiert. Zum Stichwort Property gibt es z.B. eine Menge Lesenwertes in der OH.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#26

Re: Was bringen Konstanten?

  Alt 16. Sep 2003, 09:08
Zitat:
Das wäre dann eine Funktion ...

Procedure irgendwas;
begin
s := 'bla'; (s ist global definiert)
end;

wozu brauch ich da eine function O_o...naja wie gesagt ich komm kaum ohne globale variablen aus, weil ich sie oft von mehreren prozeduren aus brauche
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#27

Re: Was bringen Konstanten?

  Alt 16. Sep 2003, 09:08
Zitat von silent:
Zitat:
PPS: Du benutzt auch noch globale Variablen. Pfui!
jo, sag mir mal folgendes...

Eine Prozedur ändert einen Wert...wie willst du nun mit einer anderen Prozedur darauf zurückgreifen ohne eine globale variable?
Haste schon mal was von Wert/Const/Var-Parametern gehört, Kapselung, von Funktionen, Rückgabewert, Sichtbarkeit usw. ? Da besteht ofensichtlich erhöhter Nachholbedarf. Globale Variable nur im Notfall benutzen, wenns wirklich nicht anders geht zum Bsp. eben mit Konstanten.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#28

Re: Was bringen Konstanten?

  Alt 16. Sep 2003, 09:11
ich bin mit variablen/konstanten definieren kapitel in meinem buch schon 2mal durch, also davon steht da nichts drin
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#29

Re: Was bringen Konstanten?

  Alt 16. Sep 2003, 09:12
@silent:
Bei die ist Hopfen und Malz verloren.

Schreib du mal richtige Programme! Dann wirst du schon merken warum viele was gegen Globale Variablen haben.

Übrigens wenn ich mal eine Globale Variable verwende, dann heißt die nicht "i" oder "s", sondern sie erzählt eine Kurzgeschichte.

wie:
oPluginList

besser wäre sogar
goPluginList
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Tom

Registriert seit: 8. Jan 2003
318 Beiträge
 
RAD-Studio 2009 Pro
 
#30

Re: Was bringen Konstanten?

  Alt 16. Sep 2003, 09:13
Zitat von silent:
Procedure irgendwas;
begin
s := 'bla'; (s ist global definiert)
end;
Wenn Du wirklich in dieser Art un Weise Deine Quelltext aufbaust: Beschäftige Dich mit den Grundlagen der OOP. Diese hier in diesem Thread zu erläutern, dürfte den Rahmen etwas sprengen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 6     123 45     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz