You are not logged in.

#1 2006-11-20 11:03:50

Mr Green
Forum Fellow
From: U.K.
Registered: 2003-12-21
Posts: 5,896
Website

learn C#

Hi,

I am going to Google for above Honest! ... just if anyone knows of any good tutorials online then let us know...

TIA


Mr Green

Offline

#2 2006-11-20 11:25:22

lanrat
Member
From: Poland
Registered: 2003-10-28
Posts: 1,274

Re: learn C#

It depends how you want to use it. Personally I prefer VB (my job requirements) but if you want to program asp.net start with this site. Tutorials are usually in two versions VB and C# so you can choose.

For opensource or general tutorials I'd start with wikipedia.

If you want original MS version (for windows) you can download Visual C# and/or Visual Web Developer both available as free "express" versions (including the right to redistribute your software created using these tools - which is BTW quite wise MS move from their POV of course :-)).

And naturally google knows a lot more.

Offline

#3 2006-11-20 11:51:30

Mr Green
Forum Fellow
From: U.K.
Registered: 2003-12-21
Posts: 5,896
Website

Re: learn C#

thanks .....

[in quiet voice] I want to learn mono shhhh  lol


Mr Green

Offline

#4 2006-11-20 15:33:17

deficite
Member
From: Augusta, GA
Registered: 2005-06-02
Posts: 693

Re: learn C#

I started with the articles that come with Visual C# Express and then I just experimented with an API browser on hand. C# really is a wonderful language. Perhaps one of the few good things that will come with Vista will be the proliferation of C#. The more C# grows on Windows, the more Mono will be pressured to complete important parts of its CLI.

edit: I haven't read it, but Google found me this: http://www.csharp-station.com/Tutorials/Lesson01.aspx

Offline

#5 2006-11-20 15:48:41

Mr Green
Forum Fellow
From: U.K.
Registered: 2003-12-21
Posts: 5,896
Website

Re: learn C#

Yeah I was looking at that nice & clear...

just got to get coding I guess


Mr Green

Offline

#6 2006-11-20 15:49:12

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: learn C#

I like the wrox books for C#, myself.

Offline

#7 2006-11-20 15:53:58

Mr Green
Forum Fellow
From: U.K.
Registered: 2003-12-21
Posts: 5,896
Website

Re: learn C#

/me looks on Amazon......


Mr Green

Offline

#8 2006-11-20 16:26:45

lanrat
Member
From: Poland
Registered: 2003-10-28
Posts: 1,274

Re: learn C#

Yeah, right... since when amazon is called torrent? :-D

Offline

#9 2006-11-20 16:58:00

Mr Green
Forum Fellow
From: U.K.
Registered: 2003-12-21
Posts: 5,896
Website

Re: learn C#

lol ... books remember them .. no I prefer the printed page [me age!]


Mr Green

Offline

#10 2006-11-20 20:44:38

hypermegachi
Member
Registered: 2004-07-25
Posts: 311

Re: learn C#

msdn2.microsoft.com has a wealth of free info and tutorials.

Offline

#11 2006-11-20 21:35:46

cactus
Taco Eater
From: t͈̫̹ͨa͖͕͎̱͈ͨ͆ć̥̖̝o̫̫̼s͈̭̱̞͍̃!̰
Registered: 2004-05-25
Posts: 4,622
Website

Re: learn C#

bah.
I say learn something else instead of C#.


"Be conservative in what you send; be liberal in what you accept." -- Postel's Law
"tacos" -- Cactus' Law
"t̥͍͎̪̪͗a̴̻̩͈͚ͨc̠o̩̙͈ͫͅs͙͎̙͊ ͔͇̫̜t͎̳̀a̜̞̗ͩc̗͍͚o̲̯̿s̖̣̤̙͌ ̖̜̈ț̰̫͓ạ̪͖̳c̲͎͕̰̯̃̈o͉ͅs̪ͪ ̜̻̖̜͕" -- -̖͚̫̙̓-̺̠͇ͤ̃ ̜̪̜ͯZ͔̗̭̞ͪA̝͈̙͖̩L͉̠̺͓G̙̞̦͖O̳̗͍

Offline

#12 2006-11-20 21:56:55

arooaroo
Member
From: London, UK
Registered: 2005-01-13
Posts: 1,268
Website

Re: learn C#

cactus wrote:

bah.
I say learn something else instead of C#.

I think C# looks rather attractive and I keep thinking about having a go every now and again, but I've got enough projects with the languages I already know.

I think the language and API look very impressive. I'm not especially anti-MS - I'll use any thing I need to do a given job - providing it's within my means. I imagine Windows-only development is rather pleasant in C#.

Offline

#13 2006-11-20 22:08:28

deficite
Member
From: Augusta, GA
Registered: 2005-06-02
Posts: 693

Re: learn C#

cactus wrote:

bah.
I say learn something else instead of C#.

I would too, but I was trying to answer his question. C# really is one of the better new languages out there, and I do see good things with its proliferation. However, I'd prefer python myself. I used C# for a few months and made some stuff with Managed DirectX. I didn't have many problems at all, so although I prefer python, C# is a decent language too.

Offline

#14 2006-11-21 00:11:31

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: learn C#

arooaroo wrote:
cactus wrote:

bah.
I say learn something else instead of C#.

I think C# looks rather attractive and I keep thinking about having a go every now and again, but I've got enough projects with the languages I already know.

I think the language and API look very impressive. I'm not especially anti-MS - I'll use any thing I need to do a given job - providing it's within my means. I imagine Windows-only development is rather pleasant in C#.

I agree 100%.  Just because the language is made by MS doesn't mean you shouldn't learn it.  It's a worthwhile tool to have in your arsenal, especially if an employer wants something impressive in a windows environment quickly(non-square, transparent, video playing windows are around 150 LOC minus the configuration BorderColor = Black crap).

.NET itself isn't "slow" - it's only the initial load of the CLR which is expensive.  Other than that, I've seen motion capture algorithms perform, to the naked eye, as good as a C++ version.

I think the worst part of C#, sadly enough, is Mono.  Mono has missed the mark on the unix/linux philosophy of simplicty.  They could implement things so much better, but try to tack together the way microsoft does things under a completely different environment.  It's gross.

Offline

#15 2006-11-21 01:35:27

cactus
Taco Eater
From: t͈̫̹ͨa͖͕͎̱͈ͨ͆ć̥̖̝o̫̫̼s͈̭̱̞͍̃!̰
Registered: 2004-05-25
Posts: 4,622
Website

Re: learn C#

That is my main dislike of C#...mono.
I should have been more clear. If you are going for a MS environment, then C# is a fine choice (I have used it myself on occasion).
I just think mono is both horrible and awful, not to mention.... a bad idea.


"Be conservative in what you send; be liberal in what you accept." -- Postel's Law
"tacos" -- Cactus' Law
"t̥͍͎̪̪͗a̴̻̩͈͚ͨc̠o̩̙͈ͫͅs͙͎̙͊ ͔͇̫̜t͎̳̀a̜̞̗ͩc̗͍͚o̲̯̿s̖̣̤̙͌ ̖̜̈ț̰̫͓ạ̪͖̳c̲͎͕̰̯̃̈o͉ͅs̪ͪ ̜̻̖̜͕" -- -̖͚̫̙̓-̺̠͇ͤ̃ ̜̪̜ͯZ͔̗̭̞ͪA̝͈̙͖̩L͉̠̺͓G̙̞̦͖O̳̗͍

Offline

#16 2006-11-21 04:17:55

hypermegachi
Member
Registered: 2004-07-25
Posts: 311

Re: learn C#

i'm curious...can you guys be more detailed why you think mono is horrible?

Offline

#17 2006-11-21 08:18:36

Mr Green
Forum Fellow
From: U.K.
Registered: 2003-12-21
Posts: 5,896
Website

Re: learn C#

I value Cacti's opinion, I just like to learn about new things thats all

Python/Ruby are ok I like them clean easy to read use .... etc

Always wanted to learn C but its hard work [for an old man!]

So Mono interests me

Surely learning OOP is a good thing

Can understand why people do not like it [.NET!] but Gnome seems to be getting more mono apps sooo ....


Mr Green

Offline

#18 2006-11-21 08:39:24

sweiss
Member
Registered: 2004-02-16
Posts: 635

Re: learn C#

I believe the reason for such arguments is the fact that Mono is years behind (literally) the .NET framework. The most recent Mono release does not fully support .NET 2.0, which will soon become obsolete as .NET 3.0 is released.
In practice this renders C# as not exactly a cross platform language, as you can't really take recent .NET sourcecode and run it as is with Mono.

As I work with C# most of the time, I've now started to try and study Java, which is said to be very similar to C# (or the other way around, actually), and is also known to be fully cross platform.

Offline

#19 2006-11-24 16:52:25

Pavel Jackoff
Member
Registered: 2006-08-05
Posts: 30

Re: learn C#

I use Java most of the time, only my university is forcing me to use C++.
I just took a short look on C# and it really seems to be something like MS Java. So why not use the original instead? Especially since it will be completely free software soon!

Offline

#20 2006-11-27 04:39:15

hypermegachi
Member
Registered: 2004-07-25
Posts: 311

Re: learn C#

Pavel Jackoff wrote:

I just took a short look on C# and it really seems to be something like MS Java. So why not use the original instead?

because C# is better designed and more powerful.  value types vs reference types (you can control stack or heap allocation for user-defined types).  operator overloading (tried matrix stuff in java before?).  delegates are much nicer IMO than anonymous classes for events.  and don't even get me started about java's fake implementation of generics (use reflection at runtime and you'll see everything is gone).

Offline

#21 2006-11-27 05:33:22

Pavel Jackoff
Member
Registered: 2006-08-05
Posts: 30

Re: learn C#

hypermegachi wrote:

because C# is better designed and more powerful.  value types vs reference types (you can control stack or heap allocation for user-defined types).  operator overloading (tried matrix stuff in java before?).  delegates are much nicer IMO than anonymous classes for events.  and don't even get me started about java's fake implementation of generics (use reflection at runtime and you'll see everything is gone).

Ok, you are right on most points.
Value vs. reference is not a killer feature for me, but it's sure nice to have. Delegates are really a nice thing and generics are lacking. But I like Java not to support operation overloading, it's so easy to misread code.
On the other hand, Java's crossplatform approach makes up for it's flaws, I don't want my programs to just run on windows. And it really adds an ideological bonus, that Java is free software now. smile

Offline

#22 2006-11-27 10:47:28

arooaroo
Member
From: London, UK
Registered: 2005-01-13
Posts: 1,268
Website

Re: learn C#

hypermegachi wrote:

because C# is better designed and more powerful.  value types vs reference types (you can control stack or heap allocation for user-defined types).  operator overloading (tried matrix stuff in java before?).  delegates are much nicer IMO than anonymous classes for events.  and don't even get me started about java's fake implementation of generics (use reflection at runtime and you'll see everything is gone).

C# (and .net in general) has the advantage of hindsight and seeing the sorts of issues that cropped up with byte-code languages like Java.

Java is so focused on compatibility now that it's almost impossible to integrate new features if there's a big enough demand for them. For example, Java's introduction of generics is basically syntactic sugar, because all trace of generics disappears at the byte-code level.

That said, if Sun created Java2 tomorrow, then they would be able to rub the slate clean, improve Java and probably out-do C# too.

Offline

#23 2006-11-27 19:25:17

sweiss
Member
Registered: 2004-02-16
Posts: 635

Re: learn C#

Hmm, some of these points are troubling. I'm surprised that there's no operator overloading in Java. I think the beauty of creating new data types is also to be able to use them as primitive data types - that requires operator overloading.

Is there any functionality Java provides which C# does not?

Offline

#24 2006-11-28 03:12:43

hypermegachi
Member
Registered: 2004-07-25
Posts: 311

Re: learn C#

google up some reviews with Anders Hejlsberg, where he talks about how he designed c#.

he mentions about the "backward compatibility" as the main reason of the way java did their implementation.  all .NET 1.1 code runs on .NET 2, even tho .NET 1 doesn't have generics...isn't that what backward compatibility is?  i just don't understand how adding that functionality would break everything.  all old code remains using ArrayList.  all the new code uses ArrayList<T>.  just like how .NET has a complete new namespace for generics.

the only thing i noticed that java had that c# didn't have was anonymous inner classes....but in c# 2 that is solved with anonymous delegates.

java also has checked exceptions.  c# doesn't.  java has better iterators...but i seem to get along without them.

hell...just read up on those interviews with Anders and you'll learn a lot about both languages.

anyways, perhaps the coolest thing about the .NET framework is emitting code at runtime.

it's possible to dynamically create a class at runtime and generate IL opcodes like assembly.  using this technique, a simple nested for loop adding numbers can gain 3000% performance.  (essentially, you're emitting a single a+b+c+d+e+f+g+... statement instead of adding and storing each addition)

of course...3 lines of regular code becomes 30 lines  roll

Offline

Board footer

Powered by FluxBB