vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Tempo von NET 
Autor: Kuno60
Datum: 12.04.15 18:45

Manfred X schrieb:
Zitat:

Die Ausführungsgeschwindigkeit ist - wegen der Just-in-time
Compilierung - subopt.

Gerade wegen der Just-In-Time Compilierung ist die Ausführungsgeschwindigkeit deutlich höher als bei VB6, da JIT den Code optimiert und temporäre Werte nicht im Arbeitsspeicher, sondern direkt in der CPU speichert.
Eine PI-Berechnung (20000 Stellen) mit VB6 dauerte auf meinem alten PC (2,5 GHz) 4 Minuten. Die exakt gleiche Berechnung dauert auf meinem neuen PC (3,2 GHz) mit VB12 nur 15,2 Sekunden und ist sogar schneller als mit C# (15,7 Sek.) oder mit C++ (16,4 Sek.).
Der JIT-Compiler verzögert allerdings den Start eines Programmes.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Blackie goes to .NET 
Autor: Blackbox
Datum: 08.04.15 19:19

Hallo Ihr Lieben,

seit Ostern ist klar: Ich wechsle ohne wenn und aber und aus
vollkommen freiem Entschluß heraus zu .NET. Konkret (wobei das
ja egal ist) zu C#.
Seit 1995, ja das sind 20 Jahre, code ich VBA, vornehmlich in
Excel-VBA und Outlook.VBA und natürlich auch seit 1997 in VB 6.0.
Seit 20 Jahren haben sich die VBA-Dialoge, die man
erstellen kann, nicht wesentlich verändert - Betriebssystem hin
oder her.
Seit Framework 4.0 hat sich vieles im Bereich der System- und
Anwendungsprogrammierung verändert und NEIN! Ich möchte nicht
unbedingt Schritt halten - aber es hat sich vieles einfach
nur vereinfacht und FW 4.0 hat wirklich jetzt das Zeugs
echt gute Applications zu entwickeln. Ich bin davon
überzeugt, dass das auch die Zukunft ist.
Seit Ostern haben meine VBA-Dialoge modernes Design, WPF. Und
sehen einfach nur gut aus nicht nur, sie haben eine
Funktionalität die so einfach herstellbar ist, was ich mir nie
hätte träumen lassen.
Wenn ich diesen Schritt tue, so dachte ich, nehme ich gleich noch
die modernste Hochsprache mit. Diese ist C#. Was auch für mich
interessant ist, dass ich auch meine C++-ATL Entwicklungen vollständig
integrieren kann.
Ich freue mich auf Fragen aus dem Umsteiger-Bereich von VB-Classic in
den C# Bereich, damit wir gegenseitig hier weiter lernen.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Mein Beileid !!!! 
Autor: Manfred X
Datum: 09.04.15 00:36

Hallo!

Du verläßt damit ein bewährtes Konzept, das nach wie vor alles bietet,
was man normalerweise so braucht. Und wofür?

Ab sofort benötigst Du teure Zusatzsoftware, um Deinen IL-Code vor neugierigen
Blicken und Dieben einigermaßen zu sichern.
Das Laden umfangreicher Prgramme dauert eine gefühlte Ewigkeit und die
Ausführungsgeschwindigkeit ist - wegen der Just-in-time Compilierung - subopt.
Die FW-"Dokumentation" verdient in einigen Teilen diese Bezeichnung nicht!
Mit C# hast Du Dich zudem für eine artifizielle Programmiersprache entschieden,
die außerhalb des Net-FW niemand kennt. Modernste Hochsprache?

Ich bin - nach wie vor - nicht davon überzeugt, daß "Net" die Zukunft ist.

Ich wünsche Dir Viel Erfolg mit den "echt guten Applications."


Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Mein Beileid !!!! 
Autor: Blackbox
Datum: 10.04.15 17:33

Hi

wieso Beileid? Richtige Applications (vor allem Realtime-Apps) würde ich nie in .NET
bzw. verwaltetem Code schreiben, sondern in C++-ATL (ah ... auch das kann man mittlerweile
sogar für verwalteten Code mit nehmen).
Aber für VBA - bzw. Office-Programmierung, davon schrieb ich, ist das herrlich neues
Neuland und ich bin begeistert. Hätte mir nie träumen lassen mit C# an Excel herum
zu bauen. Die Perfomance ist allemal nicht schlechter als mit VBA-Code und man hat sehr
sehr viel Möglichkeiten mehr.
Und ob einer den Code abkupfert? Selbst schuld ;). Wer tut sich sowas an? Ich code
lieber Code, den ich auch verstehe.

Wenn die vielen tausend Klassen nicht währen

Als Anfänger, der ich bin in .NET, überlege ich manchmal: Ist das wirklich gut,
was ich schreibe, oder gibt es da irgendwo ein verdammtes Delegate, was aus
meinen 50 Zeilen einen Dreizeiler macht. Naja - am Anfang von VB6.0 stand ich
ja vor dem gleichen Problem. Erfahrung ist auch hier Trumpf.

Und wieder Totalanfänger sein - hat auch seine Reize, man fühlt sich 20 Jahre jünger!
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Ich möchte mich auch mal wieder jung fühlen .... 
Autor: Manfred X
Datum: 11.04.15 07:13

Hallo!

Das Net-Framework ist inzwischen bereits 15 Jahre alt und schleppt
deshalb noch viel Kram aus dem letzten Jahrhundert mit.
Eigentlich sollte es sein Verfallsdatum allmählich erreicht haben.

Ich wünsche mir ein Basework, das
- auf einer Super-Graphikmaschine beruht,
- eine Fülle optisch und funktionell attraktiver Controls mitbringt -
insbesondere auch zur Datenvisualisierung,
- ein objektorientiertes Datenverwaltungsmodell einbezieht (Cloud etc.),
- totale Multimedia-Unterstützung bietet - z.B. könnten Treiber für
Mediendaten automatisch erkannt und bei Bedarf geladen werden,
- auf ein effizientes Dateiverwaltungssystem zurückgreift,
- numerische Datentypen enthält, die mit höchster Genauigkeit arbeiten -
dazu hochentwickelte Algorithmen für mathematische Operationen (Matrizen etc.),
- eine verständliche Dokumentation ermöglicht, die knapp sein kann,
weil diesem Basework ein durchgängig einheitliches konzeptionelles Gerüst
zugrundeliegt (intuitive Nutzung),
- und vieles andere ...

[B]Jung sein heißt nämlich: Man hat noch Träume ....[/B]
Und die haben nichts mit "Office" oder "Excel" zu tun.




Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

VB6 ist relativ schnell .... 
Autor: Manfred X
Datum: 13.04.15 06:33

Hallo Kuno!

VB6 ist keine Programmier-Umgebung, die speziell für numerische Aufgaben
optimiert übersetzt. Aber sie erstellt plattformspezifisch end-compilierte Exe-Dateien.
(Für Numeric verwende ich VC++, weil dort weiterführende Optimierungen durch den
Compiler möglich sind.)
Meines Wissens ist auch das Net-Framework kaum auf die Bearbeitung von numerischen
Problemen ausgerichtet.

Das Ergebnis Deines Laufzeit-Vergleichs zwischen Exe-Dateien, die mit VB6 bzw. VB.Net
erstellt worden sind, ist für mich nicht nachvollziehbar.
Du machst keine Angaben zum verwendeten Algorithmus.

Ich habe diesen Alghorithmus (Variante für beliebige Nachkommastellen)
in beiden Entwickungsumgebungen verwendet.
Für die Net-Version sind lediglich alle VB6-Long-Deklarationen in Integer (Int32) übertragen
worden. Die Exe-Dateien habe ich als compiler-optimierte (Release-)Versionen erstellt (32Bit).

Die PI-Berechnung auf 20000 Stellen wird - hardwareabhängig - in wenigen Sekunden
(ca. 5-15 Sek.) gelöst. Die mit VB6 erstellte Exe erledigt diese Aufgabe geringfügig schneller.
Auch bei Berechnung von PI auf 50000 Stellen ist der Rechenzeit-Bedarf nahezu identisch.
(Die Ausführung der Prozesse ist jeweils einem Prozessor fest zugeordnet worden.)

Eine native C++Variante dieses Algorithmus habe ich nicht getestet - erfahrungsgemäß ist die
aber im direkten Vergleich bei solchen Operationen erheblich flotter unterwegs.

Kurz: Der von VB6 verwendete Compiler ist recht gut.
Wer eine höhere Ausführungs-Geschwindigkeit benötigt,
für den ist das Net-Framework keine Option.


Die Entscheidung, ob eine Nutzung des Net-Framework sinnvoll ist,
sollte sich auf relevante Merkmale stützen, z.B. ....

1. Sobald man in die benötigten Net-Klassen eingearbeitet ist,
verfügt man über eine höhere Produktivität
2. Man muß nicht länger auf die störungsanfällige ActiveX-Technologie
zurückgreifen
3. Sehr gute Unterstützung für Multi-Threading wird geboten
4. Kapselung vieler Windows-API-Funktionen in Net-Klassen
5. WPF bietet eine passable Graphik-Unterstützung
6. Framework-(Sicherheits-) Updates und Windows-Kompatibilität
7. Echte 64-Bit-Anwendungen sind möglich (wer's braucht....)
8. Manche nennen - Linq (wer gern enumeriert ...)
9. Datenbanken kann man 'in-memory' nutzen und sie als Objektmodell mappen
10. Allerlei Studio-Assistenten, Templates, Tests ....
11. Zugang zum LINUX-Universum
12. kostenlose Entwicklerlizenz für Express-Editionen
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Stopp keine Debatte über .NET 
Autor: Blackbox
Datum: 13.04.15 19:10

Hallo Leute,

ich wollte mit meinem Thread keine Debatte über für und wider .NET.
Klare Aussagen sind: .NET hat sich sehr stark verbessert und genügt nun
meinen Erwartungen an eine Programmiersprache. In .NET ist es egal, ob
mit VB, C# oder verwaltetem C++, der Speed ist immer der Gleiche.
Für Geschäftsprozesse, ich habe leider nur Excel und Outlook, nehme
ich C#. Nach 20 Jahren hat man von If Then Else End If wirklich die Schnauze
voll - das ist eigentlich alles.

if ( ... )
{
} else
{
}

sieht einfach nur schlanker aus.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

In Ordnung! Knöpfen wir uns also C# vor ..... 
Autor: Manfred X
Datum: 14.04.15 07:46

[I]Nach 20 Jahren hat man von If Then Else End If wirklich
die Schnauze voll - das ist eigentlich alles. ....
[/I](C#) [I]sieht einfach nur schlanker aus[/I]

Interessante Begründung!

Der VB-Code besteht zwar relativ gesehen aus einer größeren Anzahl Zeichen,
aber dadurch ist er auch besser lesbar.
Ich schreibe in C#-Code häufiger erläuternde Kommentare als in VB-Code.

Sobald Du z.B. mehrfach geschachtelte, längere Blöcke programmierst,
wirst Du vermutlich feststellen, daß es ratsam ist,
hinter die schließenden Schweifklammern jeweils einen Kommentar einzufügen,
aus dem hervorgeht, welcher Block dadurch beendet werden soll.
Nicht sehr schlank.

Alternativ kannst Du geeignete Subroutinen schreiben oder Klassen
erstellen, durch deren Nutzung solche Code-Abschnitte zu vermeiden sind.
Das ist auch nicht besonders schlank - es sei denn, diese Methoden sind
"wiederverwendbar".
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Stopp keine Debatte über .NET 
Autor: sv00010
Datum: 14.04.15 22:08

Blackbox schrieb:
Zitat:


ich wollte mit meinem Thread keine Debatte über für und wider
.NET.
Klare Aussagen sind: .NET hat sich sehr stark verbessert und
genügt nun
meinen Erwartungen an eine Programmiersprache.

Das schöne an .NET ist, man kann sich mit dem XmlDocument Werte einfach in Dateien abspeichern.
Im alten Visual Basic da war so etwas immer ein Krampf.
0

Beitrag wurde zuletzt am 14.04.15 um 22:08:52 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel