www.digitalmars.com         C & C++   DMDScript  

c++ - Masters degree thesis

reply "jim p" <x y.com> writes:
Hi guys, I'm doing a master's degree in Wireless Networking and I am about
start on my 3 month dissertation.

As well as doing a minor research project I'm also going to try and get my
head around C++.
I've been programming in C for a few years now, but have yet to find the
time to teach myself object orientated programming in C++.
This is an ideal time.

I'm going to use DM C++ for the compiler, but what I need is some
recommendation on an excellent book to get me going.
I've been programming for some years and so do not need a book that start's
at the bottom.
However, as far as windows programming is concerned, I don't have a clue.

Any suggestions on literature to help broaden my knowledge ???

Jim
Jun 02 2003
next sibling parent "Matthew Wilson" <dmd synesis.com.au> writes:
Jim

I know where you're coming from: I pretty much did my real C++ learning
during my PhD thesis research.

In my experience, though there are lots of good books -
Meyers/Sutter/Stroustrup/Dewhurst amongst them - the best way to really
learn is to get hold of example and library code, and get out the magnifying
glasses.

For Windows programming, Petzold's books are good, although he's pretty much
on the .NET bandwagon, along with every other author in the Microsoft Press
stable. MSDN is a good way to learn Windows programming, along with all the
samples.

Finally, people on this newsgroup are always happy to lend a hand. I think
you'll find that you will get prompt answers to your questions.

Best of luck

Matthew

"jim p" <x y.com> wrote in message news:bbfito$1a95$1 digitaldaemon.com...
 Hi guys, I'm doing a master's degree in Wireless Networking and I am about
 start on my 3 month dissertation.

 As well as doing a minor research project I'm also going to try and get my
 head around C++.
 I've been programming in C for a few years now, but have yet to find the
 time to teach myself object orientated programming in C++.
 This is an ideal time.

 I'm going to use DM C++ for the compiler, but what I need is some
 recommendation on an excellent book to get me going.
 I've been programming for some years and so do not need a book that

 at the bottom.
 However, as far as windows programming is concerned, I don't have a clue.

 Any suggestions on literature to help broaden my knowledge ???

 Jim

Jun 02 2003
prev sibling next sibling parent Arjan Knepper <ask me.to> writes:
Jump start C++ with:
"Accelerated C++" "Practical Programming by Example" by Andrew Koenig & 
Barbara E. Moo

Also take al look at: http://mindview.net/Books/TICPP/ThinkingInCPP2e.html
http://www.gotw.ca/gotw/index.htm
And/or buy his Exceptional C++ Books.

Good Luck,
Arjan


jim p wrote:
 Hi guys, I'm doing a master's degree in Wireless Networking and I am about
 start on my 3 month dissertation.
 
 As well as doing a minor research project I'm also going to try and get my
 head around C++.
 I've been programming in C for a few years now, but have yet to find the
 time to teach myself object orientated programming in C++.
 This is an ideal time.
 
 I'm going to use DM C++ for the compiler, but what I need is some
 recommendation on an excellent book to get me going.
 I've been programming for some years and so do not need a book that start's
 at the bottom.
 However, as far as windows programming is concerned, I don't have a clue.
 
 Any suggestions on literature to help broaden my knowledge ???
 
 Jim
 
 

Jun 02 2003
prev sibling next sibling parent Ilya Minkov <midiclub 8ung.at> writes:
jim p wrote:

 Any suggestions on literature to help broaden my knowledge ???

An insightful book to learn C++ i like a lot is "Thinking in C++" by Bruce Eckel, 2nd Edition. It is a real bag of knowledge -- 2000 pages -- and nontheless easy to read and to follow. http://mindview.net/Books/TICPP/ThinkingInCPP2e.html Then, you might want to read "Effective C++" and "More Effective C++" by Scott Meyers. It requieres complete prior knowledge of C++ and discusses complex topics. But i believe the first one covers almost everything. As to Windows programming... LCC+Win32 C tutorial contains basic knowledge to Windows programming in C. Then, there's MFC which is used in C++, and a lot of books about it, mostly crap. Please consider that: - Neither MFC, nor any other C++ tooltkit gives you access to each and every Windows feature, so you might need to dip into the C windows interface anyway; - You might want to evaluate wxWindows, which is a versatile cross-platform C++ toolkit, which uses somewhat more abstraction than MFC. Its major advantage is that it not only gives you native interface on Windows, but also on MacOS X and GTK+ on other systems. It's complexity is its disatvantage: it bloats your executables to a higher extent, and may contain other disatvantages i'm not yet aware of. :> It is said to be somewhat slower as well, though i can't say one can notice that by applications i have seen, at least on Win32. One more thought: What languages have you programmed in? How much prior OO experience do you have and what languages? What are your reasons for learning C++? I wanted to point you to the D programming language, which is much easier to work with, and has a much more pure OO concept. OO in C++ is not a feature, it is a hack. You might have noticed a poiter to D on the DigitalMars web-site. :) -i.
Jun 02 2003
prev sibling next sibling parent "jim p" <x y.com> writes:
Thanks for the advice.
I'll look into all the references you gave.

jim


"jim p" <x y.com> wrote in message news:bbfito$1a95$1 digitaldaemon.com...
 Hi guys, I'm doing a master's degree in Wireless Networking and I am about
 start on my 3 month dissertation.

 As well as doing a minor research project I'm also going to try and get my
 head around C++.
 I've been programming in C for a few years now, but have yet to find the
 time to teach myself object orientated programming in C++.
 This is an ideal time.

 I'm going to use DM C++ for the compiler, but what I need is some
 recommendation on an excellent book to get me going.
 I've been programming for some years and so do not need a book that

 at the bottom.
 However, as far as windows programming is concerned, I don't have a clue.

 Any suggestions on literature to help broaden my knowledge ???

 Jim

Jun 02 2003
prev sibling next sibling parent reply "Walter" <walter digitalmars.com> writes:
"jim p" <x y.com> wrote in message news:bbfito$1a95$1 digitaldaemon.com...
 Any suggestions on literature to help broaden my knowledge ???

www.digitalmars.com/bibliography.html
Jun 02 2003
parent reply "jim p" <x y.com> writes:
Thanks, I did check the bibliography, but some of the books looked quite
old.
I guessed it hadn't been updated for a while.

Jim


"Walter" <walter digitalmars.com> wrote in message
news:bbgorc$2flt$1 digitaldaemon.com...
 "jim p" <x y.com> wrote in message news:bbfito$1a95$1 digitaldaemon.com...
 Any suggestions on literature to help broaden my knowledge ???

www.digitalmars.com/bibliography.html

Jun 03 2003
next sibling parent Ilya Minkov <midiclub 8ung.at> writes:
jim p wrote:
 Thanks, I did check the bibliography, but some of the books looked quite
 old.
 I guessed it hadn't been updated for a while.
 
 Jim

Good books are written rarely. And the world doesn't change completely every year. C++ has been a solid standard for a few years already - no reason to update the existing books. Besides, you want to learn C++, and not some specific completely-new feature of C++, right? -i.
Jun 03 2003
prev sibling next sibling parent reply "Walter" <walter digitalmars.com> writes:
"jim p" <x y.com> wrote in message news:bbikne$1agl$1 digitaldaemon.com...
 Thanks, I did check the bibliography, but some of the books looked quite
 old.

Some are old - they're the classics in the field! Some are old because they deal with win16 or dos programming, and nobody has written anything new on them in a while. Nevertheless, if you need to do a little DOS, those are the right books to get. Having a title can help you find them on the used book market. Win16/DOS programming predate the internet, and so there is relatively little online information about them.
 I guessed it hadn't been updated for a while.

I updated it a couple months back, as several of those classics have been updated by their authors.
Jun 03 2003
parent reply Garen Parham <nospam garen.net> writes:
A bit tangential, but do you have any book/paper reference gems for
compiler stuff?  The most often referenced book I see is the "Dragon"
book, but that doesn't cover a lot of things I read/see/hear in existing
compilers...it's like 15 years old now.
Jun 03 2003
parent "Walter" <walter digitalmars.com> writes:
"Garen Parham" <nospam garen.net> wrote in message
news:bbjeb4$21ue$2 digitaldaemon.com...
 A bit tangential, but do you have any book/paper reference gems for
 compiler stuff?  The most often referenced book I see is the "Dragon"
 book, but that doesn't cover a lot of things I read/see/hear in existing
 compilers...it's like 15 years old now.

Nobody has yet done a better job, and I agree the Dragon book is woefully inadequate.
Jun 03 2003
prev sibling parent reply "jim p" <x y.com> writes:
That was pretty much what I wanted to hear.
I hope you guys don't mind some daft questions appearing on this noticeboard
in the coming weeks.

Jim


"jim p" <x y.com> wrote in message news:bbikne$1agl$1 digitaldaemon.com...
 Thanks, I did check the bibliography, but some of the books looked quite
 old.
 I guessed it hadn't been updated for a while.

 Jim


 "Walter" <walter digitalmars.com> wrote in message
 news:bbgorc$2flt$1 digitaldaemon.com...
 "jim p" <x y.com> wrote in message


 Any suggestions on literature to help broaden my knowledge ???

www.digitalmars.com/bibliography.html


Jun 03 2003
parent reply "Matthew Wilson" <matthew stlsoft.org> writes:
"jim p" <x y.com> wrote in message news:bbivto$1l8j$1 digitaldaemon.com...
 That was pretty much what I wanted to hear.
 I hope you guys don't mind some daft questions appearing on this

 in the coming weeks.

Daft questions are a prerequisite. ;) To be serious, with almost no exceptions this newsgroup is an island of tolerance, friendliness and helpfulness. I can't recall anyone RTFM-ing anyone else, which is more than you can say for any other newsgroup I've ever come across. I think the fact that most of us are 30+ (or 40+, or 50+) means that we've perhaps experienced the downside of the "software-engineering" temperament in previous times, and realised that cooperation wins out in the end. So, post all the dumb questions you want. No-one's obliged to answer them if they haven't the time/inclination, but you'll likely get some helpful responses.
Jun 03 2003
next sibling parent reply Garen Parham <nospam garen.net> writes:
Matthew Wilson wrote:


...
 I think the fact that most of us are 30+ (or 40+, or 50+)

whoa. If that's true, there must be people here with kids older than I am. :)
Jun 03 2003
parent reply "Matthew Wilson" <matthew stlsoft.org> writes:
Mine are 3 and 1. You do the maths. :)

"Garen Parham" <nospam garen.net> wrote in message
news:bbje4q$21ue$1 digitaldaemon.com...
 Matthew Wilson wrote:


 ...
 I think the fact that most of us are 30+ (or 40+, or 50+)

whoa. If that's true, there must be people here with kids older than I

Jun 03 2003
parent reply "Nic Tiger" <tiger7 progtech.ru> writes:
And mine are 17, 16 and 1.6. But math doesn't work well here. I'm 25.

Nic Tiger.

"Matthew Wilson" <matthew stlsoft.org> wrote in message
news:bbje9s$22aq$1 digitaldaemon.com...
 Mine are 3 and 1. You do the maths. :)

 "Garen Parham" <nospam garen.net> wrote in message
 news:bbje4q$21ue$1 digitaldaemon.com...
 Matthew Wilson wrote:


 ...
 I think the fact that most of us are 30+ (or 40+, or 50+)

whoa. If that's true, there must be people here with kids older than I


Jun 03 2003
next sibling parent "Matthew Wilson" <matthew stlsoft.org> writes:
I got ya. Interesting times, eh? :)

"Nic Tiger" <tiger7 progtech.ru> wrote in message
news:bbjopp$2ben$1 digitaldaemon.com...
 And mine are 17, 16 and 1.6. But math doesn't work well here. I'm 25.

 Nic Tiger.

 "Matthew Wilson" <matthew stlsoft.org> wrote in message
 news:bbje9s$22aq$1 digitaldaemon.com...
 Mine are 3 and 1. You do the maths. :)

 "Garen Parham" <nospam garen.net> wrote in message
 news:bbje4q$21ue$1 digitaldaemon.com...
 Matthew Wilson wrote:


 ...
 I think the fact that most of us are 30+ (or 40+, or 50+)

whoa. If that's true, there must be people here with kids older than



 am. :)


Jun 03 2003
prev sibling next sibling parent gf <mz_y2k yahoo...com> writes:
"Nic Tiger" <tiger7 progtech.ru> wrote in
news:bbjopp$2ben$1 digitaldaemon.com: 

 And mine are 17, 16 and 1.6. But math doesn't work well here. I'm 25.

Now you puzzled me! /gf
 Nic Tiger.
 
 "Matthew Wilson" <matthew stlsoft.org> wrote in message
 news:bbje9s$22aq$1 digitaldaemon.com...
 Mine are 3 and 1. You do the maths. :)

 "Garen Parham" <nospam garen.net> wrote in message
 news:bbje4q$21ue$1 digitaldaemon.com...
 Matthew Wilson wrote:


 ...
 I think the fact that most of us are 30+ (or 40+, or 50+)

whoa. If that's true, there must be people here with kids older than I



Jun 04 2003
prev sibling parent "Greg Peet" <admin gregpeet.com> writes:
"Nic Tiger" <tiger7 progtech.ru> wrote:
 And mine are 17, 16 and 1.6. But math doesn't work well here. I'm 25.

And mine is 16. I'm 20. Math doesn't *at all* work here!
Jun 06 2003
prev sibling parent Ilya Minkov <Ilya_member pathlink.com> writes:
In article <bbj2na$1nr2$1 digitaldaemon.com>, Matthew Wilson says...
... I think the fact that most of us are 30+ (or 40+, or 50+)

I believe the younger members have been trying to be very helpful as well. Especially in the D newsgroup. -i.
Jun 04 2003
prev sibling parent reply "Greg Peet" <admin gregpeet.com> writes:
Whatever you do, make sure you get a copy of Stroustrup's The C++
Programming Language. I know that this goes without say, but you might
overlook this after you feel comfortable with the other text that was
referenced here (which are all good, I own them all and love them). You will
need it as a last-resort technical reference...or a fun read while on the
john =)

-- 
Regards,
Gregory Peet

Fellow Digital Martian
STLSoft FAQ: http://stlsoft.gregpeet.com
Jun 06 2003
next sibling parent "Walter" <walter digitalmars.com> writes:
"Greg Peet" <admin gregpeet.com> wrote in message
news:bbpncg$1uqe$1 digitaldaemon.com...
 You will
 need it as a last-resort technical reference...or a fun read while on the
 john =)

With that and Microsoft's iLoo, well, nevermind!
Jun 06 2003
prev sibling parent reply "jim p" <x y.com> writes:
I'm sure I'll get a copy once I'm up and running.
I think I'll start off with Accelerated C++, Programming by Example and
Thinking in C++.

I'm still not sure about the windows side of things.
Win32 & MFC ??
Could I get by using just Win32 ??
What are the advantages and disadvantages of using MFC ??
Is MFC compatible with DMC++ ??

Too many questions !!


"Greg Peet" <admin gregpeet.com> wrote in message
news:bbpncg$1uqe$1 digitaldaemon.com...
 Whatever you do, make sure you get a copy of Stroustrup's The C++
 Programming Language. I know that this goes without say, but you might
 overlook this after you feel comfortable with the other text that was
 referenced here (which are all good, I own them all and love them). You

 need it as a last-resort technical reference...or a fun read while on the
 john =)

 -- 
 Regards,
 Gregory Peet

 Fellow Digital Martian
 STLSoft FAQ: http://stlsoft.gregpeet.com

Jun 09 2003
next sibling parent reply "Matthew Wilson" <matthew stlsoft.org> writes:
"jim p" <x y.com> wrote in message news:bc2mk8$125o$1 digitaldaemon.com...
 I'm sure I'll get a copy once I'm up and running.
 I think I'll start off with Accelerated C++, Programming by Example and
 Thinking in C++.

 I'm still not sure about the windows side of things.

No-one ever is, as it's always changing. MSDN is the best searchable source of information, but not useful for actually learning the stuff in the first place. You need to get hold of a Charles Petzold book (not a .NET one, but one from pre-2000, e.g. "Programming Windows"), however, I would recommend that you ...
 Win32 & MFC ??

... put this in the when-I'm-confident-with-command-line-programming basket for the moment.
 Could I get by using just Win32 ??

Yes. The best way to learn, since whatever "framework" you end up using will not answer all questions, and if you don't know what's going on under the covers when you need to, you're lost.
 What are the advantages and disadvantages of using MFC ??

It hides a lot of the grunt work from you. It hides a lot of the grunt work from you, and is fatter than a software engineer's arse (or ass, for you American English speakers)
 Is MFC compatible with DMC++ ??

Yes
 Too many questions !!

Not in the least
 "Greg Peet" <admin gregpeet.com> wrote in message
 news:bbpncg$1uqe$1 digitaldaemon.com...
 Whatever you do, make sure you get a copy of Stroustrup's The C++
 Programming Language. I know that this goes without say, but you might
 overlook this after you feel comfortable with the other text that was
 referenced here (which are all good, I own them all and love them). You

 need it as a last-resort technical reference...or a fun read while on


 john =)

 --
 Regards,
 Gregory Peet

 Fellow Digital Martian
 STLSoft FAQ: http://stlsoft.gregpeet.com


Jun 09 2003
parent "jim p" <x y.com> writes:
I'm a Brit, so i put an r in my ass !!
If you see what I mean....oh, and an e, and drop an s.....

Thanks for the advice.
Command line C++ for me it is then....
For the time being at least.




"Matthew Wilson" <matthew stlsoft.org> wrote in message
news:bc2ufg$19gs$1 digitaldaemon.com...
 "jim p" <x y.com> wrote in message news:bc2mk8$125o$1 digitaldaemon.com...
 I'm sure I'll get a copy once I'm up and running.
 I think I'll start off with Accelerated C++, Programming by Example and
 Thinking in C++.

 I'm still not sure about the windows side of things.

No-one ever is, as it's always changing. MSDN is the best searchable

 of information, but not useful for actually learning the stuff in the

 place. You need to get hold of a Charles Petzold book (not a .NET one, but
 one from pre-2000, e.g. "Programming Windows"), however, I would recommend
 that you ...

 Win32 & MFC ??

... put this in the when-I'm-confident-with-command-line-programming

 for the moment.

 Could I get by using just Win32 ??

Yes. The best way to learn, since whatever "framework" you end up using

 not answer all questions, and if you don't know what's going on under the
 covers when you need to, you're lost.

 What are the advantages and disadvantages of using MFC ??

It hides a lot of the grunt work from you. It hides a lot of the grunt work from you, and is fatter than a software engineer's arse (or ass, for you American English speakers)
 Is MFC compatible with DMC++ ??

Yes
 Too many questions !!

Not in the least
 "Greg Peet" <admin gregpeet.com> wrote in message
 news:bbpncg$1uqe$1 digitaldaemon.com...
 Whatever you do, make sure you get a copy of Stroustrup's The C++
 Programming Language. I know that this goes without say, but you might
 overlook this after you feel comfortable with the other text that was
 referenced here (which are all good, I own them all and love them).



 will
 need it as a last-resort technical reference...or a fun read while on


 john =)

 --
 Regards,
 Gregory Peet

 Fellow Digital Martian
 STLSoft FAQ: http://stlsoft.gregpeet.com



Jun 11 2003
prev sibling parent reply Ilya Minkov <midiclub 8ung.at> writes:
jim p wrote:
 I'm sure I'll get a copy once I'm up and running.
 I think I'll start off with Accelerated C++, Programming by Example and
 Thinking in C++.

You'll be reading the same things over and over, which might be frustrating... and each book is thousands of pages. :) but if you do, please tell us which you liked best. :)
 I'm still not sure about the windows side of things.
 Win32 & MFC ??
 Could I get by using just Win32 ??

Win32 API is a *MUST*. MFC is worth considering, but you might just as well want to consider wxWindows or VCL or some other wrapper around Win32 API, which are many and MFC is one of them. Not necessarily the best one from POV of ease-of-use and target program reliability! -i.
Jun 10 2003
parent reply "jim p" <x y.com> writes:
So MFC is just a wrapper around the win32 api.
I hadn't thought of it like that.
Thanks



"Ilya Minkov" <midiclub 8ung.at> wrote in message
news:bc4hgo$2kol$1 digitaldaemon.com...
 jim p wrote:
 I'm sure I'll get a copy once I'm up and running.
 I think I'll start off with Accelerated C++, Programming by Example and
 Thinking in C++.

You'll be reading the same things over and over, which might be frustrating... and each book is thousands of pages. :) but if you do, please tell us which you liked best. :)
 I'm still not sure about the windows side of things.
 Win32 & MFC ??
 Could I get by using just Win32 ??

Win32 API is a *MUST*. MFC is worth considering, but you might just as well want to consider wxWindows or VCL or some other wrapper around Win32 API, which are many and MFC is one of them. Not necessarily the best one from POV of ease-of-use and target program reliability! -i.

Jun 11 2003
parent reply "Matthew Wilson" <matthew stlsoft.org> writes:
Most of software engineering involves putting a wrapper around an API. ;)

"jim p" <x y.com> wrote in message news:bc73iv$1ubt$1 digitaldaemon.com...
 So MFC is just a wrapper around the win32 api.
 I hadn't thought of it like that.
 Thanks



 "Ilya Minkov" <midiclub 8ung.at> wrote in message
 news:bc4hgo$2kol$1 digitaldaemon.com...
 jim p wrote:
 I'm sure I'll get a copy once I'm up and running.
 I think I'll start off with Accelerated C++, Programming by Example



 Thinking in C++.

You'll be reading the same things over and over, which might be frustrating... and each book is thousands of pages. :) but if you do, please tell us which you liked best. :)
 I'm still not sure about the windows side of things.
 Win32 & MFC ??
 Could I get by using just Win32 ??

Win32 API is a *MUST*. MFC is worth considering, but you might just as well want to consider wxWindows or VCL or some other wrapper around Win32 API, which are many and MFC is one of them. Not necessarily the best one from POV of ease-of-use and target program reliability! -i.


Jun 11 2003
parent "Greg Peet" <admin gregpeet.com> writes:
"Matthew Wilson" wrote:
 Most of software engineering involves putting a wrapper around an API. ;)

That's the wonderful thing about C++: classes! If you don't get a book on MFC (or other wrapper) and want to learn exactly what it is doing, pop open the header files for the members and methods. NOTE: Jog down and take heed to M$'s Hungarian notation. It is something you *must* overcome and it's not always consistent =(
Jun 11 2003