[Qt-interest] C++ + QT vs C#

Scott Aron Bloom Scott.Bloom at sabgroup.com
Thu Mar 19 15:34:23 CET 2009


Im not sure why there is a project for this...

Build your application with CLR turned on, and call all the C# you want.  I haven't tried it, but since QT is linked in dynamically, it shouldn't be a problem.

And I certainly don't understand why someone would want to use C# on unix... seriously... why?  You have Java..

And the reality is...C# was designed to kill Java... but lets not turn this into a C# vs Java flame war...


The CLR system is REALLY cool,being able to "include" a DLL and be able to instantiate C# or C++ or VB or Java objects in C++ really is quite a lot easier than using active X/COM calls...

But Im still confused... why use C++/Qt and C# on a linux based system?  What does C# bring there...  

On windows, I could see it, there are TONS of libs being put out in C# with CLR, but without a functional .NET framework for the C# code to run against.. why bother?   I can only assume the Qyoto projects main effort is to duplicate the .NET framework, which frankly reminds me of what MainSoft tried to do.. and failed..

Scott




> -----Original Message-----
> From: Pau Garcia i Quiles [mailto:pgquiles at elpauer.org]
> Sent: Thursday, March 19, 2009 3:54 AM
> To: Scott Aron Bloom
> Cc: qt-interest at trolltech.com
> Subject: Re: [Qt-interest] C++ + QT vs C#
> 
> Hello,
> 
> How about combining C# and Qt by using the Qt C# bindings (Qyoto) ? :-)
> 
> http://techbase.kde.org/Development/Languages/Qyoto
> 
> A (very nice) application which uses Qyoto:
> http://synapse.im/
> 
> 2009/3/19 Scott Aron Bloom <Scott.Bloom at sabgroup.com>:
> > Hope all you QT people like my numbers.. I'm pretty proud of them.
> >
> >
> >
> > So I've been working on a project for a client, and the previous consultant
> > (who had to leave the project but Im friends with) is a C# guy... Loves C# etc
> > etc...  Claims the performance is great and that Im full of $%#@ when I say
> > Ill stick with C++ when and I need performance...  And even if I don't.. Ill
> > still take C++ J
> >
> >
> >
> > In taking over the project, essentially we had to be able to read in a tab
> > separated file, with a random header, and insert it into a new table, using
> > the first row as the field names of the database.
> >
> >
> >
> > He wrote it in C# and had all but the insert into DB working.. Now.. I
> > didn't like his style (he read the whole file in at once and then used a
> > string splitter to split the lines...
> >
> >
> >
> > Initially its app sat at 450MB to read in the 118k rows due to having the
> > whole thing in memory + each line in memory...
> >
> >
> >
> > Well we both wrote it to be read 1 line, process 1 line, maybe a bit slower...
> > but not much..
> >
> >
> >
> >
> >
> >                 C++(Console) C++(GUI)                C#
> >
> > Memory before loading anything             6MB
> > 9MB       22MB
> >
> > Memory after reading each line
> >
> > and inserting into DB
> > 6MB                       9MB       180MB (love heap managers...)
> >
> > Memory after show db in GUI
> >
> > In QT using QSqlQueryModel and
> > QAbstractTableModel
> > NA                          12MB    450MB
> >
> >
> >
> > Runtime to load                with NO DB connection
> >
> > (release mode)                                 3s
> > 3s            9s
> >
> > Runtime to load with DB inserts
> > 210s                       210s       540s
> >
> > Runtime to show in GUI
> > NA                          .5s          3.3s
> >
> >
> >
> > Size of data...
> >
> > ~118k rows of 105 columns of ~50 filled columns.
> >
> >
> >
> > BTW.. I cant use BULK IMPORT commands because they are not SQL database
> > agnostic.
> >
> >
> >
> > Scott
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > _______________________________________________
> > Qt-interest mailing list
> > Qt-interest at trolltech.com
> > http://lists.trolltech.com/mailman/listinfo/qt-interest
> >
> >
> 
> 
> 
> --
> Pau Garcia i Quiles
> http://www.elpauer.org
> (Due to my workload, I may need 10 days to answer)




More information about the Qt-interest-old mailing list