473,769 Members | 2,444 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Bjarne Stroustrup says

Hello all

Bjarne Stroustrup says "The most important thing to do when learning
C++ is to focus on concepts and not get lost in language-technical
details" and "Focus on programming techniques, not on language
features" in his book <The C++ Programming Language>.

I don't follow these.
What does Bjarne Stroustrup actually mean?

Jul 23 '05 #1
13 1889
"Teddy" <du********@hot mail.com> wrote in message
news:11******** **************@ g44g2000cwa.goo glegroups.com.. .
Hello all

Bjarne Stroustrup says "The most important thing to do when learning
C++ is to focus on concepts and not get lost in language-technical
details" and "Focus on programming techniques, not on language
features" in his book <The C++ Programming Language>.

I don't follow these.
What does Bjarne Stroustrup actually mean?


When you learn C++, rely on simple concepts rather than a technical
understanding of the language. For example, think of std::vector as a
sequence and not a class template.

Focus on the useful aspects of C++ and not the features. For example, think
of >> as a read operation instead of an overloaded operator.

Hope this helps.
Jul 23 '05 #2
Teddy wrote:
Bjarne Stroustrup says "The most important thing to do when learning
C++ is to focus on concepts and not get lost in language-technical
details" and "Focus on programming techniques, not on language
features" in his book <The C++ Programming Language>.

I don't follow these.
What does Bjarne Stroustrup actually mean?

He means, don't lose the sight of the forest looking at the trees.
Don't spend all your time learning the intricacies of the language
instead of seeing the big picture and actually doing your work.
You don't have to know all the minute details of the implementation
to get the design right and achieve your goals.

V
Jul 23 '05 #3
This might be true when learning, but its definately NOT true in
general. I've seen alot of code written by people who didn't
understand the intricacies of the language and it tends to be brittle
and hard to maintain.

Jul 23 '05 #4
BigBrian wrote:
This might be true when learning, but its definately NOT true in
general. I've seen alot of code written by people who didn't
understand the intricacies of the language and it tends to be brittle
and hard to maintain.


Yeah ... I second that.

When you start off don't worry about all the complex issues with the
C++ language, so you don't need to know the in's-&-outs of the C++ core
langauge yet... but down the line you'll need to know it, plus the std
lib ... etc.
You'll know how to optimize your code & get the best out of it once
you've become more familiar w/ it.
Other folks suggest not thinking about C when you learn C++, I think
that's a good tip as well.

Jul 23 '05 #5

"BigBrian" <wo**@brianmiel ke.com> wrote in message
news:11******** **************@ z14g2000cwz.goo glegroups.com.. .
This might be true when learning, but its definately NOT true in
general. I've seen alot of code written by people who didn't
understand the intricacies of the language and it tends to be brittle
and hard to maintain.


And the principle reason that the "intricacie s" or features are misused or
mis-implemented is due to an erroneous overview of the concept at hand. This
occurs precisely because the coder has focused on the details instead of the
abstract concept.

Why use feature X, for example, if you don't know *when* to use X and what
its goals are. Thats much more important than *how* to code X correctly in
your design.

To emphasize the forest analogy: Concentrating on the tree only generates a
nice tree. The problem is that the forest is then populated by that tree
only. The first infection then jeopardizes the entire forest.

Jul 23 '05 #6


BigBrian wrote:
This might be true when learning, but its definately NOT true in
general.

Please quote a relevant portion of the previous message when replying.
To do so from the Google interface, don't use the Reply at the bottom
of the message. Instead, click "show options" and use the Reply shown
in the expanded headers.

Brian

Jul 23 '05 #7
> > This might be true when learning, but its definately NOT true in
general. I've seen alot of code written by people who didn't
understand the intricacies of the language and it tends to be brittle
and hard to maintain.

And the principle reason that the "intricacie s" or features are misused or
mis-implemented is due to an erroneous overview of the concept at hand. This
occurs precisely because the coder has focused on the details instead of the
abstract concept.


The intricacies of the language were misused because the coder was too
focused on the details of the language??? This makes no sense
whatsoever! Most software engineering practices advocate separating
out designing and coding. I suggest until you're good enough to
combined the two, keep them separate.
Why use feature X, for example, if you don't know *when* to use X and what
its goals are.
I never suggested using features of the language that you don't
understand. But my initial point was, unless you are detailed
oriented, and patient enough , you'll never understand the intricacies.

Thats much more important than *how* to code X correctly in
your design.
But, if you don't understand the intricacies of the language, how do
you know you've coded X correctly? If you don't know that it's coded
correctly, what good is it? I may as well be thrown in the trash.
To emphasize the forest analogy: Concentrating on the tree only generates a
nice tree. The problem is that the forest is then populated by that tree
only. The first infection then jeopardizes the entire forest.


Yes, this analogy may sound good, but in reality it has no relavence to
software. Software is not a forest. A beautiful forest can be made up
of trees which have flaws ( grouping trees together can hide the
individual flaws of each tree. ) But if a software system is built
upon components that are flawed by a coder not understanding the
language, the flaws don't cancel themselves out, but interact to create
more flaws and you end up with a very ugly system.

-Brian

Jul 23 '05 #8
BigBrian wrote:
To emphasize the forest analogy: Concentrating on the tree only generates a
nice tree. The problem is that the forest is then populated by that tree
only. The first infection then jeopardizes the entire forest.

Yes, this analogy may sound good, but in reality [...]


I think that analogy is lost on you. Sorry I couldn't find anything
better.
Jul 23 '05 #9
> >>To emphasize the forest analogy: Concentrating on the tree only generates a
nice tree. The problem is that the forest is then populated by that tree
only. The first infection then jeopardizes the entire forest.

Yes, this analogy may sound good, but in reality [...]


I think that analogy is lost on you. Sorry I couldn't find anything
better.


So, since I don't agree that this analogy appiles to writting code, you
infer that I just don't understand. I gave my reasons, you can
disagree with them if you like ( but your inference is not called for).

Jul 23 '05 #10

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

Similar topics

3
1712
by: devser2006 | last post by:
Do You Want The Book C++ Programming Language By Bjarne Stroustrup? If yes , please download a screensaver from http://www.geocities.com/screensaver_200and email me that you have downloaded the screensaver I will send you the C++ Programming Book.
1
1955
by: Mike | last post by:
Hi, I'm auctioning the book "The C++ Programming Language" 3rd Ed. by Bjarne Stroustrup on ebay, details as follows or see eBay item number 250030480853. Softback. Condition : Good. Pub. Addison Wesley 1997. 3rd Edition. 910 pages. "The C++ Programming Language" by Bjarne Stroustrup is the classic C++
17
4719
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 smallest tightest algorithms to preform specific functions. I've also grown and matured a lot, and am wiser and older. I'm reading through the C+ + Programming Language, Third Edition now, and I can actually understand it. I can understand it...
2
1791
by: Rakesh UV | last post by:
Hi, I searched on google for this book "The c++ programming language by Bjarne Stroustrup's" but i diidnt get any which is free, Thanks in advance Rakesh UV
1
1811
by: Visame | last post by:
How to understand the following paragraph from Bjarne stroustrup's The C++ Programming Language? 9.4.1: In principle, a variable defined outside any function (that is, global, namespace, and class static variables) is initialized before main() is invoked. Such nonlocal variables in a translation unit are initialized in their declaration order (§10.4.9). If such a variable has no explicit initializer, it is by default initialized to the...
20
2169
by: gremlin | last post by:
http://www.cilk.com/multicore-blog/bid/6703/C-Inventor-Bjarne-Stroustrup-answers-the-Multicore-Proust-Questionnaire
0
1831
by: gremlin | last post by:
http://www.cilk.com/multicore-blog/bid/6703/C-Inventor-Bjarne-Stroustrup-answers-the-Multicore-Proust-Questionnaire
0
1274
by: Chris M. Thomasson | last post by:
http://groups.google.com/group/comp.programming.threads/browse_frm/thread/a4a668e20be49644 ] "gremlin" <gremlin@rosetattoo.comwrote in message
1
3533
by: blangela | last post by:
Bjarne Stroustrup has a new text coming out called "Programming: Principles and Practice Using C++" (ISBN: 0321543726), due to be published in December of this year. Some of the features of this new text include: *Its history: The text was developed in the author's introductory programming course at Texas A&M and has been used successfully by hundreds of students.
0
9420
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
10205
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
10035
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 tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
9984
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 Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
1
7401
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
6662
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5293
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
5441
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
3
2811
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.