I don't want to know each and everything in C++, but I wan't to know what do I need to be able to Code a good big app like Notepad++?

I mean what it takes to be a best C++ expert?
(Or how did the Ancient Dragon became expert ;) )
Thanks guys & girls

An education in programming helps. But most of all: *a lot* of practice. The best thing is to have a job in the C++-field, because you can pick up a lot form co-workers and you'll constantly get new projects which will push the boundaries of your knowledge.

Despite working as a programmer for several years, I wouldn't consider myself an expert per se. I'm still learning new things every day. But I'd have to echo what niek_e said and say that the main thing you need on the road to becoming an expert is experience with the language.

Some kind of formal qualification or degree in an IT/Software related discipline would also help, but is by no means essential!
I'm getting along fine without a degree, but I do hold a vocational qualification in 'C', which actually helped get me into my first junior C++ programmer position.

Anyway, the main thing is experience.

Experience can be gained through:
Designing and writing your own applications - This goes without saying. Although, I find that debugging your own programs is the most useful experience of all!

Looking at open source code - Possibly even contributing some code to an open source project. Any code submitted to an open source project is usually scrutinised by several other members of that project. So they'll point out any flaws in your code/logic and will give you good pointers on how to improve your code.

Participating in forums - like here on daniweb. Beyond just posting your own problems, check out the C++ forums and take a look at the code other people are posting and try to solve their problems yourself...Even if you don't feel confident enough to post an attempt at a solution, take a look and try to solve it anyway, it'll help you no end!
Granted, most people post pretty newbish problems, but there are a few head-scratchingly mind-melting doozies from time to time! And even then, if you haven't got a clue how to solve it...Keep an eye on the thread. Somebody else may post some insight and you just might learn something new!

Also as with contributing code to an open source project, code posted on a forum will inevitably be reviewed by other users on the forum if the code isn't up to scratch (and Daniweb is no exception!)

Finally On the job experience - If you can get a job as a C++ programmer (even as a junior) then you'll find yourself hitting the ground and running in no time. Not to mention making loads of mistakes and rapidly learning from them!
Again, code is often reviewed by your peers, so you'll be learning constantly from some of the best in the business!

I hope that is of some help.
Cheers for now,
Jas.

commented: *nods* +10
commented: Thanks for the info +2

Thanks guys for good advices and are good. Actually I'm working in Telecommunication Engineering Field as an Engineer. So Programming is Just my hobby. Nevertheless I want to be expert, though I don't want to know everything

More advices?

Well other than what's already been mentioned, reading as many technical C++ books as you can get hold of might also help.

I'm not going to mention any books here though because there's a sticky at the top of the C++ forum that has loads of book titles posted in it. I think most of the must-have C++ classics are listed there!

Cheers for now,
Jas.

>I don't want to know each and everything in C++
Good. That's probably an impossible goal anyway.

>I mean what it takes to be a best C++ expert?
Practice and a constant desire to improve. If you have the latter, you'll find resources to learn from. For example, nobody told me that university libraries are a great place for finding uncommon books on programming. It was just a random whim that turned out to be a fabulous idea.

Read, read code, code. A lot.

Personally I do not find reading code much helpful. Its usually has little
comments, and if not written clearly, then its not-comprehensible. I don't
get out of it as much as if I would from reading books, ASKING
QUESTIONS, coding or doing other things. But I do once in a while read
code, usually the stl code of whats available, or from some really smart
people that tries to explain certain things.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.