AGB  ·  Datenschutz  ·  Impressum  







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

Neuer Blog über FireMonkey Entwicklung eröffnet

Ein Thema von Harry Stahl · begonnen am 6. Mär 2013 · letzter Beitrag vom 12. Mai 2023
Antwort Antwort
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#1

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 23. Apr 2015, 22:47
Also Nerven hat das auf jeden Fall gekostet, aber wo in Sachen Programmierung gibt es schon etwas im easy going style?

Ich mache für alle meine Programme für jede Änderung einen öffentlichen Change-Log und schreibe da neben Erweiterungen und Optimierungen auch ganz brutal und offen meine gemachten Fehler rein. Die Liste habe ich gerade mal durchsehen, man kann ca. 20 Fehler-Korrekturen noch als "Spätfolgen" der Umstellung zuordnen. So an Extra-Zeit kann man also so um die 30 Stunden dafür anrechnen.

Seit Ende Januar war keine Fehlerkorrektur mehr nötig, derzeit laufen von den Kunden nur Erweiterungswünsche rein (die ich aber alle erst in einer neuen Version 4 in ca. 2 Monaten reinpacken werde, dann wohl auch mit XE8).

XE7 hat in der ganzen Sache extrem mehr Stabilität reingebracht (im Verhältnis zu XE5 wo ja noch dutzende Workarounds fällig waren).

Da mit der Umstellung von VCL auf FMX gleichzeitig eine Reihe von Programm-Erweiterungen verbunden waren, ist es gar nicht so einfach zu sagen, wie groß der Teil der Umstellungsarbeiten war. Außerdem arbeite ich hier nicht kontinuierlich an einem Projekt, sondern parallel an mehreren. Ich kann das nur schätzen. Würde mal sagen, so insgesamt 80 Stunden.
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

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

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 24. Apr 2015, 07:44
Das war aufschlussreich, danke dir
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#3

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 22. Mai 2016, 21:21
Zwar kein neuer schriftlicher Blogbeitrag, aber falls es jemand interessiert, wie man mit 3 Zeilen Code eine Analoge Uhr programmieren kann, kann sich dieses Video ansehen (in englisch):

https://youtu.be/QL5SdJAiWGE
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#4

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 15. Okt 2016, 15:12
So, ich habe mal Franks (aka Mavarick) Anregung aufgegriffen und zum Thema VCL vs. Firemonkey einen neuen Beitrag auf meinem Blog veröffentlicht: Firemonkey vs. VCL (Additions to the FMX-side), wo ich die Fähigkeiten der FMX-Seite in Abgrenzung zu VCL ein wenig mehr beleuchtet habe.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.553 Beiträge
 
Delphi 12 Athens
 
#5

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 15. Okt 2016, 16:15
Bei deiner Uhr kommst du mit LiveBinding-Expressions auf 0 bis 1 Codezeilen.
In die TLayout noch auf die Gegenseite ein TLabel und schon brauchst du 6 TLayout weniger.
Aber vorallem im Code ... Warum diese Stringoperationen?

Delphi-Quellcode:
//rrHout.RotateAngle := 30 * HourOf(Now) + 6 * MinuteOf(Now) / 12;
rrHout.RotateAngle := 30 * HourOf(Now) + MinuteOf(Now) / 2;
rrMin.RotateAngle := 6 * MinuteOf(Now);
rrSec.RotateAngle := 6 * SecondOf(Now);
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (15. Okt 2016 um 16:18 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#6

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 15. Okt 2016, 16:53
Bei deiner Uhr kommst du mit LiveBinding-Expressions auf 0 bis 1 Codezeilen.
In die TLayout noch auf die Gegenseite ein TLabel und schon brauchst du 6 TLayout weniger.
Aber vorallem im Code ... Warum diese Stringoperationen?

Delphi-Quellcode:
//rrHout.RotateAngle := 30 * HourOf(Now) + 6 * MinuteOf(Now) / 12;
rrHout.RotateAngle := 30 * HourOf(Now) + MinuteOf(Now) / 2;
rrMin.RotateAngle := 6 * MinuteOf(Now);
rrSec.RotateAngle := 6 * SecondOf(Now);

OK, Deine Frage bezieht sich auf Beitrag 55 (siehe oben).

Den Code brauche ich, um die Zeiger zu bewegen und die richtige Uhrzeit anzuzeigen (wenn Du eine schönere Lösung kennst, ist die immer Willkommen).

Was Du mit Deinem Hinweise zum TLayout meinst, ist mir nicht ganz klar. Davon abgesehen, ist das mit dem TLayout eh nur zur Demonstration. In einer anderen Version der Uhr, die ich in meinem in Arbeit befindlichen Buch für Delphi Berlin vorstelle, gibt es nur ein TLayout für einen Stundenabschnitt (siehe Bild in Anlage), das dann zur Laufzeit einfach entsprechend dupliziert wird, dann spart man sich eine Reihe von Layout-Arbeiten, die man ja im Video hinlänglich sehen kann (die gesamte Design-Arbeit, die dann noch zu leisten ist, wird in Bild2 verdeutlicht).
Angehängte Grafiken
Dateityp: jpg clock.jpg (13,6 KB, 11x aufgerufen)
Dateityp: jpg clock2.jpg (15,1 KB, 8x aufgerufen)

Geändert von Harry Stahl (15. Okt 2016 um 17:33 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.553 Beiträge
 
Delphi 12 Athens
 
#7

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 15. Okt 2016, 21:54
das dann zur Laufzeit einfach entsprechend dupliziert wird, dann spart man sich eine Reihe von Layout-Arbeiten
Dann hast du aber wieder mehr Code im Code

Ich meinte es einfach so, wie du es schon gemacht hast, nur eben nicht nur ein Label "12" in das TLayout, sondern auch noch ein Label "6"
und das dann nur 5 Mal kopieren statt 11 Mal.

Den Code brauche ich, um die Zeiger zu bewegen und die richtige Uhrzeit anzuzeigen (wenn Du eine schönere Lösung kennst, ist die immer Willkommen).
OK
Zitat:
rrSec.RotateAngle := 6 * StrToInt(FormatDateTime('ss', Now));
Du erstellst einen String und wandelst diesen dann wieder in eine Zahl, aber man kann das auch direkt mathematisch lösen.
rrSec.RotateAngle := 6 * (Trunc(Now * SecsPerDay) mod 60);
Aber natürlich gibt es schon eine schöne Funktion, welche das verständlicher erledigt.
rrSec.RotateAngle := 6 * SecondOf(Now);
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (15. Okt 2016 um 21:56 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.165 Beiträge
 
Delphi 10.3 Rio
 
#8

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 17. Okt 2016, 10:57
So, ich habe mal Franks (aka Mavarick) Anregung aufgegriffen und zum Thema VCL vs. Firemonkey einen neuen Beitrag auf meinem Blog veröffentlicht: Firemonkey vs. VCL (Additions to the FMX-side), wo ich die Fähigkeiten der FMX-Seite in Abgrenzung zu VCL ein wenig mehr beleuchtet habe.
Vielleicht noch ein Hinweis:

VCL profitiert auch von der Firemonkey Entwicklung. Sehr schön zu sehen, welche Units von XE2->10.1 das Namespace gewechselt haben...

In den ersten Versionen noch FMX.* jetzt System.*

Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#9

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 17. Okt 2016, 23:50
So, ich habe mal Franks (aka Mavarick) Anregung aufgegriffen und zum Thema VCL vs. Firemonkey einen neuen Beitrag auf meinem Blog veröffentlicht: Firemonkey vs. VCL (Additions to the FMX-side), wo ich die Fähigkeiten der FMX-Seite in Abgrenzung zu VCL ein wenig mehr beleuchtet habe.
Vielleicht noch ein Hinweis:

VCL profitiert auch von der Firemonkey Entwicklung. Sehr schön zu sehen, welche Units von XE2->10.1 das Namespace gewechselt haben...

In den ersten Versionen noch FMX.* jetzt System.*

Mavarik
Genau guter Hinweis.

Fairerweise sollte ich bei VCL vs. FMX evtl. noch ergänzen, dass man sich mit FMX deutlich öfter bei Embas Quality-Central aufhält, um Bug-Reports zu schreiben (wie z.B. jetzt den hier: (Fehlerhafte Anzeige des TDateEdit-PopUps) https://quality.embarcadero.com/browse/RSP-16126)

Geändert von Harry Stahl (17. Okt 2016 um 23:54 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.553 Beiträge
 
Delphi 12 Athens
 
#10

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 18. Okt 2016, 01:53
Ich hatte auch schon 8 Jahre alte Bugs in der VCL beheben lassen.
Das ging auch ganz schnell ... k.A. warum den offensichtlichen Bug noch keiner gemeldet hatte.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort

 

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 04:38 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