AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Wenn man sich was wünschen dürfte...
Thema durchsuchen
Ansicht
Themen-Optionen

Wenn man sich was wünschen dürfte...

Ein Thema von stahli · begonnen am 17. Sep 2015 · letzter Beitrag vom 24. Sep 2015
Antwort Antwort
Seite 2 von 3     12 3      
Dejan Vu
(Gast)

n/a Beiträge
 
#1

AW: Wenn man sich was wünschen dürfte...

  Alt 18. Sep 2015, 06:24
Zum Thema 'Zuweisung'... Irgendwie habe ich mich daran gewöhnt, das es Referenzen und 'echte' Werte gibt. Insofern macht mir das nichts aus, das es einen Unterschied in der Semantik zwischen 'a:=b' und 'a:=b' gibt

Die weiter oben gezeigten -mal wieder- konstruierten Beispiele werden in der Praxis nur von Selbstkasteiungsfetischisten verwendet.

Wenn ich mir das so überlege, gibt es das hier bei mir eigentlich nie:
Delphi-Quellcode:
Var
  a, b := TFoo;

Begin
  a := TFoo.Create;
  b := a;
  b.Bar := 'Foo';
  if a.Foo='Barthen
D.h. ich verändere Kopien von Objektinstanzen NIE.

@implementation: Das ist sehr interessant. Gottseidank (oder vielmehr: Hoffentlich) betrifft das nur wenige Sprachen...
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.749 Beiträge
 
Delphi 2007 Professional
 
#2

AW: Wenn man sich was wünschen dürfte...

  Alt 18. Sep 2015, 06:57
@implementation: Das ist sehr interessant. Gottseidank (oder vielmehr: Hoffentlich) betrifft das nur wenige Sprachen...
Du Optimist.
Auf jeden Fall gibt's das in Polnisch auch. Dann vermutlich auch in Russisch und anderen slawischen Sprachen. Da kommen dann schon mal ein paar Sprecher zusammen.
Uli Gerhardt
  Mit Zitat antworten Zitat
bepe

Registriert seit: 17. Okt 2006
119 Beiträge
 
#3

AW: Wenn man sich was wünschen dürfte...

  Alt 18. Sep 2015, 06:25
1. Wäre das nicht ziemlich unpraktisch und unlogisch? Wenn kein Bit gesetzt ist dann hat ein Zähler den Wert 0 und nicht 1. Auch beim Positionieren/Auffinden von Einträgen in "selbst verwalteten Listen" ist das so sinnvoller. Sprich ich habe einen Speicherblock und bestimme die Position eines Eintrags einfach per: Blockanfang + (Eintrag Größe * Zähler). 1 basiert würde das nicht passen.

Klar, du redest von Listen und meinst mit Sicherheit Klassen wie StringList, ObjectList etc.. Aber das würde es ja noch uneinheitlicher machen, wenn nur die bei 1 beginnen.

2. Ein Grund mehr der gegen 1. spricht. Je mehr das Framework oder der Compiler uns von grundlegenden Strukturen und Techniken fern hält, desto leichter verliert man das Bewusstsein für das was man macht.

Wie z.B. hier. Wie bereits erwähnt, wird hier nicht mit Objekten hantiert sondern mit einfachen "Zahlen" Werten jongliert. Aber das Bewusstsein dafür gerät schnell in den Hintergrund da der Compiler das De- Referenzieren für uns übernimmt.

(Das soll keine Rede gegen Hochsprachen oder Vereinfachungen sein.)

3. Das ist doch genauso umständlich? Ob ich jetzt Anführungszeichen oder Spitzklammern und Steuersymbole tippe. Sehe gegenüber Format, ggf. mit ein par IfThen, keinen Vorteil (ja, gut die Platzhalter hätten einen sprechenden Namen...). Aber String Operationen würden langsamer da der Compiler jedes Mal implizit einen Parser anwerfen muss. Das müsste per OptIn gesteuert werden... evtl. ein Prefix, sowas wie z.B. Format

Und zum Thema Übersetzung und Lokalisierung... Da gibt es eine einfache Lösung: Keine String Literale im Quelltext verstreuen. Wer sowas macht verdient es gar nicht seine Texte wiederzufinden Und wenn man schon Übersetzen muss, dann kann man sie gleich auf Resourcestrings oder ähnliches umstellen. Ein Austauschen von Wörtern, innerhalb eines Satzes, ist keine Übersetzung. Man muss also eh eine "echte" Lösung finden.

mfg,
bp
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.356 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Wenn man sich was wünschen dürfte...

  Alt 18. Sep 2015, 18:11
Ich will hier keine Pascal-Änderungen anregen, sondern einfach mal ein paar grundsätzliche (quasi philosophische) Überlegungen anstellen und diskutieren - wem das gelingt auch gern unter Berücksichtigung der Sicht eines Programmieranfängers.
Mich hatte interessiert, ob ganz grundsätzlich die Pro´s oder Contra´s 1 überwiegen - unabhängig von existierenden Sprachen und gängigen Standards.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.049 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#5

AW: Wenn man sich was wünschen dürfte...

  Alt 18. Sep 2015, 18:30
Beide Alternativen sind gleich blöd. Aber vielleicht ist zero based auch besser?
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (18. Sep 2015 um 18:34 Uhr)
  Mit Zitat antworten Zitat
SMO

Registriert seit: 20. Jul 2005
178 Beiträge
 
Delphi XE6 Professional
 
#6

AW: Wenn man sich was wünschen dürfte...

  Alt 18. Sep 2015, 20:23
Mich hatte interessiert, ob ganz grundsätzlich die Pro´s oder Contra´s 1 überwiegen - unabhängig von existierenden Sprachen und gängigen Standards.
Wenn wir hier schon dabei sind, seltsam anmutende Kleinigkeiten zu diskutieren (bitte nicht persönlich nehmen, stahli):

Ich würde mir wünschen, dass Leute nicht den Akut (´) als Apostroph (') missbrauchen und von der Unsitte abkommen, Pluralformen mit Apostroph-S zu bilden. Das ist sowohl in der englischen als auch der deutschen Sprache falsch, aber man sieht es in beiden immer wieder, besonders bei Abkürzungen. Es heißt "eine CPU, zwei CPUs" und nicht etwa "zwei CPU's" oder schlimmer noch "zwei CPU´s".

Wieso sich die Arbeit machen und ein oder zwei Tasten mehr als nötig drücken, um ein Zeichen zu produzieren, das da gar nicht hingehört? Ein Wort wird nicht entstellt wenn ein kleines S direkt angehängt wird. Wie implementation schön in Beitrag #10 gezeigt hat, gibt es Sprachen, die ihre Wörter viel drastischer beugen! So wird z.B. im Kroatischen je nach Deklination aus einer Irena eine Irene und aus einem Branko ein Branka. Also, nur keine Berührungsängste und weg mit den sinnlosen Apostrophen!

Fände es SEHR wünschenswert, wenn man sich an Beiträge angehängte Screenshots ohne Anmeldung/Registrierung ansehen könnte!
Das nervt mich bei einigen Foren auch. Soll das Bandbreite sparen, oder Leute zum Registrieren animieren? Vielleicht kann ja der Forenbetreiber etwas dazu sagen.

Zum Thema 0-basiert vs. 1-basiert: ich bevorzuge ersteres. Ist logischer und auch weiter verbreitet.

Geändert von SMO (18. Sep 2015 um 20:28 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

AW: Wenn man sich was wünschen dürfte...

  Alt 18. Sep 2015, 21:40
Die null basierenden Listen sind wohl der Hardware geschuldet bzw. historisch bedingt. Ein Byte Array im Speicher fängt eben bei 0 an. Dann kann man schön in einer Schleife durch iterieren. Siehe dazu auch die Char-Arrays von C. Ein ShortString fängt ja auch bei 0 an. Das ein String bei 1 anfängt ist so auch nicht richtig. Zu einem String gehört die Größenangabe und die liegt im 0ten Byte. Also alles gut und konsistent.

Es ist eben so, dass manche Dinge historisch gewachsen sind. Siehe auch als Schleifenzähler das i. Selten sieht man da einen Schleifenzähler, der was mit der Schleife zu tun hat. Historisch eben. Man muss eben so was manchmal im Hinterkopf haben. Aber das ist auch Reallife so. Siege Tastaturen von Taschenrechnern und Telefonen. Da hatte wohl noch niemand die Idee, dies zu vereinheitlichen. Oder die Uhrzeit. Die Uhrzeit basiert auf den 60'er System. Die Franzosen haben es nach der Revolution mal mit dem Dezimalsystem probiert. Das Ergebnis dürfte klar sein. Obwohl das Dezimalsystem bei Berechnungen mit der Uhrzeit vorteilhaft wäre. Genauso die Gradeinteilung des Kreises.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#8

AW: Wenn man sich was wünschen dürfte...

  Alt 18. Sep 2015, 22:25
In der Mathematik ist in einer Iteration I_0 der Initialwert. 'Eigentlich' immer (was heißt bei einem Entwickler schon 'eigentlich')...

Ich habe in den 79er Jahren mit einem HP9845 erste Gehversuche gemacht. Dort gab es -wow- Arrays. Die konnte man damals schon 1-basiert oder 0-basiert definieren.
Code:
10 OPTION BASE 1
20 DIM A[10]
30 REM A[1] ist das erste, A[10] das letzte Element
Code:
10 OPTION BASE 0
20 DIM A[10]
30 REM A[0] ist das erste, A[9] das letzte Element
Man wusste damals schon, das es zwei Lager gibt
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

AW: Wenn man sich was wünschen dürfte...

  Alt 18. Sep 2015, 22:35
Geht in Delphi doch auch. Oder irre ich mich da?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Hansa

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

AW: Wenn man sich was wünschen dürfte...

  Alt 19. Sep 2015, 12:01
Luckies Beitrag nicht gesehen.
Die Franzosen haben es nach der Revolution mal mit dem Dezimalsystem probiert. Das Ergebnis dürfte klar sein.
Da kann ich noch einen draufsetzen (jaja, ich weiss OT) : rot ist ja die Farbe der Kommunisten. Und die chinesischen Mao-Kommunisten konnten sich nicht damit abfinden, dass rot an der Ampel für Stop steht. Also wurde in China rot an der Ampel für fahren und grün für Stop eingeführt. Glücklicherweise hatten sie damals noch mehr Fahrräder.
Gruß
Hansa
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 09:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz