473,769 Members | 6,926 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

a question about this book

I'm thinking about reading Beginning C# Objects: From Concepts to Code
because I still don't have a great grasp of objects, but I wonder if C#
2.0 will change things enough that a lot of what's in the book will no
longer be relevant or applicable? I know generics are the big change,
but since I don't have much of a concept of what they are yet, I don't
know how much they (and other changes) will effect any of the content of
books released before 2005.

Thanks.
Nov 17 '05 #1
11 1231
What dont you understand about objects?
Nov 17 '05 #2
Josh wrote:
What dont you understand about objects?


Hard to say. I understand what they are basically, but I can't help but
try to read programs from top to bottom (procedurally, I guess), and I
know that objects don't quite work that way. It seems like in order to
understand an OO program, you have to jump around in the code to see
everything. That can be a little confusing, and also I guess I just
wanted a better explanation of how they work. Maybe there's a website I
can read that explains it well?
Nov 17 '05 #3
In message <Kq************ ********@rcn.ne t>, John Salerno
<jo******@NOSPA Mgmail.com> writes
Josh wrote:
What dont you understand about objects?


Hard to say. I understand what they are basically, but I can't help but
try to read programs from top to bottom (procedurally, I guess), and I
know that objects don't quite work that way. It seems like in order to
understand an OO program, you have to jump around in the code to see
everything.


Ah, now, that's just the point. If your classes are well designed, in
the context of inspecting code that uses them, you shouldn't need to
look at their source to see how they work.

--
Steve Walker
Nov 17 '05 #4
> It seems like in order to understand an OO program, you have to jump
around in the code to see everything.


If the code is written OO you dont have to step into all of that code. For
instance, heres some code.

String a = "some text"'
DataTable myTable = UserBusinessObj ect.GetBlankTab le();
int b = 23;
Now when reading through this code you wouldn't have to follow the flow into
"UserBusinessOb ject.GetBlankTa ble()" because it's self explanatory, and
provided there is no error when you make the call you dont have to go look
in there.

OO code should be broken down into compact self contained units so that
reading the code is simpler than reading procedureal code. Effectively OO
can simply be considered an enhanced GOSUB technology.

Nov 17 '05 #5
Hello Josh,

No, you don't need to step into that code. That is the whole idea behind
Encapsulation which basically abstrats some chunk of functionality into a
box with well defined inputs/outputs (an interface contract). That beiong
said, it's going to be really hard without some basic understanding of OO
concepts since the .NET Framework is completly OO oriented. So, I have already
suggested Petzold's Programmin In The Key of C# in another thread that teaches
programming from the ground up and Part IV teaches OO from the ground up.

This intro is in C++ but some of intro may help http://www.zib.de/Visual/people/muel.../tutorial.html

Also:
http://www.softwaredesign.com/objects.html
http://www.firststep.com.au/educatio...ground/oo.html

Sam Gentile
Chief .NET Architect
Adesso Systems, Inc
INETA Speaker, Microsoft MVP - .NET/C#
Blog: http://samgentile.com/blog/

It seems like in order to understand an OO program, you have to jump
around in the code to see everything.

J> If the code is written OO you dont have to step into all of that
J> code. For instance, heres some code.
J>
J> String a = "some text"'
J> DataTable myTable = UserBusinessObj ect.GetBlankTab le();
J> int b = 23;
J> Now when reading through this code you wouldn't have to follow the
J> flow into "UserBusinessOb ject.GetBlankTa ble()" because it's self
J> explanatory, and provided there is no error when you make the call
J> you dont have to go look in there.
J>
J> OO code should be broken down into compact self contained units so
J> that reading the code is simpler than reading procedureal code.
J> Effectively OO can simply be considered an enhanced GOSUB
J> technology.
J>

Nov 17 '05 #6
Sam sgentile wrote:
Hello Josh,

No, you don't need to step into that code. That is the whole idea behind
Encapsulation which basically abstrats some chunk of functionality into a
box with well defined inputs/outputs (an interface contract). That beiong
said, it's going to be really hard without some basic understanding of OO
concepts since the .NET Framework is completly OO oriented. So, I have already
suggested Petzold's Programmin In The Key of C# in another thread that teaches
programming from the ground up and Part IV teaches OO from the ground up.

This intro is in C++ but some of intro may help http://www.zib.de/Visual/people/muel.../tutorial.html


I just finished reading that book, but I think I could understand it better.
Nov 17 '05 #7
Steve Walker wrote:
In message <Kq************ ********@rcn.ne t>, John Salerno
<jo******@NOSPA Mgmail.com> writes
Josh wrote:
What dont you understand about objects?


Hard to say. I understand what they are basically, but I can't help but
try to read programs from top to bottom (procedurally, I guess), and I
know that objects don't quite work that way. It seems like in order to
understand an OO program, you have to jump around in the code to see
everything.

Ah, now, that's just the point. If your classes are well designed, in
the context of inspecting code that uses them, you shouldn't need to
look at their source to see how they work.


Well see, the fact that I'm seeing a problem where there shouldn't be
shows that I don't fully understand it. :)
Nov 17 '05 #8
"John Salerno" <jo******@NOSPA Mgmail.com> wrote in message
news:md******** ************@rc n.net...
I'm thinking about reading Beginning C# Objects: From Concepts to Code
because I still don't have a great grasp of objects, but I wonder if C#
2.0 will change things enough that a lot of what's in the book will no
longer be relevant or applicable? I know generics are the big change, but
since I don't have much of a concept of what they are yet, I don't know
how much they (and other changes) will effect any of the content of books
released before 2005.
The OO concepts that I assume that book contains will be fundamental for a
long time to come. The .NET framework is entirely objects, and the new
features of 2.0 do not change that at all. Generics allows you to created
slightly different types of classes, iterators construct enumerator classes
for you, and anonymous methods create delegates for you. In all these areas
a strong understanding of OO is still required. My suggestion would be to
read what you can on OO and make sure you understand it before worrying too
much about the 2.0 features.

Also, play around with samples from the books. I'm sure they've got examples
and stuff, so develop them. Also, try writing them procedurally and then
make a major design change to both the procedural and the OO code. You
should quickly see the advantages of OO in such a case. My conversion to the
"OO Way" was not a sudden epiphany but a gradual accretion of understanding.
Thanks.

Nov 17 '05 #9
On Sat, 7 May 2005 09:45:34 +0200, "Sean Hederman"
<em*******@codi ngsanity.blogsp ot.com> wrote:
"John Salerno" <jo******@NOSPA Mgmail.com> wrote in message
news:md******* *************@r cn.net...
I'm thinking about reading Beginning C# Objects: From Concepts to Code
because I still don't have a great grasp of objects, but I wonder if C#
2.0 will change things enough that a lot of what's in the book will no
longer be relevant or applicable? I know generics are the big change, but
since I don't have much of a concept of what they are yet, I don't know
how much they (and other changes) will effect any of the content of books
released before 2005.


The OO concepts that I assume that book contains will be fundamental for a
long time to come. The .NET framework is entirely objects, and the new
features of 2.0 do not change that at all. Generics allows you to created
slightly different types of classes, iterators construct enumerator classes
for you, and anonymous methods create delegates for you. In all these areas
a strong understanding of OO is still required. My suggestion would be to
read what you can on OO and make sure you understand it before worrying too
much about the 2.0 features.

Also, play around with samples from the books. I'm sure they've got examples
and stuff, so develop them. Also, try writing them procedurally and then
make a major design change to both the procedural and the OO code. You
should quickly see the advantages of OO in such a case. My conversion to the
"OO Way" was not a sudden epiphany but a gradual accretion of understanding.
Thanks.


Sean,

It might be worse as we will discover if c#2.0 goes live. Templates or
generics as c# wants to call them are notorious for abuse and defeat
of good OO design. The parameters break the encapsulation.

Rick

Nov 17 '05 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
1991
by: Aljo_ | last post by:
Hello! I got a free evaluation copy of Borland's JBuilder9. I also got a book about JAVA, and I am trying to type, compile and run some examples from the book. The following - very simple - source comes from my book, and I get the errormessage that the applet isn't initialised.
1
2136
by: William Ryan | last post by:
Well, that depends. http://www.amazon.com/exec/obidos/tg/detail/- /0672320681/qid=1056861878/sr=1-1/ref=sr_1_1/002-7953039- 7491213?v=glance&s=books Is a must read IMHO for any ASP.NET developer. www.dotnetjunkies.com and their book http://www.amazon.com/exec/obidos/tg/detail/- /0672321068/ref=lib_dp_TFCV/002-7953039-7491213? v=glance&s=books&vi=reader#reader-link is another great resource.
8
1934
by: noid droid | last post by:
Hi. I posted yesterday asking if C# lived up to the hype. Thus far the feedback has been all positive. (Thanks.) Can anyone suggest GOOD books for learning C# and the Visual Studio .NET IDE? If there is a book that covers both, that would be great. Also, is it necessary for me to learn a lot about the .NET framework that wouldn't also be covered in one of the books? If I can find a book that'll get me up and running with the IDE...
7
1348
by: Lior Bobrov | last post by:
Hi . I have experience in VB6 . Recently , I started learning (independently) VB.NET , under the Beta 1 version of VS2005 . However , there are not many books about VB2005 : VB2005 isn't completed yet . Would I buy a book about VB.NET 2003 ? and if yes , which book/s is/are recommended , and what are the advantages/disadvantages of each of the books ?
9
2026
by: me | last post by:
Hi All, I am new to Classes and learniing the ropes with VB.NET express Here's my question - say I have a want to manage a list of books. Each book has an Author, Title and ISBN Now, I am used to using Arrays so I would normally do something like this: Set an array up during the init routine (called from form_load) say of
36
2542
by: utab | last post by:
Dear, I have experince in C( numerical projects, like engineering problems, scientific applications) I have the basic notion of C++ also, I have read Accelerated C++ until Chapter 7, however it seems that it discusses the std and the other part of the language with your own abstractions. Is that better to read a book first on the basic concepts of C++ language (but not the C part) that gives the basics as if the reader is a beginner...
0
1423
by: happy | last post by:
you can take a look for this web sites http://www.imanway.com/vb/forumdisplay.php?f=90 http://www.geocities.com/islamone_l/index.htm or read this ==================================================
11
2398
by: Diego Martins | last post by:
for me, these items are in the 'tricky zone' of C++ does anyone know good material with that? (dealing with subtle details, pitfalls, good practices...) anything like the Effective series from Meyers would be fine ;) thanks! Diego
56
2439
by: nembo kid | last post by:
What do you think about the following book: C How to Program, 5/E (Harvey & Paul) Deitel & Associates, Inc. <http://www.pearsonhighered.com/educator/academic/product/0,3110,0132404168,00.html> Thanks in advance.
8
1900
by: wangdaixing | last post by:
I am reading "Programming .NET Components" 2nd Edition by Juval Lowy, O'Reilly. In Appendix E, there is a chapter "Coding Practices" which I agree and practice mostly. However, there are a few items I don't quite understand why as listed below, my questions are marked Q: 10. Avoid method-level document. a. Use extensive external documentation for API documentation. b. Use method level comments only as tool tips for other developers. ...
0
9589
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9423
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10216
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9865
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
7413
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5309
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5448
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3965
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
3565
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.