Click here to Skip to main content
15,890,123 members
Home / Discussions / C#
   

C#

 
GeneralRe: Keeping External App from closing or being minimized Pin
DeepToot12-Oct-05 9:52
DeepToot12-Oct-05 9:52 
Questionplay an avi from a stream Pin
Sasuko11-Oct-05 11:11
Sasuko11-Oct-05 11:11 
AnswerRe: play an avi from a stream Pin
Dave Kreskowiak12-Oct-05 3:55
mveDave Kreskowiak12-Oct-05 3:55 
QuestionConsidering move from MFC/C++ to Winforms/C# ??? looking for advice Pin
Warren Stevens11-Oct-05 10:51
Warren Stevens11-Oct-05 10:51 
AnswerRe: Considering move from MFC/C++ to Winforms/C# ??? looking for advice Pin
Christian Graus11-Oct-05 11:12
protectorChristian Graus11-Oct-05 11:12 
AnswerRe: Considering move from MFC/C++ to Winforms/C# ??? looking for advice Pin
Michael P Butler11-Oct-05 20:05
Michael P Butler11-Oct-05 20:05 
AnswerRe: Considering move from MFC/C++ to Winforms/C# ??? looking for advice Pin
Damir Valiulin9-Apr-06 8:07
Damir Valiulin9-Apr-06 8:07 
GeneralRe: Considering move from MFC/C++ to Winforms/C# ??? looking for advice Pin
Warren Stevens10-Apr-06 7:37
Warren Stevens10-Apr-06 7:37 
Hi Damir.

Damir Valiulin wrote:
Sorry to bring up this 6 month old post


I don't mind discussing a 6 month old post, mainly because I can't say I really came to a definitive conclusion, and I feel the question remains to be answered.

Damir Valiulin wrote:
I was working on certain ...Prop application...My task was to "fix it up" and I had two month (with lots of overtime) to do it.

I'd have to say I'm one of the few people who can really appreciate that...and it must have sucked. I hope you at least got a good bonus for your suffering Big Grin | :-D


Damir Valiulin wrote:
I ended up almost rewriting the whole thing.

That seems to be a recurring theme. Unfortunately (and this seems to be common to almost all programmers) once someone sees an application that has 80% of the required features, it's very hard to convince them that the project should be started from scratch because the code is a steaming pile of .... Dead | X|
If you want to build commercial-quality software that will last for many versions/years, it simply cannot be built from a foundation that was written by a student. Period.
Sigh | :sigh:

1) Yeah, absolute pixels are right out of the 1980's !?! XAML should fix all of that - assuming you don"t have to ship anything before 2009 Poke tongue | ;-P

5) I can't say I'm totally up on the subject, but I don't see how decent code protection (e.g. hardlocking) could ever be done in a byte-code system like .NET. From what I've seen, even obfuscated code is fairly readable when "disassembled". I don't think Microsoft is overly concerned about this, so I'm not sure if it will be solved any time soon.

6) I absolutely and totally agree with you on exceptions. They look great on a computer science chalkboard, but aside from file I/O, I would say exceptions are highly overrated for writing practical code. I think the main reason they're so popular these days is that it's great for framework authors (they just say "the caller will deal with it" and they're done), while sticking people like us with the hassle of catching all of their problems.

And (finally), for the topic at hand...

I considered C#/Winforms/etc quite thoroughly (I bought and read through a good number of books, and tried tons of sample code) and my opinion is:

i) I found C# very elegant compared to C++ (e.g. properties, events), with
the exception of not having destructors (which seemed like stepping back to the middle ages).

ii) I thought Managed C++ was too ugly (apparently MS agreed), and I would have to
say that while I think it's going to be popular for legacy code, I've yet to be convinced C++/CLI has a future for writing "new" code (i.e. how many people will use it over C# ???) Any language needs a lot of people picking it up, or it will die off quickly. So I don't think it's a good choice for that reason.

iii) I found every commercial Winforms GUI library that I could get my hands on to be surprisingly bad (compared to MFC/C++ components). They were either really sluggish or buggy. I don't want a window to flicker and be sluggish as I stretch it. It's 2006 and I have a 2+Ghz computer - is that really too much to ask?

iv) Microsoft is clearly moving towards Avalon / XAML. Winforms is already a "legacy" technology, so I don't think it's a good choice for that reason.

v) I asked the same question on "Joel on Software":
http://discuss.joelonsoftware.com/default.asp?design.4.230024.19
and most of the replies were quite negative about .NET / WinForms. It's good to get
a different perspective sometimes, since CodeProject/MSDN sometimes make you think
Microsoft is the only option.

vi) Winforms has been out long enough that it would make me nervous to choose it
for a desktop app, when there are so few applications that actually do this.

vii) If you haven't looked at it much, QT is very elegant. It's sort of a "modern" C++ framework that runs natively on Mac/Windows/Linux.

In the end, I think MFC is probably a good choice for another 4+ years. Technology changes too fast to predict more definitively than that. After that, my guess is the compiled-language programming world moves more towards a C# vs. Java split with XAML being used for "new" desktop apps on Windows (i.e. perhaps port MFC/C++ apps to XAML/C#). I also wouldn't completely rule out Linux-on-the-desktop or moving almost everything to being web based (ASP.NET / AJAX).

Because of all the uncertainty, the one thing I have done for my code is be religious about separating GUI and non-GUI code, to minimize the pain of porting over to something else, because you just never know...

Warren
GeneralXbox 360 Development with the .NET Framework Petition Pin
jamesthurley11-Oct-05 10:40
jamesthurley11-Oct-05 10:40 
GeneralRe: Xbox 360 Development with the .NET Framework Petition Pin
Wjousts11-Oct-05 10:49
Wjousts11-Oct-05 10:49 
GeneralRe: Xbox 360 Development with the .NET Framework Petition Pin
XRaheemX11-Oct-05 11:05
XRaheemX11-Oct-05 11:05 
GeneralRe: Xbox 360 Development with the .NET Framework Petition Pin
Tom Larsen11-Oct-05 11:09
Tom Larsen11-Oct-05 11:09 
GeneralRe: Xbox 360 Development with the .NET Framework Petition Pin
leppie11-Oct-05 16:13
leppie11-Oct-05 16:13 
QuestionWaitHandle.WaitAny Pin
AISchreiber11-Oct-05 10:21
AISchreiber11-Oct-05 10:21 
AnswerRe: WaitHandle.WaitAny Pin
leppie11-Oct-05 16:19
leppie11-Oct-05 16:19 
QuestionDataset database issues Pin
cvncpu11-Oct-05 9:47
cvncpu11-Oct-05 9:47 
AnswerRe: Dataset database issues Pin
Bahadir Cambel11-Oct-05 13:57
Bahadir Cambel11-Oct-05 13:57 
AnswerRe: Dataset database issues Pin
albCode13-Oct-05 21:16
albCode13-Oct-05 21:16 
QuestionAppDomain and unloading assemblies Pin
mirano11-Oct-05 9:38
mirano11-Oct-05 9:38 
AnswerRe: AppDomain and unloading assemblies Pin
David Stone11-Oct-05 11:09
sitebuilderDavid Stone11-Oct-05 11:09 
GeneralRe: AppDomain and unloading assemblies Pin
mirano11-Oct-05 12:11
mirano11-Oct-05 12:11 
GeneralRe: AppDomain and unloading assemblies Pin
David Stone11-Oct-05 12:36
sitebuilderDavid Stone11-Oct-05 12:36 
GeneralRe: AppDomain and unloading assemblies Pin
leppie11-Oct-05 16:25
leppie11-Oct-05 16:25 
GeneralRe: AppDomain and unloading assemblies Pin
mirano11-Oct-05 21:50
mirano11-Oct-05 21:50 
AnswerRe: AppDomain and unloading assemblies Pin
S. Senthil Kumar12-Oct-05 19:33
S. Senthil Kumar12-Oct-05 19:33 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.