PDA

View Full Version : Visual Studio 2008 & .NET


Pages : [1] 2

x0rcis7
05-13-09, 10:49 PM
I recently received a book on visual studio 2008 and after reading the first few chapters, I realize it says that compiled programs require the .Net framework. Im wanting to learn a programming language but from what it seems, learning visual basic would be a Complete Waste of time since it requires .Net. Is there anyway to create a project without the need of .Net. Why would someone want to waste this valuable time on VB when learning C++ would be 10x more beneficial? Thus said, should I forgot about VB and start with C++ since compiled projects can be distributed to any and all computers and work fine?

Bman212121
05-13-09, 11:04 PM
Well .NET is on every windows pc with XP or higher, and it used by a lot of programs. Since Windows is about 90% of the market, that may be a reason to use it. ;)

http://www.tuaw.com/2009/01/02/apple-market-share-tops-10-windows-share-lowest-since-tracking/

ViN86
05-13-09, 11:59 PM
Well .NET is on every windows pc with XP or higher, and it used by a lot of programs. Since Windows is about 90% of the market, that may be a reason to use it. ;)

http://www.tuaw.com/2009/01/02/apple-market-share-tops-10-windows-share-lowest-since-tracking/

+1

A lot of programs use the .NET framework.

x0rcis7
05-14-09, 01:26 AM
not every windows xp comes with .net ... thats actually an optional download when you go to windows update. Also there are not a lot of programs that use it. so basically c++ is the way to go then? Delphi would even be a better choice than VB is what it seems.. And why would I want to care 90% of everyone uses windows when I can code in C++ and not have to worry about an OS at all?

thor1182
05-14-09, 11:58 AM
90% of everyone uses windows when I can code in C++ and not have to worry about an OS at all?

That's funny. No matter what language or framework you use, you are at the mercy of what OS you are trying to write for. The only way you can write a program and not care about the OS is JAVA.

I mean you could write a whole OS to do all the hardware interaction yourself so it will work on any computer... oh wait no I don't think you want to do that.

Screw VB, C# is the way to go.

x0rcis7
05-14-09, 01:31 PM
Ha, i already know this... for you guys having so much 'experience' you dont seem to be at all convincing. I'm going to go with C; thanks anyways

thor1182
05-14-09, 05:57 PM
You seem to have no idea what you are shooting for anyways. Different languages are tailored for different things.

"I want to code!"... is great and all, but code what? Programming is NOT about what language you pick more so than learning how to think and problem solve. Learning how a language works is what google and books are for. Basic concepts Like OO design is something you can bring with you language to language.

With .NET you will be able to actually have tangible results quicker than you could with C++. With C++ you have to do A LOT of plumbing work to do anything, where as C#, the framework does a lot of it for you.

I would also NOT start with straight C unless you are going to be doing embedded programming. C++ is the better place to start if you would rather not learn a framework language like .NET or JAVA.

Greasy
05-14-09, 06:34 PM
The .net framework has come a long way in a very short time. I love it!

Absolution
05-15-09, 03:26 AM
Actually .NET is avalible for linux under monoproject.


Though I don't believe anyone answered the OP's original question.

You need to make a new unmanaged c++ project - the compiled executable will not work cross OS, but if you follow standard ISO/ANSI C++, all you will have to do is recompile it in GCC in linux.


And I highly recommend learning C# - its pretty much the language of choice for any general application.

walterman
05-15-09, 11:17 AM
I recently received a book on visual studio 2008 and after reading the first few chapters, I realize it says that compiled programs require the .Net framework. Im wanting to learn a programming language but from what it seems, learning visual basic would be a Complete Waste of time since it requires .Net. Is there anyway to create a project without the need of .Net. Why would someone want to waste this valuable time on VB when learning C++ would be 10x more beneficial? Thus said, should I forgot about VB and start with C++ since compiled projects can be distributed to any and all computers and work fine?

I recommend to start with C#. It's a good structured language, and it has few differences with Java (you will learn both, that is the advantage with C#). With Java, you need to install the Java Virtual Machine, and with .NET you need to install the .NET Framework (The mono framework for linux works pretty well today). You could start with C++, but, it needs more complex/advanced OOP concepts (plus the manual memory management) that you will learn with C# easily. C++ is powerful and a standard in the industry, no doubt about this, but, developing projects with C# is easy & fast, and the performance isn't bad. It's a more productive language.

Zhivago
05-16-09, 07:48 PM
I recently received a book on visual studio 2008 and after reading the first few chapters, I realize it says that compiled programs require the .Net framework. Im wanting to learn a programming language but from what it seems, learning visual basic would be a Complete Waste of time since it requires .Net. Is there anyway to create a project without the need of .Net. Why would someone want to waste this valuable time on VB when learning C++ would be 10x more beneficial? Thus said, should I forgot about VB and start with C++ since compiled projects can be distributed to any and all computers and work fine?

1) "Compiled programs require the .Net framework" is false, and really makes no sense. A compiler translates source code from one language into another. Whether the resulting code requires the .net framework is a completely separate issue.

2) Visual Basic does not require .Net, please try again.

3) If you are totally opposed to using the .Net framework, I would be curious as to why you bought a bloody book on it?

4) Learning C++ may or may not be more beneficial than learning Visual Basic. FYI managed C++ *does* run on the .Net platform, but most people don't consider it true C++.

5) Compiled C++ programs obviously will *not* work on any possible computer. You are terribly confused here. Computer programs with perfectly portable code can potentially be re-compiled for a platform and then *may* work properly. That is much different from distributing the binary and expecting it to work on one of the many architectures/platforms out there. Java has a "write once, run everywhere" motto which is partially true, so maybe you could look into Java development if that's really what you want. FYI Mono provides a .Net implementation for Linux.

LydianKnight
05-16-09, 10:53 PM
I recently received a book on visual studio 2008 and after reading the first few chapters, I realize it says that compiled programs require the .Net framework.

Did you read the book well? :eek2:

Your cody only needs to link against .NET components if you actually use any in your code, otherwise... no

Im wanting to learn a programming language but from what it seems, learning visual basic would be a Complete Waste of time since it requires .Net

Why would it be a waste? I'm mainly a C/C++ programmer, but if a given company pays me to develop an application in Visual Basic, why not? it depends on your purpose, but for me, I just prefer to use the right tool for the right job.

Visual Basic lets you build quite robust applications with database access and other kind of components with ease, that's what I mainly use for developing business applications. In the other hand, if I would like to create something like a game, I would use C/C++, but it's just a matter of taste.

Not any single programming language is a waste of time or resources, they're designed with different things in mind to satisfy different purposes... so, as I said before, it's just about to use the right tool for the right job.

Is there anyway to create a project without the need of .Net

New -> Project -> Win32 -> Win32 Console Project (in Visual C++ 2008 Express Edition)

Seems to me like the simplest way of creating an empty project :)

Thus said, should I forgot about VB and start with C++ since compiled projects can be distributed to any and all computers and work fine?

Like Absolution said, if you write your code in a portable way, relying on ISO/ANSI C/C++, you can port your code from Windows to other platforms.

As a personal advice, don't go with C++ directly, instead go to C first, learn the basics, how to declare variables, operators, pointers, structures, functions, and when you're proficient enough with it (we all started doing printf's before being able to develop something bigger), learn about C++, methods, attributes, classes, just step by step

(but it's just an advice) :condom:

Zhivago
05-17-09, 11:46 AM
Did you read the book well? :eek2:

As a personal advice, don't go with C++ directly, instead go to C first, learn the basics, how to declare variables, operators, pointers, structures, functions, and when you're proficient enough with it (we all started doing printf's before being able to develop something bigger), learn about C++, methods, attributes, classes, just step by step

(but it's just an advice) :condom:

Sorry, but learning C before C++ when you don't know either is *bad* advice, and highly recommended against by both the creator of C++ and the C++ FAQ (Parashift).
C++ is *not* a "better C" but is instead a whole different language with a completely different paradigm. Also, standard C++ has no notion of methods, maybe you were thinking of Java.

LydianKnight
05-17-09, 02:10 PM
Sorry, but learning C before C++ when you don't know either is *bad* advice

I don't agree with you, any language can be learned from the ground up if you're able to understand its principles. C was the first language I learned and I didn't had any problem working with it.

C++ is *not* a "better C" but is instead a whole different language

Haven't said C++ is a better C, but it's not a whole different language per se, it's more like an extension to C, and remember variables, macros, defines, operators and structures are the same from C to C++ (the latter adds OOP-related practices, ok... but the basics remains the same).

Also, standard C++ has no notion of methods, maybe you were thinking of Java.

No, I was explicitly thinking on C++ when I talked about a method...

Don't take me wrong with this answer but... didn't anyone told you variables and functions inside a class are respectively called 'attributes' and 'methods'?

Looks like a weird statement for me, to be honest, although no offense intended :zombie:

Zhivago
05-17-09, 07:58 PM
I don't agree with you, any language can be learned from the ground up if you're able to understand its principles. C was the first language I learned and I didn't had any problem working with it.



Haven't said C++ is a better C, but it's not a whole different language per se, it's more like an extension to C, and remember variables, macros, defines, operators and structures are the same from C to C++ (the latter adds OOP-related practices, ok... but the basics remains the same).



No, I was explicitly thinking on C++ when I talked about a method...

Don't take me wrong with this answer but... didn't anyone told you variables and functions inside a class are respectively called 'attributes' and 'methods'?

Looks like a weird statement for me, to be honest, although no offense intended :zombie:

C++ *is* an entirely new and different language, and the creator of C++ says as much. It is *not* a super set of C, nor is it C with extensions. No doubt C influenced C++, much as how C++ might have influenced Java, but so what? Languages very often are influenced by previous others.

The C++ ISO standard does not use the term "method" - what you describe is called a "member function." Remember, the C++ standard (a document, basically) is the authoritative source for C++, not the misinformed people who were babbling on to you using incorrect terminology.

Phyxion
05-18-09, 10:09 AM
I don't recommend to start with C++. You'd learn better programming if you start with C#. Delphi is also a decent start but requires a bit more work.

hell_of_doom227
05-18-09, 08:06 PM
I like VB.Net, In VB under VS2008 you can do things you can't with C#. Some things are also much simpler.

crainger
05-18-09, 08:31 PM
I don't recommend to start with C++. You'd learn better programming if you start with C#. Delphi is also a decent start but requires a bit more work.

I learnt with C++ ::(:

thor1182
05-19-09, 12:03 AM
C++ *is* an entirely new and different language, and the creator of C++ says as much. It is *not* a super set of C, nor is it C with extensions. No doubt C influenced C++, much as how C++ might have influenced Java, but so what? Languages very often are influenced by previous others.

The C++ ISO standard does not use the term "method" - what you describe is called a "member function." Remember, the C++ standard (a document, basically) is the authoritative source for C++, not the misinformed people who were babbling on to you using incorrect terminology.

you seem to be caught up on the details an awful lot there when most people who touch code will not care about slight terminology differences (you obviously don't agree, but we are not taking a test here.)

All the basics of programming that need to be learned before you start playing with the power tools can be done in C, or C++. Once you get the basics its not hard to apply them elsewhere.

thor1182
05-19-09, 12:05 AM
I learnt with C++ ::(:

I think most people did. It makes you do more by yourself to make you appreciate all the giveme's in frameworks like JAVA's and .NET's.

Zhivago
05-20-09, 12:07 AM
you seem to be caught up on the details an awful lot there when most people who touch code will not care about slight terminology differences (you obviously don't agree, but we are not taking a test here.)

All the basics of programming that need to be learned before you start playing with the power tools can be done in C, or C++. Once you get the basics its not hard to apply them elsewhere.

My comments were directed at you, my friend, not some beginner. :)
Being a good software developer means you are good at being precise. Really, you may think I am being pedantic here, but a sloppy programmer can be just as dangerous as a sloppy civil engineer or a sloppy surgeon.

Phyxion
05-20-09, 09:21 AM
I like VB.Net, In VB under VS2008 you can do things you can't with C#. Some things are also much simpler.
VB is crap, you hardly call that programming.

I learnt with C++ ::(:
There is nothing to be sad about, I too like C/C++/Delphi but to learn programming it's easier to start these days with C#. It's not super hard to learn pointers and memory management later but if you start and you also have to learn that it ain't all that easy.

LydianKnight
05-20-09, 09:45 AM
The C++ ISO standard does not use the term "method" - what you describe is called a "member function." Remember, the C++ standard (a document, basically) is the authoritative source for C++, not the misinformed people who were babbling on to you using incorrect terminology.

Ok, obviously we have a big difference in our opinions, but let me clarify a bit my situation for you:

Here in Spain (where I live and work) if you're going to get a government job or a job for a public institution like the health sector or even for the military, obviously they require you to have a deep understanding of the programming language you're going to use for them, because they enforce very strict regulations for some criteria like usability (if you're designing UIs), interoperability, easy-to-read code, well-established documentation, and some other factors.

I agree with you a good software developer is good at being precise, but that doesn't necessarily mean being good at being strict with your definitions, even this can be somewhat contradictory at some levels, but anyway...

I have never taken such jobs, I mainly do software development for small companies, the kind of company wants you to code a custom-made stock control application, accounting and a bit of access control, plus reporting and printing bills, and up to date, I haven't received any single negative review about my coding style, that's why I'm not that concerned about precision on the definitions.

Can I be precise on them? Yes... Do I really have (right now) any practical reason for me to follow a strict path on definitions? No...

Peace :p

thor1182
05-20-09, 11:34 AM
you seem to be caught up on the details an awful lot there when most people who touch code will not care about slight terminology differences (you obviously don't agree, but we are not taking a test here.)

All the basics of programming that need to be learned before you start playing with the power tools can be done in C, or C++. Once you get the basics its not hard to apply them elsewhere.

I don't disagree with you on the concepts, are very important... its just I would rather keep how to use the concepts stored in my limited memory space than the definitions to what I am doing. How to correctly describe what I am asking/talking about helps me be more productive when talking to other devs or in my google searches, but not always.

hell_of_doom227
05-20-09, 12:55 PM
VB is crap, you hardly call that programming.


There is nothing to be sad about, I too like C/C++/Delphi but to learn programming it's easier to start these days with C#. It's not super hard to learn pointers and memory management later but if you start and you also have to learn that it ain't all that easy.

It's programming, cause it's programming language. Makes me believe that you actually don't know programming. VB in VB.NET is at version 9 and i can tell you that C# is not any better.