Download PDF C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), by Brian Overland
This is why we recommend you to consistently see this page when you require such book C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland, every book. By online, you may not go to get the book shop in your city. By this online collection, you can discover guide that you truly intend to review after for very long time. This C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland, as one of the advised readings, has the tendency to be in soft data, as all of book collections here. So, you could likewise not await couple of days later on to get as well as read guide C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland.
C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), by Brian Overland
Download PDF C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), by Brian Overland
Spend your time also for just couple of minutes to check out a book C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland Reading a publication will never ever decrease and lose your time to be worthless. Reviewing, for some folks become a need that is to do everyday such as spending quality time for eating. Now, what about you? Do you like to check out a publication? Now, we will certainly reveal you a brand-new book qualified C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland that could be a new way to explore the understanding. When reading this book, you could obtain something to constantly remember in every reading time, even detailed.
When getting this book C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland as recommendation to review, you can gain not only inspiration yet likewise new knowledge and also sessions. It has more compared to typical benefits to take. What sort of publication that you review it will serve for you? So, why must obtain this publication entitled C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland in this article? As in link download, you can obtain the publication C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland by on-line.
When obtaining guide C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland by on-line, you could read them anywhere you are. Yeah, also you are in the train, bus, hesitating listing, or various other areas, on-line book C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland could be your excellent pal. Every single time is a great time to check out. It will enhance your expertise, fun, amusing, lesson, as well as experience without investing more cash. This is why on the internet publication C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland becomes most desired.
Be the very first that are reviewing this C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland Based upon some factors, reading this publication will offer more benefits. Even you have to review it detailed, web page by web page, you can finish it whenever and any place you have time. Once again, this online e-book C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), By Brian Overland will certainly give you simple of reviewing time and also activity. It also provides the encounter that is budget friendly to reach and also obtain significantly for better life.
Learning C++ Doesn’t Have to Be Difficult!
�
Have you ever wanted to learn programming? Have you ever wanted to learn the C++ language behind many of today’s hottest games, business programs, and even advanced spacecraft? C++ Without Fear, Third Edition, is the ideal way to get started. Now updated for the newest C++14 standard and the free Microsoft Visual C++ Community Edition, it will quickly make you productive with C++ even if you’ve never written a line of code!
�
Brian Overland has earned rave reviews for this book’s approach to teaching C++. He starts with short, simple examples you can easily enter and run. Within a couple of chapters, you’ll be creating useful utilities, playing games, and solving puzzles. Everything’s simplified to its essentials, patiently explained, and clearly illustrated with practical examples and exercises that help you make progress quickly.
�
Overland reveals the “whys” and “tricks” behind each C++ language feature. And you’ll never get bogged down in complex or pointless examples: He keeps you 100% focused on learning what works and what matters—while having fun!
�
This new and improved edition
- Covers installing and using the free Microsoft Visual C++ Community Edition—but you can use any version of C++
- Explains valuable improvements in the new C++14 standard
- Modularizes C++14 coverage so it’s easy to write code that works with older versions
- Teaches with even more puzzles, games, and relevant exercises
- Offers more “why” and “how-to” coverage of object orientation, today’s #1 approach to programming
- Presents more ways to use Standard Template Library (STL) code to save time and get more done
- Contains an expanded reference section for all your day-to-day programming
Whether you want to learn C++ programming for pleasure or you’re considering a career in programming, this book is an outstanding choice.
- Sales Rank: #178519 in Books
- Published on: 2015-12-30
- Original language: English
- Number of items: 1
- Dimensions: 8.90" h x 1.30" w x 7.00" l, .0 pounds
- Binding: Paperback
- 624 pages
About the Author
Brian Overland published his first article in a professional math journal at age 14.
�
After graduating from Yale, he began working on large commercial projects in C and Basic, including an irrigation-control system used all over the world. He also tutored students in math, computer programming, and writing, as well as lecturing to classes at Microsoft and at the community-college level. On the side, he found an outlet for his lifelong love of writing by publishing film and drama reviews in local newspapers. His qualifications as an author of technical books are nearly unique because they involve so much real programming and teaching experience, as well as writing.
�
In his 10 years at Microsoft, he was a tester, author, programmer, and manager. As a technical writer, he became an expert on advanced utilities, such as the linker and assembler, and was the “go-to” guy for writing about new technology. His biggest achievement was probably organizing the entire documentation set for Visual Basic 1.0 and having a leading role in teaching the “object-based” way of programming that was so new at the time. He was also a member of the Visual C++ 1.0 team.
�
Since then, he has been involved with the formation of new start-up companies (sometimes as CEO). He is currently working on a novel.
Most helpful customer reviews
51 of 51 people found the following review helpful.
An excellent book for the complete novice
By K. Derrick
C++ Without Fear, 2nd Ed
In the interests of full disclosure, I was provided a free copy of this book for review purposes. I am an experienced C++ programmer, and responded to a request (in a professional forum) for reviewers.
As a quick overview - an excellent first book for a complete programming novice; probably a little slow-paced for someone who knows other languages. The style and approach are well structured for the intended audience and there are few errors in the example code. It will provide you with a good grounding in the basics of C++, and no more - but that's its stated goal. You need to follow on with books such as "Effective C++" by Scott Myers, "OOAD with Applications" by Grady Booch, and some more advanced C++ books. This book (sensibly) declares templates to be an "advanced" issue and beyond its scope, so you'll need to look elsewhere for that information.
It is important to note the author's intended audience - namely someone whose computing knowledge goes little farther than "how to turn on a computer and use a mouse" (xxiii). This needs to be born in mind if you actually do know your way around a programming language. The approach to presenting technical concepts, and the level of technical language used, is well tailored to beginners - but will drive an experienced programmer to quickly look for another book.
Overall, this is an excellent first book for the pure novice. I would advise a true newcomer to ensure they read everything, including (even especially) the "optional" parts. The Preface (which potential engineers will be inclined to skip on instinct, smacking too much of reading the instructions) contains important information about the structure of the book, and where to find some of the essential tools. Overland describes his sidebars as "interludes", or digressions, but there is much important information buried in them. The appendices are also required reading!
One nice aspect is that Overland never uses a language feature he has not introduced, and never introduces a feature he does not immediately use in an example. And, rare nowadays for a book so loaded with examples, nearly all of the presented code will compile and execute as expected. An unfortunate side effect of this approach, however, is the the person wanting to learn C++ ends up knowing a lot about the C string library (perhaps it is simpler to introduce than, say, and strings oddly form a key component of most simple examples). Another example of using the 'C' approach in a C++ book is the use of the preprocessor for defining constants, when C++ has a perfectly good alternative with const - i.e. on page 225 you should use
const int SCR_LINES = 25;
rather than
#define SCR_LINES 25
Many language features come with "gotchas" if they are misused or abused, and Overland generally makes sure to introduce the warts when he provides a new feature. One area he missed is with the "sizeof()" operator. The reader is not told that taking the size of an array gives the total size, and not the number of elements. This is a common misconception, usually arising because the first time "sizeof()" is met is with char arrays. Just to clarify, the sizeof() operator provides the number of chars (usually bytes) needed to hold an instance of its parameter thus for the following:
int intArray[4];
char charArray[4];
sizeof(charArray) equals 4, but sizeof(intArray) equals "4 * sizeof(int)". To get the "length" of an array, you need "sizeof(intArray) / sizeof(intArray[0])".
I think that Chapter 8 (on files) would have been simpler to present if the string class has been introduced first. Also, the examples dealing with binary, read-write, files have an error and a trap for new programmers. When writing the data to the file, the size is given as "sizeof(name) -1" which fails to write out the 20th character of the "name" - this happens to be the NUL character terminating a full size string - which causes problems in later examples when the file is read back and printed out. Also, this example allows a file to be created with empty records and then these empty records to be read back in with no validation.
Importantly, Overland devotes an entire chapter to the whole concept of pointers. These are fundamental to programming in most modern languages, and often one of the hardest things to come to grips with for complete novices. The explanation is clear and concise, and most readers should be left with a reasonable understanding of them. However, I think references could have been introduced a lot earlier in function prototypes - which would have obviated the need to deal with them quite so early on in the book.
While templates are sensibly put off for more advanced books, only providing enough information to begin using the STL, the section on exceptions really needs more detail. While a novice programmer may not choose to use them in their own designs, almost any library they link to runs a high chance of being able to throw exceptions. Thus, the novice is gong to end up being intimately acquainted with exceptions whether they like it or not.
In case you're thinking I don't like this book, don't get me wrong. I'll repeat that I think it is an excellent starter for the complete novice. But if you're wondering whether or not to buy it, you really want to know it's problems as well as its strengths. So I'll wrap up with a list of my personal grievances - there is also an errata available on the web which I recommend you download and use to mark up the book. the following are not in the errata (yet).
- An exercise on page 203 suggests the following to check if a (c style) string contains "@@@": "if (strcmp(input_line, "@@@")) ...". This should read "if (strcmp(input_line,"@@@") == 0)" as a non-zero return means "not equal to".
- The binary read/write example on pages 212, 214, 215, and 216 needs to remove the "-1" from the sizeof for the name field.
- Exercise 11.1.1 on p 296 talks about the "\=" operator, when it should be the "/=" operator.
- The array initialization on p329 declares arr_of_fract[4] and then assigns 3 values, without explaining what happens to the 4th object.
- on p 371, the String class definition does not provide a type for the "ptr" member - should be "char *ptr;"
- Throughout the book, main() alternates between being defined as "void main()" and "int main()". Only the latter is correct. "Void main" harks back to the earliest K&R C language and has long been deprecated (or actually illegal) in C++.
- Virtual destructors are never explained, but their absence is a source of regular frustration in newbie's code.
- The book has a definite leaning towards the Windows world, with filenames containing "C:" for example.
- Many examples end with a call to "system("PAUSE");" to prevent the output console disappearing. They do not, however, include any headers to define "system()", and the "PAUSE" command is unique to Windows platforms. This was a source of frustration for my son when he tried to get his first example working.
- The compilers recommended in the preface are obsolete. There are much better free alternatives available today (for example: CODE::BLOCKS, Eclipse, Netbeans/C++) and this section needs to be updated.
- The biggest technical error I found in the book was on page 235, where Overland states that "variables are assumed to be private to the module in which they are created - unless and extern declaration is added". This is, in fact, completely the opposite of reality. In C and C++, the default linkage of a file-scope variable is GLOBAL, and the extern keyword just says "this is declared in another file".
These gripes aside (and there are always problems in technical texts!) it's a very good book, and I happily recommend it.
Keith Derrick
[...]
16 of 17 people found the following review helpful.
C++ and Programming for Beginners
By AR
Books attempting to teach beginners both programming and C++ are, of course, relatively rare. In the preface to this one the author says "What's different about this book is that I'm an advocate for you, the reader. I'm on your side. ...". And indeed the enthusiasm of the approach will probably be a great encouragement to the target audience. A persistent reader who worked their way through the book could learn a lot about programming and C++. There is a lot of good factual material and there are a number of clear and illuminating examples.
If the this reader read the book in its entirety they could, however, pick up a lot of misleading information, and miss out on some important fundamentals of programming, and of C++. For example, under the heading "What is not covered", the answer message starts "Relatively little as it turns out.". Yet, for example, the only container described in any detail in the chapter on the STL is std::list, plus the container adaptor std::stack. Iterators are briefly covered, but not the (STL) algorithms. The appendix "STL Classes and Objects" gives a nod to the wider scope of the standard facilities in this area, but only covers std::string, std::list, and std::stack, as the templates used in the text - and it does this in less than six pages.
Some things that I like about the presentation are the use of graphic schematics, such as the flowchart in the first chapter; and the fact that C++0x has been given some coverage (in Chapter 10, and elsewhere). Also pointers seem to be quite well explained, with useful graphics. On the other hand a lot of the text is very much C rather than C++ oriented; and the illustration of code to implement the assignment operator for a user-defined String class repeats the classic problematic use of delete[] preceding new[]. (The issue of potential self-assignment is relevant here as well, but is not raised.) This is symptomatic of an approach that does not, for me, sufficiently reflect current C++ knowledge and practice. (Selected appropriately for the target audience, of course, showing them today's approaches and idioms.) Yet another symptom of this is that the appendix titled "Standard Library Functions" only covers some functions "imported" from C. Two other appendices cover I/O and STL (see above), but the majority of C++ standard libraries and library functions are not even mentioned.
The book's text and website usefully points to a C++ IDE (DevC++), and mentions VC++ - but there is no guidance provided for readers who want to use an OS other than MS Windows.
In summary then, this book could reasonable be expected to be useful for its intended readership. But I think that the emphasis and indeed content could be greatly improved.
5 of 5 people found the following review helpful.
A fearless attempt to accomplish an impossible task
By Alexandre Emelianov
In my opinion, writing a beginner C++ book is impossible. C++ is too huge to be explained in general, and the sheer volume of details one needs to know even to write a "hello world" is enough to make one stop before even starting. Who is a "beginner", anyway? Someone with only the basic knowledge of computers, as author suggests? I don't think it's a good idea to start them on a very complicated language like C++. Someone who knows another computer language is better taught using similarities and differences between his language and C++. Someone who does not know other languages might be better off learning a specific framework first, and then looking at the wide world of C++.
That said, the book is a pretty good attempt at tackling this impossible task. Author tries to strike the delicate balance between explaining every detail (which are plenty in the simplest of examples) and trying to make the program do something interesting.
My main complaint is mixing C and object-oriented C++ approaches. Trying to use a little bit of both, in my experience, leads to enormous confusion. One can use char arrays, strcpy(), printf() and company, or std::string and streams to accomplish the same task. Learning both at the same time is hard. The book does not avoid this problem.
C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), by Brian Overland PDF
C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), by Brian Overland EPub
C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), by Brian Overland Doc
C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), by Brian Overland iBooks
C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), by Brian Overland rtf
C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), by Brian Overland Mobipocket
C++ Without Fear: A Beginner's Guide That Makes You Feel Smart (3rd Edition), by Brian Overland Kindle
Tidak ada komentar:
Posting Komentar