473,399 Members | 2,146 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,399 software developers and data experts.

Generics article

Hi,
I wrote an article about generics in C# 2.0; you can download it at
http://www.coders-lab.be/Technical%2...s_Generics.pdf
Suggestions and feedback always very welcome,
kind regards,
Ludwig

--
Ludwig
http://www.goedgenoegen.be
Jan 28 '06 #1
13 1798
Ludwig <no@email.be> wrote:
I wrote an article about generics in C# 2.0; you can download it at
http://www.coders-lab.be/Technical%2...s_Generics.pdf
Suggestions and feedback always very welcome,


Without having read it - I see no particular reason why it needs to be
a PDF rather than HTML. It would be easier to use as straight HTML,
IMO.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Jan 28 '06 #2
On Sat, 28 Jan 2006 23:10:52 -0000, Jon Skeet [C# MVP]
<sk***@pobox.com> wrote:
Ludwig <no@email.be> wrote:
I wrote an article about generics in C# 2.0; you can download it at
http://www.coders-lab.be/Technical%2...s_Generics.pdf
Suggestions and feedback always very welcome,


Without having read it - I see no particular reason why it needs to be
a PDF rather than HTML. It would be easier to use as straight HTML,
IMO.


Converting my doc to pdf preserves lay-out. Converting to HTML, well,
it's not the same anymore. Therefore, it's a pdf.
--
Ludwig
http://www.goedgenoegen.be
Jan 28 '06 #3
Ludwig,
if you want readership (which I guess you'd like, since you've been kind
enough to post about it on this group) I'd recommend you offer the article in
HTML, with an option to download as PDF. As with everything in life, there
are trade-offs. HTML means more readership and - these days - it also means
better indexing by the search engines; not a small matter at all.
Peter

--
Co-founder, Eggheadcafe.com developer portal:
http://www.eggheadcafe.com
UnBlog:
http://petesbloggerama.blogspot.com


"Ludwig" wrote:
Hi,
I wrote an article about generics in C# 2.0; you can download it at
http://www.coders-lab.be/Technical%2...s_Generics.pdf
Suggestions and feedback always very welcome,
kind regards,
Ludwig

--
Ludwig
http://www.goedgenoegen.be

Jan 28 '06 #4
On Sat, 28 Jan 2006 15:42:27 -0800, "Peter Bromberg [C# MVP]"
<pb*******@yahoo.nospammin.com> wrote:
Ludwig,
if you want readership (which I guess you'd like, since you've been kind
enough to post about it on this group) I'd recommend you offer the article in
HTML, with an option to download as PDF. As with everything in life, there
are trade-offs. HTML means more readership and - these days - it also means
better indexing by the search engines; not a small matter at all.
Peter


I uploaded the html version:
http://www.coders-lab.be/Technical%2...ics/index.html

There's a link to the pdf version.
--
Ludwig
http://www.goedgenoegen.be
Jan 29 '06 #5
Ludwig <no@email.be> wrote:
Without having read it - I see no particular reason why it needs to be
a PDF rather than HTML. It would be easier to use as straight HTML,
IMO.


Converting my doc to pdf preserves lay-out. Converting to HTML, well,
it's not the same anymore. Therefore, it's a pdf.


Not being exactly the same isn't necessarily a bad thing though. For
instance, I've got a wide screen laptop - having a fixed width layout
means most of the screen is wasted. PDF is really useful when the
layout is absolutely vital - but I don't see why it is in your article.
The code needs to be preserved as it is, and that's easy to do, but
everything else can be more flexible in HTML.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Jan 29 '06 #6
On Sun, 29 Jan 2006 02:03:11 +0100, Ludwig <no@email.be> wrote:
On Sat, 28 Jan 2006 15:42:27 -0800, "Peter Bromberg [C# MVP]"
<pb*******@yahoo.nospammin.com> wrote:
Ludwig,
if you want readership (which I guess you'd like, since you've been kind
enough to post about it on this group) I'd recommend you offer the article in
HTML, with an option to download as PDF. As with everything in life, there
are trade-offs. HTML means more readership and - these days - it also means
better indexing by the search engines; not a small matter at all.
Peter


I uploaded the html version:
http://www.coders-lab.be/Technical%2...ics/index.html

There's a link to the pdf version.

Thanks Ludwig.

Although I didn't mind downloading the PDF file, it was nice to see
that I had a choice regarding how I wanted to read it.

Otis Mukinfus
http://www.otismukinfus.com
http://www.tomchilders.com
Jan 29 '06 #7
SP
"Ludwig" <no@email.be> wrote in message
news:ut********************************@4ax.com...
Hi,
I wrote an article about generics in C# 2.0; you can download it at
http://www.coders-lab.be/Technical%2...s_Generics.pdf
Suggestions and feedback always very welcome,
kind regards,
Ludwig


"Boxing and unboxing are very timeconsuming operations and should be
avoided, because they degrade performance. This effect of boxing/unboxing
can be quite significant in scenarios where you must iterate over large
collections. The solution to these problems is creating strongly typed
collections."
How does a strongly typed collection avoid boxing / unboxing of primitive
types (you are talking about .Net 1.1 in this part of the article)?

SP


Jan 29 '06 #8
SP <ec***********@hotmail.com> wrote:
"Ludwig" <no@email.be> wrote in message
news:ut********************************@4ax.com...
Hi,
I wrote an article about generics in C# 2.0; you can download it at
http://www.coders-lab.be/Technical%2...s_Generics.pdf
Suggestions and feedback always very welcome,
kind regards,
Ludwig


"Boxing and unboxing are very timeconsuming operations and should be
avoided, because they degrade performance. This effect of boxing/unboxing
can be quite significant in scenarios where you must iterate over large
collections. The solution to these problems is creating strongly typed
collections."
How does a strongly typed collection avoid boxing / unboxing of primitive
types (you are talking about .Net 1.1 in this part of the article)?


You can create a strongly typed collection which uses an array of the
appropriate type underneath the covers (int[], DatTime[] or whatever).

I would take issue with the idea that boxing and unboxing are "very
timeconsuming operations". The problem is that you tend to do them an
awful lot, so even though individually they're cheap, they can mount
up...

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Jan 30 '06 #9

SP schreef:
"Ludwig" <no@email.be> wrote in message
news:ut********************************@4ax.com...
Hi,
I wrote an article about generics in C# 2.0; you can download it at
http://www.coders-lab.be/Technical%2...s_Generics.pdf
Suggestions and feedback always very welcome,
kind regards,
Ludwig


"Boxing and unboxing are very timeconsuming operations and should be
avoided, because they degrade performance. This effect of boxing/unboxing
can be quite significant in scenarios where you must iterate over large
collections. The solution to these problems is creating strongly typed
collections."
How does a strongly typed collection avoid boxing / unboxing of primitive
types (you are talking about .Net 1.1 in this part of the article)?

SP


Oeps yes, this is confusing, I'll change it. Thanks for the remark.

Jan 30 '06 #10
Indeed, thanks for the remark!

Jan 30 '06 #11
Ludwig wrote:
On Sat, 28 Jan 2006 15:42:27 -0800, "Peter Bromberg [C# MVP]"
<pb*******@yahoo.nospammin.com> wrote:
Ludwig,
if you want readership (which I guess you'd like, since you've been kind
enough to post about it on this group) I'd recommend you offer the article in
HTML, with an option to download as PDF. As with everything in life, there
are trade-offs. HTML means more readership and - these days - it also means
better indexing by the search engines; not a small matter at all.
Peter


I uploaded the html version:
http://www.coders-lab.be/Technical%2...ics/index.html

There's a link to the pdf version.

I know you are looking for criticism, but all I have is praise.

The only other reading of this level that I had done was a free
download, Chapter 10 Understanding Generics from Pro C# 2005 and the
..NET 2.0 Platform by Andrew Troelsen. Your discussion meets and
surpasses the chapter from this book. Probably because your discussion
of IComparable<> and sorting is in a different chapter of his.

I would recommend changing the title of the article to reflect that
sorting and IComparable<> is covered. Having recently implemented a
ComnpareTo in a 1.1 application, the subject was on my mind.
Immediately when I saw you sort Person by calling name.CompareTo(), I
wondered to myself, "Self, what if I wanted to give the programmer
choice on what property to compare and sort." You immediately answered
with your addition of the enum.

Excellent job!
--
Jay R. Wren
Jan 30 '06 #12
SP

<lu***********@coders-lab.be> wrote in message
news:11**********************@g47g2000cwa.googlegr oups.com...

SP schreef:
"Ludwig" <no@email.be> wrote in message
news:ut********************************@4ax.com...
> Hi,
> I wrote an article about generics in C# 2.0; you can download it at
> http://www.coders-lab.be/Technical%2...s_Generics.pdf
> Suggestions and feedback always very welcome,
> kind regards,
> Ludwig


"Boxing and unboxing are very timeconsuming operations and should be
avoided, because they degrade performance. This effect of boxing/unboxing
can be quite significant in scenarios where you must iterate over large
collections. The solution to these problems is creating strongly typed
collections."
How does a strongly typed collection avoid boxing / unboxing of primitive
types (you are talking about .Net 1.1 in this part of the article)?

SP


Oeps yes, this is confusing, I'll change it. Thanks for the remark.


Jon Skeet replied to the original question. I was playing the devils
advocate really because you followed with an example that was using
CollectionBase which of course incurs boxing/unboxing with primitive types.
On a second read I did see you mentioned ArrayList but you should probably
mention that inheriting CollectionBase would be for non primitive types.

SP
Jan 30 '06 #13
On Mon, 30 Jan 2006 10:00:39 -0500, "Jay R. Wren" <jr****@gmail.com>
wrote:
I know you are looking for criticism, but all I have is praise.

The only other reading of this level that I had done was a free
download, Chapter 10 Understanding Generics from Pro C# 2005 and the
.NET 2.0 Platform by Andrew Troelsen. Your discussion meets and
surpasses the chapter from this book. Probably because your discussion
of IComparable<> and sorting is in a different chapter of his.

I would recommend changing the title of the article to reflect that
sorting and IComparable<> is covered. Having recently implemented a
ComnpareTo in a 1.1 application, the subject was on my mind.
Immediately when I saw you sort Person by calling name.CompareTo(), I
wondered to myself, "Self, what if I wanted to give the programmer
choice on what property to compare and sort." You immediately answered
with your addition of the enum.

Excellent job!


Thank you for your kind remarks. The following days I'll
correct/extend the article, and also an english-speaking person will
verify the syntax; because English is not my mother tongue :)
--
Ludwig
http://www.goedgenoegen.be
Jan 30 '06 #14

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

Similar topics

8
by: Chris Dunaway | last post by:
The next version of VS.Net (Whidbey) promises to add generics support to VB. I have a vague remembrance of Templates in C++, but I guess I need a refresher. What will generics allow us to do? ...
12
by: Michael S | last post by:
Why do people spend so much time writing complex generic types? for fun? to learn? for use? I think of generics like I do about operator overloading. Great to have as a language-feature, as...
9
by: sloan | last post by:
I'm not the sharpest knife in the drawer, but not a dummy either. I'm looking for a good book which goes over Generics in great detail. and to have as a reference book on my shelf. Personal...
18
by: riftimes | last post by:
Hello, would you help me to find totorials with examples about generics and Dictionary thank you.
3
by: Showjumper | last post by:
Back in asp.net 1.1 i made custom collection classes per Karl Seguin's article On the Way to Mastering ASP.NET: Introducing Custom Entity Classes to take advantage of strongly typed data. Now with...
8
by: Kris Jennings | last post by:
Hi, I am trying to create a new generic class and am having trouble casting a generic type to a specific type. For example, public class MyClass<Twhere T : MyItemClass, new() { public...
8
by: mark.norgate | last post by:
I've run into a few problems trying to use generics for user controls (classes derived from UserControl). I'm using the Web Application model rather than the Web Site model. The first problem...
4
by: ludwig.stuyck | last post by:
Hello, I updated my article on generics with databinding and serialization/ deserialization. Summary: Generics are one of the most useful improvements in the .NET 2.0 framework. In this...
3
by: =?Utf-8?B?SmltSGVhdmV5?= | last post by:
I am trying to follow along with an example about how to create a generic collection which is "Type" drivern (the article is here...
1
by: JosAH | last post by:
Greetings, Introduction This week I'll write a bit about generics (those funny angular brackets). I need an example and decided to use sets and some of their operations. This weeks' article...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
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,...
0
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,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
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...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

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.