Jump to content


Photo

C#, Getting Started

- - - - -

  • Please log in to reply
12 replies to this topic

#1
chucky.egg

chucky.egg

    Did I say that out loud?

  • MoDaCo Silver
  • PipPipPipPipPipPip
  • 4,724 posts
  • Location:Kent, England
  • Interests:Sleeping
  • Devices:Desire S
  • Twitter:@chucky_egg
I'm trying to (find the time to) teach myself C# at the moment, and have come across various things that I've found useful... they might help you too.

Murach's C# 2005 (book)
http://www.murach.co.../csh5/index.htm
A good introduction to C#, with an easy to read layout (detail/summary). Quite a lot of walking around Visual Studio to start with, but quickly followed with some practical examples. Source code can be downloaded from that link too (no CD).

Microsoft's own "How To" guides
http://msdn2.microso...k/bb495180.aspx
Not sure about the videos, but they also have downloadable code samples for some presumably common requirements - such as sending/receiving messages, scheduling tasks

Egg Head Cafe
http://eggheadcafe.c...px?groupid=1570
Basic (ad heavy) developer forum, but with a few answers I've already spotted that I expect to save me time


Hopefully more to follow, please post any good ideas/links etc you might have

  • 0

#2
PaulOBrien

PaulOBrien

    It's My Party

  • Founder
  • PipPipPipPipPipPip
  • 36,455 posts
  • Gender:Male
  • Location:Norwich, UK
  • Devices:All the Nexus!
  • Twitter:@@paulobrien
Do VB instead :)

Erm, OK, not helpful :D

P

  • 0

You can follow me on Twitter - http://twitter.com/paulobrien / Follow MoDaCo on Twitter - http://twitter.com/modaco

Want to donate? MoDaCo is raising money for the Multiple Sclerosis society.

Posted Image


#3
chucky.egg

chucky.egg

    Did I say that out loud?

  • MoDaCo Silver
  • PipPipPipPipPipPip
  • 4,724 posts
  • Location:Kent, England
  • Interests:Sleeping
  • Devices:Desire S
  • Twitter:@chucky_egg
I did think about just doing it in VB, but I've not done any proper VB for so long I figured I'd take the time to learn C# - apart from anything else almost all the code samples I've seen are in C#

The difference doesn't appear to be that big, the syntax is different obviously, but I'm hoping I'll be able to adapt quite quickly

  • 0

#4
PaulOBrien

PaulOBrien

    It's My Party

  • Founder
  • PipPipPipPipPipPip
  • 36,455 posts
  • Gender:Male
  • Location:Norwich, UK
  • Devices:All the Nexus!
  • Twitter:@@paulobrien
Yeah, the difference isn't a lot TBH, just jumble VB about a bit so it makes less sense and add semicolons on each line.

:)

Oh, and make it case sensitive :D

P

  • 0

You can follow me on Twitter - http://twitter.com/paulobrien / Follow MoDaCo on Twitter - http://twitter.com/modaco

Want to donate? MoDaCo is raising money for the Multiple Sclerosis society.

Posted Image


#5
Swampie

Swampie

    Diehard

  • Members
  • PipPipPipPip
  • 474 posts
  • Location:Surrey, UK
  • Devices:MDA Vario III + MDA Vario
[rant]
If you do use VB - please remember to turn Option Strict on. Silently casting between types isn't good and it isn't clever... :)

And who thought of using () for both function parameters, and array indexes. Oh, and indexes starting at 0 (in some places - arrays) and 1 in others (eg. Strings.Mid) - along with defining an array specifies the last index into that array, not the number of elements wanted. So dim intArray(10) as Integer actually creates an 11 element array, not 10 as one would expect.

And case insensitivity is just nasty... got caught out by that a couple of times when dealing with other people's code
[/rant]

Edited by Swampie, 13 February 2008 - 04:17 PM.

  • 0

#6
PaulOBrien

PaulOBrien

    It's My Party

  • Founder
  • PipPipPipPipPipPip
  • 36,455 posts
  • Gender:Male
  • Location:Norwich, UK
  • Devices:All the Nexus!
  • Twitter:@@paulobrien
While you're at it, why not add the following to the top of everything you do:

Option Explicit On
Option Strict On
It'll make you a better coder :)

P

  • 0

You can follow me on Twitter - http://twitter.com/paulobrien / Follow MoDaCo on Twitter - http://twitter.com/modaco

Want to donate? MoDaCo is raising money for the Multiple Sclerosis society.

Posted Image


#7
PaulOBrien

PaulOBrien

    It's My Party

  • Founder
  • PipPipPipPipPipPip
  • 36,455 posts
  • Gender:Male
  • Location:Norwich, UK
  • Devices:All the Nexus!
  • Twitter:@@paulobrien
Since you're a beginner, when you turn explicit on, it won't automatically cast types for you. What this means is that if you try to put an int in a string variable, for example, it won't work.

So if you have:

Dim strTest as String
strTest = 1
it'll b0rk.

Instead you'd use:

Dim strTest as String
strTest = CStr(1)
That's called 'casting'. There's other similar functions like CInt() to cast to an integer, or the generic casting function that takes a type as a paremeter, i.e.

Dim strTest as string
strTest = CType(1, String)
:)

P

  • 0

You can follow me on Twitter - http://twitter.com/paulobrien / Follow MoDaCo on Twitter - http://twitter.com/modaco

Want to donate? MoDaCo is raising money for the Multiple Sclerosis society.

Posted Image


#8
Swampie

Swampie

    Diehard

  • Members
  • PipPipPipPip
  • 474 posts
  • Location:Surrey, UK
  • Devices:MDA Vario III + MDA Vario
C# casting is nicer though...

Rather than
[codebox]Dim myObject as Object = CType(myOtherType, Object)[/codebox]

[codebox]object myObject = (object)myOtherType[/codebox]

But I'll admit that VB.Net is far less of a problem than VB6 is - they both use .Net so much is similar once you get around the syntax. And after having used VB.Net for a while now, I don't spit and wash my mouth out every time I say it any more... neither do I have to have a shower after editing some VB :)

Saying that thought, I still think in C#, and take much longer to read VB code than C# and would recommend C# to any new starter. Seeing as the syntax is so similar to C, C++, Java and javascript - it does help with keeping your employment options open.

  • 0

#9
PaulOBrien

PaulOBrien

    It's My Party

  • Founder
  • PipPipPipPipPipPip
  • 36,455 posts
  • Gender:Male
  • Location:Norwich, UK
  • Devices:All the Nexus!
  • Twitter:@@paulobrien
And having coded in VB *for ever*, i'm the opposite :)

P (and I can still code PHP, JS etc. etc.)

  • 0

You can follow me on Twitter - http://twitter.com/paulobrien / Follow MoDaCo on Twitter - http://twitter.com/modaco

Want to donate? MoDaCo is raising money for the Multiple Sclerosis society.

Posted Image


#10
PaulOBrien

PaulOBrien

    It's My Party

  • Founder
  • PipPipPipPipPipPip
  • 36,455 posts
  • Gender:Male
  • Location:Norwich, UK
  • Devices:All the Nexus!
  • Twitter:@@paulobrien
You're right tho that nowadays, they are the same under the hood so it's just personal preference.

P

  • 0

You can follow me on Twitter - http://twitter.com/paulobrien / Follow MoDaCo on Twitter - http://twitter.com/modaco

Want to donate? MoDaCo is raising money for the Multiple Sclerosis society.

Posted Image


#11
chucky.egg

chucky.egg

    Did I say that out loud?

  • MoDaCo Silver
  • PipPipPipPipPipPip
  • 4,724 posts
  • Location:Kent, England
  • Interests:Sleeping
  • Devices:Desire S
  • Twitter:@chucky_egg
I always use this at the top of every code section
On error resume next

Is that a bit like your Strict and Explicit commands? :)

  • 0

#12
Bandanner

Bandanner

    Newbie

  • Members
  • Pip
  • 2 posts
  • Devices:HTC touch HD
im sorry if my question is not desired in this thread.
but does anybody know a tutorial which deals specially whith programming C# or VB for mobile devices?
i know there are a lot of tutorials for learning generally progging these languages but i did not find any for mobile devices.
i only found one but its only 12 pages long and i need more B)
so if you know sich a tutorial or anything else i can learn with, you would make me very happy posting it here B)

thank you.

  • 0

#13
Bandanner

Bandanner

    Newbie

  • Members
  • Pip
  • 2 posts
  • Devices:HTC touch HD
sorry doublepost (writing with touch hd is difficult)

Edited by Bandanner, 04 December 2008 - 05:50 PM.

  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users