473,614 Members | 2,136 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Learning with command-line vs IDE

Hi Guys,

When learning a language such as C#, would you say it is better to learn the
fundamentals using the command-line compiler and a simple text editor such
as notepad compared to using a full-fledge IDE such as VS.NET 2005 which
gives code-insight, debugger, etc?

Regards,
James.
Sep 21 '06 #1
10 1927
Notepad? No.

In reality, .Net programming is very little to do with the langauge, and
mostly to do with the framework and custom classes available. The simple
fact is that intellisense and some kind of object-browser are almost
indispensible here. By all means, learn how to compile at the command line
if you like, but i don't see much benefit in struggling to get something to
compile because of a simple typo, or inccorect parameter type, that would
have been avoided with proper support from an IDE. Why put obstacles in your
way? There is nothing wrong with asking for help, and [F1] and "Go To
Definition", etc, are not just for wimps.

If you want to understand "how things work", however, I might suggest
writing some Forms etc without using the designer. It helps you appreciate
what goes on. But again, designers can have roles to play, and if you can do
something in 10 minutes with a designer, or 2 hours by hand (5 hours in
notepad), then put simply I'd prefer to be working with people who get the
job done in 10 minutes and get on with the next task.

And notice I didn't specify VS here... most any would do, and the Express
editions are free. Or there are others like SharpDevelop, or C# plugins for
eclipse.

Marc
Sep 21 '06 #2
I think you will learn the language much easier using the IDE as if
helps/prompts you for things, code generates boring things like the code for
laying out the for etc.
If you want to know how to run the compilers and what exactly gets linked in
etc, use the command line.

HTH

Ciaran O'Donnell

"arlef" wrote:
Hi Guys,

When learning a language such as C#, would you say it is better to learn the
fundamentals using the command-line compiler and a simple text editor such
as notepad compared to using a full-fledge IDE such as VS.NET 2005 which
gives code-insight, debugger, etc?

Regards,
James.
Sep 21 '06 #3
arlef wrote:
When learning a language such as C#, would you say it is better to learn the
fundamentals using the command-line compiler and a simple text editor such
as notepad compared to using a full-fledge IDE such as VS.NET 2005 which
gives code-insight, debugger, etc?
The fundamentals? Define "fundamenta ls"! I recommend you start out with
ILASM & WinDbg & SOS!

:)

-- Barry

--
http://barrkel.blogspot.com/
Sep 21 '06 #4
By language I mean the Framework Class Library as well as simple things like
class layouts, keywords, preprocessor directives etc.

Ciaran O'Donnell

"Ciaran O''Donnell" wrote:
I think you will learn the language much easier using the IDE as if
helps/prompts you for things, code generates boring things like the code for
laying out the for etc.
If you want to know how to run the compilers and what exactly gets linked in
etc, use the command line.

HTH

Ciaran O'Donnell

"arlef" wrote:
Hi Guys,

When learning a language such as C#, would you say it is better to learn the
fundamentals using the command-line compiler and a simple text editor such
as notepad compared to using a full-fledge IDE such as VS.NET 2005 which
gives code-insight, debugger, etc?

Regards,
James.

Sep 21 '06 #5
"arlef" <ar****@hotmail .comwrote in message
news:es******** ******@TK2MSFTN GP04.phx.gbl...
Hi Guys,

When learning a language such as C#, would you say it is better to
learn the fundamentals using the command-line compiler and a simple
text editor such as notepad compared to using a full-fledge IDE such
as VS.NET 2005 which gives code-insight, debugger, etc?
I originally learned C# via Visual Studio (In the office).One day I
wanted to slap together a quick test program at home, but I only have
Visual Studio 6.0 at home and it is Pre dotnet. So I downloaded and
installed the SDK(Free) and off I went.
When working I will generally have the following things open
Console window (Make sure to adjust the default window sizing)
UltraEdit (you could use notepad, but a true editor is nice)
SDK documentation (This is a great source of information)
Google -
microsoft.publi c.dotnet.langua ges.csharp

Compiling can be a simple as typing "csc *.cs".
If you need more advanced compiler options you can easily type it into a
batch file.

The majority of the work that I do is not Forms based, but I have done
Forms from the command line as well. If you are doing a lot of Forms
programming, the layout tools in the IDE will save you a bunch of time.

Another bright point is that the command line is not an 800 pound
gorrilla like Visual Studio.

I think that Visual Studio is a great tool, I just don't like to
bring the big guns in if I don't really need it

Hope this helps
Bill

Sep 21 '06 #6
Bill Butler <qw****@asdf.co mwrote:

<snip>
I think that Visual Studio is a great tool, I just don't like to
bring the big guns in if I don't really need it
It's good to know I'm not alone on this. It's a rare day when I'm
answering newsgroup posts and I don't need to run some code - but
opening up Visual Studio and finding or creating an appropriate project
takes much, much longer than firing up a command prompt, editing
Test.cs (which is in the directory my command prompt starts in),
compiling and running.

--
Jon Skeet - <sk***@pobox.co m>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Sep 21 '06 #7
Jon: I have the tiniest inkling that maybe, just maybe, you have
already gone a little bit past the "learn the fundamentals" stage <g>

I agree 500% that "cmd" can be the quickest way to work (rhetorical:
have you *tried* hitting compile / play in a complex web app in VS!
eughh!), but it (notepad / cmd / etc) isn't necessarily the best
learning environment. It can be done that way, though...

Marc

Sep 21 '06 #8
Marc Gravell <ma**********@g mail.comwrote:
Jon: I have the tiniest inkling that maybe, just maybe, you have
already gone a little bit past the "learn the fundamentals" stage <g>

I agree 500% that "cmd" can be the quickest way to work (rhetorical:
have you *tried* hitting compile / play in a complex web app in VS!
eughh!), but it (notepad / cmd / etc) isn't necessarily the best
learning environment. It can be done that way, though...
Certainly there are better text editors than notepad around :)

Seriously though, while things like Intellisense help in terms of
exploring the framework, I would argue that writing all the code
yourself instead of using a designer is a better way of learning how
things like WinForms work.

(And one of the nice things about ASP.NET is that you don't actually
need to fire up VS at all, or have a project etc. I've got a few very
useful web apps which are simple enough not to make it worth firing up
VS.)

--
Jon Skeet - <sk***@pobox.co m>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Sep 21 '06 #9
arlef wrote:
When learning a language such as C#, would you say it is better to learn the
fundamentals using the command-line compiler and a simple text editor such
as notepad compared to using a full-fledge IDE such as VS.NET 2005 which
gives code-insight, debugger, etc?
[warning: I am not a typical .NET developer]

I think you should spend the first couple of months using
a standard editor (something better than notepad is OK) and
command line build.

This will give you a good understanding of exe's, dll's,
ASP.NET web app structure, web service references.

Then you can switch to an IDE and increase your productivity
and now you know what VS actually does for you.

Then after some years you will probably start mixing
a bit: you use a standard editor for small things
(because you do not write the trivial code - you copy
it from existing code), IDE if you need to write more
code, and you build with NAnt.

Arne
Sep 22 '06 #10

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

Similar topics

29
3473
by: Jhon smith | last post by:
Hi,all,I was just wondering if I am likly to have any problems trying to learn C from older books,I have some from the late 80`s,mid/late 90`s. I am using Dev-C++ on the pc windows platform,But I have noticed small differnces in the books such as,int main(),main(void),fprintf,and others,just wondering if these older books are still worth trying to learn from as Im on a very tight budget and can`t really afford any thing else,or are they...
3
2993
by: patricia59 | last post by:
Can someone suggest a really elementary learning forum for vb.net? I am trying to learn VB.net web in conjunction with MS Sql data access. My previous experience has been with desktop databases, and I am struggling with the simplest concepts; find myself wasting days and days researching tools that don't accomplish what I need. For example, using the dataset components with a MSSqlconnection, how can I use a textbox user input to
4
2053
by: Christian Blackburn | last post by:
Hi Gang, I saw this for sale online: Microsoft Visual Basic.NET Deluxe Learning Edition Version 2003. I'm wondering is the CD that's bundled with the learning edition just a digitized version of the book or is it an interactive tutorial? Thanks, Christian Blackburn
0
1760
by: engsolnorm | last post by:
A co-worker and I want to increase our knowledge of Python. I have a tiny bit of exposure to python. He has none, but has wide experience with C, C++, NET, C#, etc. We agreed we'd do a Sudoku solver. I'd do the GUI, he would do the solver code. My question is this: I assume that once I invoke mauinloop, the loop just cycles between bound events...(if not true, please tell me)...so how do I "branch" out to the solver code, which will be in...
7
1579
by: Max | last post by:
On monday I start a semester course in Python (the alternative was Java). I was looking through the course outline and noticed the following: 1) UserDict is used. This is deprecated, right? 2) There is no mention of list comprehensions, but map and filter are taught early and then revisited later. I don't think this is good: list comprehensions are, IMO, one of Python's great features, Psyco prefers them, they're more pythonic, and map...
36
2507
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...
7
2379
by: Hal Vaughan | last post by:
I have a problem with port forwarding and I have been working on it for over 2 weeks with no luck. I have found C programs that almost work and Java programs that almost work, but nothing that does what I need. I've even tried writing a port forwarder in Java and found problems that nobody seems to have the answer to in forums. I need to make it work essentially the same on both Windows and Linux. There is one program, in C, that...
2
1240
by: bokiteam | last post by:
Hi All, Here is my idea to save learning time - Personal learning book. What we really need is somebody really familiar our learning experience, and then takes the example to teach us. Save the learning time. For example, a person David who understands JAVA, VB, C programming, he doesn't want to pay too much time to study a C# programming book. If
7
316
by: CribbsStyle | last post by:
Whats the best tool to write PHP Code? Also whats the best resource to learn PHP? Thanks Dennis
16
1748
by: John Salerno | last post by:
Just something that crosses my mind every time I delve into "Learning Python" each night. Does anyone see any value in learning Python when you don't need to for school, work, or any other reason? I mean, sure, there's value in learning anything at any time, but for something like a programming language, I can't help but feel that I will be mostly unable to use what I learn simply because I have no reason to use it. The *process* of...
0
8185
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
8132
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
8436
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...
0
7104
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, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6092
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
4053
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
4129
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1751
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
1429
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.