473,385 Members | 1,930 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,385 software developers and data experts.

OOP Programming in VB.NET

Hello,

Where can I learn OOP programming on-line? I come from old fashion coding
which you can see below:

http://www.amtekcenter.com/amtek/wdwscode.htm

It seem that I need to do OOP if decide to continue my programming career in
VB. Any suggestions in doing OOP in VB.NET ?

Thanks!

Sharrukin
Jul 21 '05 #1
4 1671
Hi,

Maybe not OPP specific enough but...

http://msdn.microsoft.com/vbasic/com...n/default.aspx

Very well rounded "introduction+" to vb .net... a fifteen session web cast.

"Sharrukin Amiri" wrote:
Hello,

Where can I learn OOP programming on-line? I come from old fashion coding
which you can see below:

http://www.amtekcenter.com/amtek/wdwscode.htm

It seem that I need to do OOP if decide to continue my programming career in
VB. Any suggestions in doing OOP in VB.NET ?

Thanks!

Sharrukin

Jul 21 '05 #2
Sharrukin,

I answered you in the language vb newsgroup with this message.

http://groups-beta.google.com/group/...b445be8c?hl=en

Sadly enough there was somebody who told that my advice, not to set
everything global, was wrong. His reason was that the GC took an
unpredictable time to clean up and therefore the memory would not direct be
released. His message could be read, that he suggested that the time that
the GC would do this, could be after a very long time and that it therefore
is better to set everything global.

There were no comments on his message beside from me. Therefore when
somebody sees this and will give an second opinion on that, than I will be
glad.

In addition, to make my message more clear. Don't bother now about OOP
programming in VBNet. You cannot do it without that. Especially not because
I have looked to your code from begin to end and all ingredients are there,
which makes me sure that you will use that very soon after your start.

I hope this helps,

Cor
Jul 21 '05 #3
Cor,

I agree with you to avoid global variables. Globals tend to make code far
more difficult to debug.

According to MS, there are three starting points for the .NET GC mark
phase - the global variable pool, the runtime stack (for each thread), and
an additional set of "dirty" object references. Putting all your variables
in the global pool simply increases the size of the global pool and forces
the GC to spend more time in this pool. Local variables, on the other hand,
go on the stack. If you are deeply nested, it may take longer to process
the stack, but this is where the "dirty" object reference optimization in
..NET comes in. .NET's GC is smart enough to not do the mark pass on objects
that survived the previous GC pass unless your code writes to those objects.
By keeping your variables local, your code is much less likely to update
variables that survived previous GC passes.

Sharrukin,

If you are really concerned with the performance of your code to the extent
that you need to be able to predict how long a function will take to
execute, Windows isn't the answer. You need a real time operating system.
If you simply want to make sure there aren't long, user noticable, pauses in
your program due to GC activities, use local variables. Microsoft
recommends against intermediate lifetime objects as these are the ones that
will defeat the "dirty" object reference optimizations. Short lived objects
will get reclaimed on their next pass. Program lifetime lived objects will
never get reclaimed, even if they aren't being used. Use globals only if
required. Use locals for everything else. This will make your code a lot
easier to understand and debug. The other optimization that Microsoft
recommends is to implements your objects so that they don't need to
implement the IDisposable interface, as this prevents an object from being
reclaimed on the first pass. The GC puts these objects on a Finalize list
that then gets processed by a single thread after the GC completes it's pass
and restarts application threads. A large number of objects on the Finalize
list can lead to a lot of "dirty" object references being generated.

Mike Ober.
"Cor Ligthert" <no************@planet.nl> wrote in message
news:Oo**************@TK2MSFTNGP10.phx.gbl...
Sharrukin,

I answered you in the language vb newsgroup with this message.

http://groups-beta.google.com/group/...b445be8c?hl=en
Sadly enough there was somebody who told that my advice, not to set
everything global, was wrong. His reason was that the GC took an
unpredictable time to clean up and therefore the memory would not direct be released. His message could be read, that he suggested that the time that
the GC would do this, could be after a very long time and that it therefore is better to set everything global.

There were no comments on his message beside from me. Therefore when
somebody sees this and will give an second opinion on that, than I will be
glad.

In addition, to make my message more clear. Don't bother now about OOP
programming in VBNet. You cannot do it without that. Especially not because I have looked to your code from begin to end and all ingredients are there, which makes me sure that you will use that very soon after your start.

I hope this helps,

Cor


Jul 21 '05 #4
Thank you Cor for your help!

Sharrukin
"Cor Ligthert" <no************@planet.nl> wrote in message
news:Oo**************@TK2MSFTNGP10.phx.gbl...
Sharrukin,

I answered you in the language vb newsgroup with this message.

http://groups-beta.google.com/group/...nguages.vb/msg
/cd6d8fdab445be8c?hl=en
Sadly enough there was somebody who told that my advice, not to set
everything global, was wrong. His reason was that the GC took an
unpredictable time to clean up and therefore the memory would not direct be released. His message could be read, that he suggested that the time that
the GC would do this, could be after a very long time and that it therefore is better to set everything global.

There were no comments on his message beside from me. Therefore when
somebody sees this and will give an second opinion on that, than I will be
glad.

In addition, to make my message more clear. Don't bother now about OOP
programming in VBNet. You cannot do it without that. Especially not because I have looked to your code from begin to end and all ingredients are there, which makes me sure that you will use that very soon after your start.

I hope this helps,

Cor

Jul 21 '05 #5

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

Similar topics

5
by: Martin | last post by:
When was inheritance intruduced into object oriented programming? More generally, does anyone know or have any sources on when the different features were introduced into object oriented...
12
by: G. | last post by:
Hi all, During my degree, BEng (Hons) Electronics and Communications Engineering, we did C programming every year, but I never kept it up, as I had no interest and didn't see the point. But now...
3
by: user | last post by:
Hi all, At the outset, I regret having to post this slightly OT post here. However, I strongly feel that people in this group would be the best to advise me on my predicament. I am working as...
134
by: evolnet.regular | last post by:
I've been utilising C for lots of small and a few medium-sized personal projects over the course of the past decade, and I've realised lately just how little progress it's made since then. I've...
7
by: Robert Seacord | last post by:
The CERT/CC has just deployed a new web site dedicated to developing secure coding standards for the C programming language, C++, and eventually other programming language. We have already...
30
by: Jakle | last post by:
I have been googling, but can seem to find out about C GUI libraries. My main platform is Windows, but it would be nice to find a cross platform library. I've been programming with php, which...
47
by: Thierry Chappuis | last post by:
Hi, I'm interested in techniques used to program in an object-oriented way using the C ANSI language. I'm studying the GObject library and Laurent Deniau's OOPC framework published on his web...
111
by: Enteng | last post by:
Hi I'm thinking about learning C as my first programming language. Would you recommend it? Also how do you suggest that I learn it?What books/tutorials should I read for someone like me? Thanks...
14
by: deko | last post by:
For building Windows desktop apps, the clear favorite is C#. But my clients can't afford to buy Microsoft products. So I need to develop software for Linux users and web applications. In the...
17
by: CoreyWhite | last post by:
I bought this book years ago, when I was just learning C++. Since then I've gone through every math course offered at my college, taken courses on coding C & thinking in terms how how to make the...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
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
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...
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,...

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.