C# becoming proficient

S

Steve

I have been working with Delphi since its inception (10+ years but only
up to v5) and am now tackling C#.
I find it immense in depth with an enormous amount to learn.
This is just a comment but i would like to know how long it has taken
some of you obviously proficient programmers to get up to speed.
I read 4 C# books and am now converting a rather complex delhi project
to C# and can see the advantages of it (it is a must do as client says
cannot use delphi.net).

Main question is do others also find C# challenging (or am i
experiencing ealy onset alzeimer).

rgds,Steve
 
C

Carl Daniel [VC++ MVP]

Steve said:
I have been working with Delphi since its inception (10+ years but
only up to v5) and am now tackling C#.
I find it immense in depth with an enormous amount to learn.
This is just a comment but i would like to know how long it has
taken some of you obviously proficient programmers to get up to speed.
I read 4 C# books and am now converting a rather complex delhi
project to C# and can see the advantages of it (it is a must do as
client says cannot use delphi.net).

Main question is do others also find C# challenging (or am i
experiencing ealy onset alzeimer).

I think it depends on your background. Most coming from a C++ or Java
background find C# to be straightforward and easy to learn - and I would
expect the same for Delphi.

Of course, it's important to separate the C# language, which is relatively
simple and easy to learn, from the .NET framework, which is vast, in some
places complex, and takes at least a year or two to master.

-cd
 
S

Steven Nagy

Hello namesake,

Well firstly, I couldn't tell you how long it took me personally.
And to be honest, the learning never stops. Once you learn the syntax
of the language, you have to learn some of the code base classes and
methods, and then you start to learn how the framework works in
general, then its assemblies, and IL, and design patterns, and blah and
blah and blah.

Why not shift some of your core functionality into a Delphi.NET
assembly, and then write the rest of the app in C#? I mean, that's one
of the reasons for having a "Common Language Runtime" so that you can
use a language you know, and write something that is interoperable with
other languages.

I don't know for sure, but is (non .net) Delphi a procedural language?
Maybe its more the OO concepts that are catching you out, rather than
the language specifics.

I think if you've read 4 books already then perhaps book reading is not
your best learning style. This means nothing about you personally;
everyone learns differently. Thats why people spend years doing a PhD
writing about learning methodologies and pedagogy. I personally learn
better by viewing examples and trying to recreate my own applications
implementing that particular concept. Perhaps you just need to identify
your best learning style? Then maybe the language will come easier.
Main question is do others also find C# challenging (or am i
experiencing ealy onset alzeimer).

I find C# liberating! And to my knowledge, alzeimers doesn't inhibit
your ability to learn; only your ability to remember. So don't worry,
learning the language probably isn't your real problem... its
remembering what you learnt!

Oh, also this news group is probably a great learning tool for most
people. Sometimes I just read questions and answers to gain insight
into things. Feel free to post about anything, not matter how silly it
might seem. As long as you make a reasonable attempt to solve it
yourself first, most people won't mind helping out.

Steven
 
M

Michael C

Steve said:
I have been working with Delphi since its inception (10+ years but only
up to v5) and am now tackling C#.
I find it immense in depth with an enormous amount to learn.
This is just a comment but i would like to know how long it has taken
some of you obviously proficient programmers to get up to speed.
I read 4 C# books and am now converting a rather complex delhi project
to C# and can see the advantages of it (it is a must do as client says
cannot use delphi.net).

Main question is do others also find C# challenging (or am i
experiencing ealy onset alzeimer).

I started on vb.net the day the full release came out and switched to c#
soon after that. After a few months I thought I was proficient but going
over some of the stuff I wrote about a year after I started I'm amazed at
what I didn't know. In many cases I went to a huge amount of trouble to
write what was already in the framework or just plain ignored some
*extremely* useful features and did things a much harder way.

Michael
 
P

Peter Duniho

Carl Daniel said:
[...]
Of course, it's important to separate the C# language, which is relatively
simple and easy to learn, from the .NET framework, which is vast, in some
places complex, and takes at least a year or two to master.

A year or two? Yikes! I'm way behind then.

I've been doing Windows since Windows 3.0. I can't even keep up with the
API fast enough...they add things more quickly than I can find reasons to
use them and the time to learn how. And .NET includes most of what's in
Windows, along with a bunch of stuff unique to .NET.

Anyone who has mastered .NET in even two years, they need to go do something
important, like solving world hunger or creating global peace. Their genius
is being wasted on programming!

Pete
 
L

Laurent Bugnion

Hi,

Peter said:
Carl Daniel said:
[...]
Of course, it's important to separate the C# language, which is relatively
simple and easy to learn, from the .NET framework, which is vast, in some
places complex, and takes at least a year or two to master.

A year or two? Yikes! I'm way behind then.

I've been doing Windows since Windows 3.0. I can't even keep up with the
API fast enough...they add things more quickly than I can find reasons to
use them and the time to learn how. And .NET includes most of what's in
Windows, along with a bunch of stuff unique to .NET.

Anyone who has mastered .NET in even two years, they need to go do something
important, like solving world hunger or creating global peace. Their genius
is being wasted on programming!

Pete

IMHO, noone ever "masters" the framework. What you need to master is the
documentation, in order to find the specific class that you need at a
specific moment to solve a specific issue ;-)

The key in learning "modern" languages like Java and C#, I think, is to
learn to use the documentation.

HTH,
Laurent
 
J

Joanna Carter [TeamB]

"Steven Nagy" <[email protected]> a écrit dans le message de (e-mail address removed)...

| I don't know for sure, but is (non .net) Delphi a procedural language?
| Maybe its more the OO concepts that are catching you out, rather than
| the language specifics.

Delphi has always been a very good OO language, but that doesn't mean that
people have used it in an OO way :) I have been one of the most vociferous
OO design evangelists in the UK and on these groups for many years now and
still come across people who use Delphi, C++, VB, even C#, as if they were
procedural languages.

| Oh, also this news group is probably a great learning tool for most
| people. Sometimes I just read questions and answers to gain insight
| into things. Feel free to post about anything, not matter how silly it
| might seem. As long as you make a reasonable attempt to solve it
| yourself first, most people won't mind helping out.

Maybe I am not meant to display my TeamB tag here, but I do so to let people
like yourself know that there are folks around who have knowledge of how to
migrate from Delphi to C#, or the other way, if necessary.

Joanna
 
W

William Stacey [C# MVP]

Agreed :). You can, however, master the general pattern in time. Reading
the design guidlines and everything else, you get to a point where you
expect what the api should look like before you use it - even one you have
not seen (because the .Net framework pretty much has the same look and feel
across api).

--
William Stacey [C# MVP]

| IMHO, noone ever "masters" the framework. What you need to master is the
| documentation, in order to find the specific class that you need at a
| specific moment to solve a specific issue ;-)
|
| The key in learning "modern" languages like Java and C#, I think, is to
| learn to use the documentation.
|
| HTH,
| Laurent
 
K

Kevin Spencer

Hi Steve,

I don't think it's the C# language that you're having difficulty in learning
(although there is certainly a good bit to learn with C#), but the Common
Language Runtime Library, a vast collection of thousands of classes.

If you have 10+ years of Delphi experience, I don't think that learning the
C# language is going to take more than a few months. As for the CLR, you
will probably never learn all of it. I just keep a local copy of the .Net
SDK open on my local machine, and maintain a large collection of Favorites.
I probably spend an hour a day reading it, after 5 years of working with it.

The .Net SDK is a free download from Microsoft:

http://msdn2.microsoft.com/en-us/netframework/aa731542.aspx

--
HTH,

Kevin Spencer
Microsoft MVP
Chicken Salad Shooter
http://unclechutney.blogspot.com

A man, a plan, a canal, a palindrome that has.. oh, never mind.
 
M

Michael C

Laurent Bugnion said:
IMHO, noone ever "masters" the framework. What you need to master is the
documentation, in order to find the specific class that you need at a
specific moment to solve a specific issue ;-)

The key in learning "modern" languages like Java and C#, I think, is to
learn to use the documentation.

Pity the documentation is so poor and usually only states the bleeding
obvious.

Michael
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top