|
Im assisting a friend, and I request to see the C# code he is working on, so that I may understand it more clearly.
He uploads, I download.
Visual Studio causes issues, and refuses to open the Project, so I look at the Files.
I see only 2 .cs file's - Program.cs and AssemlyInfo.cs
This NORMALLY means that either they're coding .NET 1.1 (Form1.cs came out in 2.0), or a Command Line App. I'm assuming it's .NET 1.1, as it's a Windows App.
I look at the code (Terrible Form Generation, mixed with manually coded Events.. Yep... Looks like .NET 1.1)
After trying to convert to .NET 2.0, I decide to ask...
"What .NET are you using... ?" in the hope to move him onto .NET 2.0, and hopefully make life easier for him...
To my complete and utter surprise, he replies ".NET 2.0"
I go back to the Folder to re-check the files, and to the recently downloaded archive - Nope - I have everything he uploaded...
Then comes the next question...
"Which Compiler are you using... ?"
He replies...
"SharpDevelop"
I cry....
I ask why he doesn't use Visual Studio Express
He responds that he doesn't have enough free space...
I cry again....
Moral of the Story:
Sometimes Microsoft DOES Release Useful Products... For the love of god... Please use them
-= Reelix =-
|
|
|
|
|
Sure, but ShharpDevelop is certainly not a bad thing. I can't really blame the developers for always being behind Microsoft. Especially if you consider the pace at which Microsoft is pushing .Net ahead.
My projects usually consist of a folder with at least 20 separate subprojects. Websites, webservices, clients for the webservices, application logic, resource access layer..... I could perhaps manage something like that with the Express edition, but it would certainly be a pain. SharpDevelop might prove to be the less painful alternative then.
|
|
|
|
|
"I can't really blame the developers for always being behind Microsoft."
Dare I ask when Visual C# 2005 Express Edition was released.... ?
I can understand being behind, but that many years... ?
-= Reelix =-
|
|
|
|
|
I still had the privilege to get to know the days before everything became commercial. Programmers used to share ideas and code and applications. Public projects like SharpDevelop live from voluntary work done by private persons. They don't have the manpower, the budget or the time to keep up with a company.
Instead I take such products as they are and thank the developers for their commitment. And I use the product if it is helpful in some way.
Edit: This site is also about the same idea, after all: Sharing information to everyone's benefit
|
|
|
|
|
Reelix wrote: (Form1.cs came out in 2.0),
VS 2k3 does form1 by default.
You know, every time I tried to win a bar-bet about being able to count to 1000 using my fingers I always got punched out when I reached 4....
-- El Corazon
|
|
|
|
|
Why would he send the AssemlyInfo.cs?
When I was new to C# I helped a guy with a project of his; I wrote the backend stuff, he wrote the front end stuff.
I sent him the CS files. He said I needed to send everything required to build the code, so I sent him the BAT file I used to compile the code I wrote in EDIT.
|
|
|
|
|
Reelix wrote: "Which Compiler are you using... ?"
He replies...
"SharpDevelop"
SharpDevelop is an IDE (Integrated Development Environment), as is Visual Studio. Nothing more nothing less. The compiler is a totally different thing.
|
|
|
|
|
Of course, but I think the main issue here was the way the code was formatted by the IDE. Personally I don't care with what the code was written, as long as it is readable. Even with the best IDE some people manage to produce unreadable code and others do a great job just with the Notepad. 'Beautiful' code may seem like a luxury to some, but it is not if you have to inspect other people's work and find out what it does.
|
|
|
|
|
So have VS reformat it when you open it.
|
|
|
|
|
Hey now, i Love SharpDevelop and i've never had a problem with it.
Although, if you are using SharpDevelop (any kind of recent version) for a form you should get:
Program.cs
MainForm.cs
MainForm.Designer.cs
and finally
AssemblyInfo.cs
Generated code goes in file.Designer.cs and events and whatever, go in file.cs. I still think partial classes are a bit wierd though. Maybe we should just go back to header files
My current favourite word is: Bacon!
-SK Genius
|
|
|
|
|
SharpDevelop usually creates a MainForm.cs (since version 1.0 [and even in the betas before], and since version 2.0 it also uses MainForm.Designer.cs).
If he has a form in Program.cs, that means he put it there manually.
|
|
|
|
|
Reelix wrote: He replies...
"SharpDevelop"
I cry....
SharpDevelop is a good tool. And, I actually recommend even Notepad for beginners so that they can get used to the SDK tools. The IDE hides so many things and makes one lazy.
Vasudevan Deepak Kumar
Personal Homepage Tech Gossips
A pessimist sees only the dark side of the clouds, and mopes; a philosopher sees both sides, and shrugs; an optimist doesn't see the clouds at all - he's walking on them. --Leonard Louis Levinson
|
|
|
|
|
SharpDevelop is still good, and its free.
in ur case you friend didi not uploaded the project file(Csproj) which sharpdevelop creates!.
|
|
|
|
|
I freely admit it: I have done this frequently in the past and I will do it again. And it holds countless horrors for those who are not used to it anymore:
void SomeClass::SomeMethod()
{
asm
{
....
}
}
Seriously, I once began on a small self-built machine and typed in machine codes with its hex keypad. Compared to that some C++ inline assembly code is already high level. But I often wonder how people fare, who started out with something like .Net and Java.
Edit: How do I indent the code lines correctly with this editor? Tabs and spaces will not work.
modified on Monday, May 5, 2008 9:25 AM
|
|
|
|
|
CDP1802 wrote: How do I indent the code lines correctly with this editor? Tabs and spaces will not work.
Use a <pre> block, not a <code> block.
|
|
|
|
|
|
CDP1802 wrote: But I often wonder how people fare, who started out with something like .Net and Java.
I find it extremely hard I wish I knew a lot more.
|
|
|
|
|
I never had to write inline ASM, but whats the big deal ? And isn't it __asm ??
|
|
|
|
|
In Visual C++ I always used plain 'asm', but I don't doubt that also '_asm' exists. I will look it up when I start working.
|
|
|
|
|
Sorry - but I have to say this isn't a horror. Sometimes it's just plain necessary.
|
|
|
|
|
I also see it that way. At college a professor tried to tell me that I can't possibly write better code than a compiler. I proved him wrong, but it's not really hard do better than a compiler in most cases.
But I had the impression that many people feel uneasy about going down to assembly level. They are used to all kinds of high level comfort and it seems to be a horror for them to give it up.
|
|
|
|
|
CDP1802 wrote: But I had the impression that many people feel uneasy about going down to assembly level.
Horses for courses. If I'm writing a data entry app, then I would be extremely uneasy, but if I'm writing an app that needs to interact with the registers then I would use this.
|
|
|
|
|
Certainly. A user interface which sits there most of the time, waiting for some event to happen, would not profit much from assembly code. Also, I would not want to lose all benefits from object oriented programming.
But then comes something, that needs a little optimisation. Sometimes you can't just write beautiful high level code and tell the customer to buy a faster computer.
But it seems, this is a lost art. Many 'modern' developers tell me that the compilers are good enough (I usually tell them that this means they are not), the next generation of processors will bring more than any optimization, and of course, that optimization costs too much development time.
|
|
|
|
|
CDP1802 wrote: But it seems, this is a lost art. Many 'modern' developers tell me that the compilers are good enough (I usually tell them that this means they are not), the next generation of processors will bring more than any optimization, and of course, that optimization costs too much development time.
Sadly, but true.
Another reason to know assembler is, when you have written 'correct' code, and somehow there is a bug in the application. In those rare cases its good to be certain that the compiler has created correct code. This way we have found 3 bugs in the compiler and one bug due to including a header which changed a struct a little in one specific part of the application.
Learn from the mistakes of others, you may not live long enough to make them all yourself.
|
|
|
|
|
CDP1802 wrote: Sometimes you can't just write beautiful high level code and tell the customer to buy a faster computer.
Oh I don't know, Microsoft does it all the time!
|
|
|
|