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
Seite 6 von 8   « Erste     456 78      
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.479 Beiträge
 
Delphi 11 Alexandria
 
#51

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 23. Apr 2015, 21:11
Ich glaube, zu der zuletzt geführten Diskussion ist hier immer noch eine abschließende Info zum Ergebnis der Umstellung meines VCL-Rechnungsprogramms auf FMX offen. Das möchte ich hiermit nachholen:

Die Konvertierung meines Rechnungsprogramms von VCL nach FMX ist nun schon seit einigen Monaten abgeschlossen. Seitdem läuft alles stabil wie vormals unter der VCL, sowohl unter Windows und jetzt auch auf dem MAC.

Die MAC-Version vertreibe ich nicht über den App Store, sondern außerhalb. Deswegen lief der Verkauf da etwas zögerlich an, mittlerweile sehe ich die Sache aber auch hier auf einem guten Weg.

Jedenfalls konnte das Programm als solches und auch speziell mit der integrierten QR-Code Generierung für die Bankdaten insoweit überzeugen, dass ich neben Sparkasse, Volksbanken und Reifeisenbanken, BITKOM und anderen als Partner in das Girocode Programm (vgl. www.girocode.de) aufgenommen wurde (siehe dort unter Partner, das "Hastasoft-Logo").

Ich denke, das kann man durchaus als einen Beleg ansehen, dass man mit FMX im Desktop-Bereich stabile, zuverlässige Programme schreiben kann, die ohne Zweifel vom Benutzer angenommen werden.

Insofern werde ich nun einen weiteren Schritt wagen und eines meiner "Megaseller" Programme (meine Terminverwaltung TimOnize) auf FMX umsatteln. Und das natürlich mit Delphi XE8, über Erfahrungen dazu werde ich bei Gelegenheit berichten.

Ich denke, da wird mir auch die neue ImageList in XE8 an vielen Stellen die Arbeit erleichtern. Ich habe dazu auch gleich mal einen kleinen kurzen Blogbeitrag geschrieben (Nr. 11, Delphi XE8 und FireMonkey): http://www.devpage.de/blog/firemonkey.htm
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

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

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 23. Apr 2015, 21:57
Magst du noch ein Statement zu der investierten Zeit und den Nerven und der Menge an manuell erforderlichem Nachgefrickel abgeben?
Denn am Ende zählt nicht, dass es irgendwann geklappt hat, sondern welchen Aufwand (Kosten!) das ganze verursacht hat.
Und welcher Wartungsaufwand durch manuelle Änderungen in Zukunft möglicherweise entsteht.

Ansonsten erinnert mich das an den Chef einer kleinen Firma, wo ich vor Jahren ein Praktikum gemacht habe, die mit WinDev entwickelten.
Er saß mindestens einen halben Tag daran, dem WinDev Treeview beizubringen, die Expand buttons vernünftig anzuzeigen...
In der Zeit hätt er die ganze Anwendung fertig haben können
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (23. Apr 2015 um 22:02 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.479 Beiträge
 
Delphi 11 Alexandria
 
#53

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.008 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#54

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.479 Beiträge
 
Delphi 11 Alexandria
 
#55

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.479 Beiträge
 
Delphi 11 Alexandria
 
#56

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
Online

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

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);
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

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.479 Beiträge
 
Delphi 11 Alexandria
 
#58

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).
Miniaturansicht angehängter Grafiken
clock.jpg   clock2.jpg  

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

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

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);
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

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

Registriert seit: 2. Apr 2004
Ort: Bonn
2.479 Beiträge
 
Delphi 11 Alexandria
 
#60

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 15. Okt 2016, 22:34
Upps, manchmal ist man doch echt blind. Hatte gar nicht mitbekommen, dass Du schon meinen Code abgewandelt hattest.

Super!!

Die HourOF, MinuteOF und SecondOf (TDateTime) kannte ich noch gar nicht! Müssen irgendwie an mir vorbeigegangen sein.

Wer Sie auch noch nicht kannte: man muss die Unit DateUtils (die kannte ich natürlich) einbinden.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 6 von 8   « Erste     456 78      

 

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