Euklid hat geschrieben:Das stimmt so nicht. Weder bei Lazarus, noch bei jeder anderen mir bekannten Entwicklungsumgebung für native Maschinensprachen. Natürlich springt bei richtiger Installation der Cursor auch bei einer AV an die betroffene Codestelle und Du kannst Dir über den Aufrufstack den genauen Pfad anzeigen lassen. Dadurch wird die Suche nach AV erheblich erleichtert.
Warf hat geschrieben:Klar das war ein wenig überspitzt dargestellt, wenn man weiß wie man mit dem gdb umzugehen hat findet man auch mit Lazarus die Fehler, aber .Net ist da doch um Welten einfacher.
Wie gesagt man findet auch mit Lazarus oftmals den Fehler, aber wenn du der Meinung bist Lazarus und der GDB stehen dem .Net Debugger in nichts nach muss ich an deiner geistigen Gesundheit zweifeln. Um ehrlich zu sein ist mMn Lazarus mit gdb die schlechteste Debugging software die ich seit langem gesehen habe, Delphi Debugger, Java Debugger und auch .Net Debugger, selbst der Atmel Debugger für den AVR Microcontroller mit dem ich aktuell arbeite sind da besser. (Besser in sinne von mehr Funktionen bzw zeigen mehr Informationen).
Euklid hat geschrieben:Auch das stimmt nicht. Die Entwicklung von Mono hinkt der Entwicklung für .net für Windows erheblich hinterher. CLI könnte in der Theorie plattformunabhängig sein - Microsoft interessiert die Entwicklung von .net aber nur für die eigenen Wndows-Produkte. Für andere Betriebssysteme muss sich die OpenSource-Community kümmern und die läuft den Standards und der Windows-Entwicklung des zugehörigen Frameworks aber völlig hinterher. Das wars mit der Kompatibilität.
Lazarus hinkt Delphi auch einiges hinterher, dennoch wenn wir von Pascal sprechen reden wir von Beidem, obwohl beides nicht vollständig kompatibel ist. Da unterscheiden sich .Net und Pascal gar nicht mal so sehr.
Euclid hat geschrieben:Auch das stimmt nicht - die Bibliotheken werden beim fpc in die Binärdatei hineinkompiliert und ein einmal kompiliertes Programm läuft auch auf PCs, die nie etwas von Lazarus gehört haben. Das ist bei .net-Anwendungen nicht so: Der PC muss die Laufzeitbibliotheken kennen und installiert haben, ansonsten läuft das Programm nicht. .net-Programme brauchen die .net-Bibliotheken wie der Mensch die Luft zum Atmen. Sind die Bibliotheken nicht in der Version und Aktualität installiert, wie vom Programm benötigt, läuft es schlicht weg nicht.
Das ist kompletter Müll, du vergleichst grade .Net DLL's mit Lazarus source code Packages. Wenn du in Lazarus eine DLL verwendest (z.B. Bass) muss diese auch auf dem Zielrechner installiert sein, genauso wenn du bei C# eine Sourcecode Bibliothek einbindest wird diese Mitkompiliert. Das ist wie zu sagen meine Äpfel schmecken besser als deine, weil du hast Bananen.
Bei Lazarus gibt es nur mehr Sourcecode Bibliotheken da DLL's für die native Entwicklung komplett beschissen sind, da man für jede Architektur eine eigene DLL benötigt. Bei .Net ist das nicht so. Man kann in .Net sogar dem Compiler sagen er soll die DLL's in die Executeable packen, dann muss diese auch nicht auf dem Zielsystem bereitstehen, das geht bei Pascal meines Wissens nach nicht (so einfach).
So gesehen ist was das angeht .Net besser als Pascal, da man in beiden Sprachen sowohl DLL's als auch Sourcebibliotheken verwenden kann, während der Umgang mit DLL's in .Net deutlich einfacher ist als in Pascal.