|
|||||||||||||||||||||||||||||||||||
|
6 Reviews
|
Average Customer Review
Share your thoughts with other customers
Create your own review
|
|
Most Helpful First | Newest First
|
|
17 of 17 people found the following review helpful:
4.0 out of 5 stars
Gets you up and running quickly,
By
This review is from: Foundations of Qt Development (Expert's Voice in Open Source) (Paperback)
Qt has some of the most WONDERFUL documentation I've ever seen. It's concise, easy to read, and actually explains design tradeoffs and decisions. So some would call me silly for going out and trying to find a book on it. Yet while the Qt documentation is a great reference, it assumes a familiarity with the big picture. As a first timer to Qt and someone who's never been too comfortable with the ins and outs of a large toolkit, I needed something to take me from neophyte to understanding documentation reader. And this book did exactly that.
Foundations of Qt Development took me on a tour of what this large toolkit has to offer. I now have a pretty good "feeling" for Qt. Besides being able to put together small applications, I'm perfectly capable of jumping into the main Qt documentation and finding whatever I need for more ambitious projects. After reading this book, I can answer my own questions with the documentation in 5 minutes instead of the hours of confused searching it took me before. Moreover, I understand enough of the style and inner workings of Qt to jump in and start extending the toolkit without issue. This guide wasn't without some small problems, but none were serious enough to keep me from recommending the book. The first chapter hits the reader with a lot of little details and is at odds with the more relaxed style of the rest of the book. Don't sweat memorizing every little thing in the first chapter, just get the general idea and move on. The rest of the problems were minor editing flaws. The text didn't match the code snippets in a few places, there were a few unclear words, etc. None of them are that serious, but they give the book a sort of unpolished or unfinished feel at times. It could definitely benefit from another editing pass in the next edition. It should also be mentioned that this book uses C++ exclusively. Now that C++ is the only officially supported language that's not a big deal. But a prospective reader who plans to use Qt with an unofficial binding should keep that in mind. I would still recommend the book to the non-C++ user however; so many internal mechanisms of Qt are designed to work around C++'s idiosyncrasies that it's probably best for all users of Qt to understand it in its native language before attempting to use it from a foreign one. I would easily recommend this book to someone wanting to start out with Qt. While it does have a couple editing flaws, none of them detracted from the content in any significant way.
10 of 10 people found the following review helpful:
4.0 out of 5 stars
Could do with a bit of polishing,
By
This review is from: Foundations of Qt Development (Expert's Voice in Open Source) (Paperback)
All in all this is quite a good introduction for someone who wants to get the "big picture" of Qt Programming before diving into the reference manuals. I should point out that given that QtCreator has come out since this book is written, this book is a little out of date, but some might argue that QtCreator is fancy wrapping of the old tools with a rather nice new editor.
The plan of the book is good, but there are a few faults that prevent me from giving it full marks. The English is not that great. One mistake that comes up time and time again is a sentence form like the following example: "I use my car for going to work". Surely "I use my car to go to work" is better English. There are rather obscure sentences (or are they perhaps just plain wrong?) like this: "The word meta indicates that the word prefixed is about itself. So a meta-object is an object describing the object". It looks to me like he's confusing self-referential and "meta". In any case it's not very clear, but thankfully the reader is likely to have seen the concept properly explained elsewhere. The first time the author introduces signals he writes "A signal is a method that is emitted rather than executed when called". I don't know if any newbie will understand that, but if you hang on you will work out what he's trying to say a little later, but it can provoke a bit of an indigestion when you land on it. Then there is a class (listing 1.10) where the user might not have noticed that the names of the signals and the slots are the same as in a class. The author writes: "It is important to remember that the names of the signals and the slots "just happen" to be the same an in MyClass". It is surely better to replace the word "remember" by "notice", because you don't usually remember something you haven't noticed. People who start out in Qt don't all have a C++ background (they might have been C# programmers like me) so it would be nice to be gentle on people who are not thoroughly conversant with C++. In one of the first examples the author provides a class declaration. To a C# programmer this might look like a class definition at first glance. The author goes on to say the function getText returns the value of the private field m_text. For a total C++ newbie this might look as if it says "from the above listing we can see that getText() returns the value of m_text. The potential misunderstanding could have been avoided by writing "we define getText to return m_text" and this would have taught the reader a bit about C++ without insulting the more experienced programmer. An alternative textbook C++ GUI Programming with Qt 4 (2nd Edition) (Prentice Hall Open Source Software Development Series) does provide an introduction to C++ for C# and Java programmers. As I moved deeper into the book I began to get used to the style, and there were chapters where it was easy reading, I quite liked the chapters on files, widgets and database access. However the chapter on plugins seemed to be harder reading than it could have been. The example involving an ascii art plugin was strange because the first example of ascii art (a camel) really looked hand-crafted rather than the product of his plugin. The chapter was too full of hand waving and vagueness for my liking and I looked at the other book I mentioned above for relief, and found the other book much clearer. This alone could have me cut the book's rating down to 3. Qt programming is harder on Windows than it is in Gnu/Linux. Just look at how many people on the forums are desperately trying to create a Postgres driver. It would be nice if a book like thus warned of some of the traps. One other point: it would be nice if the user could download full programs for each of the samples he provides. On is often left wondering what include files one should be using. For example I wrote a program that calls on the tr() function around strings only to find that the linker told me that this was an undefined function!. After I looked up tr in the index I noticed that it had been introduced in the text way before the first indexed occurrence.
8 of 8 people found the following review helpful:
5.0 out of 5 stars
Just what I was looking for and more,
By Jeffrey W "Jeff" (Los Angeles, CA USA) - See all my reviews
Amazon Verified Purchase(What's this?)
This review is from: Foundations of Qt Development (Expert's Voice in Open Source) (Paperback)
Recently I decided that I wanted to learn C++ GUI programming in Windows for real-time application/graphics programming.
Native C++ provides the control necessary to optimize such systems so I wanted to avoid the slower .NET. I started learning MFC since that is what we currently use in-house, but found that MFC GUI programming is not intuitive at all. Since Microsoft is pushing .NET, there aren't many current books on MFC programming using native C++. Moreover, it's also confusing since all of the C++ documentation/examples are buried in the .NET documentation so it's easy to go astray. (Using name C++ for .NET programming (C++/CLI) makes things confusing) I am now 70% of the way through this book and very impressed with it. Not only is the book well written, but the author really knows the material and the examples are right on target. (Very few wasted pages) This book covers a lot of very important aspects of Qt programming. Not only am I impressed with the book/author but also with the Qt programming language. I've programmed in C, C++, Java, IDL, and FORTRAN and Qt seems to incorporate the best ideas from these languages. This book made it so easy to pick up GUI programming and the bonus is that the applications run on multiple platforms. The only minor negative is that some of the examples in the book are a bit incomplete or have minor errors. If your following along, most of these are easy to fill in/fix, but if you get stuck, all of the source code for the examples is available online. Since the book does not contain an introduction to C++, all the material is focused on Qt development. I think this was the correct decision because there are plenty of good books out there for learning C++. I would buy this book again in a heartbeat. Thanks to all of the previous reviews, since they were an important factor in me buying this book. Jeff
5.0 out of 5 stars
Really easy to understand if you are a newbie,
By Marco Antonio Islas Cruz (Venustiano Carranza, Puebla Mexico) - See all my reviews
Amazon Verified Purchase(What's this?)
This review is from: Foundations of Qt Development (Expert's Voice in Open Source) (Paperback)
I come from the GTK Foundations, and this is the easier QT book I've ever seen. For me is pretty easy to understand. The chapter 1 "The QT way of C++" introduces you to the way to use QT and why you should use the QT methods and objects instead the C++ STL (which you can use it too). If you are new on QT then you must read this book.
7 of 13 people found the following review helpful:
5.0 out of 5 stars
Good read - author knows the topic well,
By
This review is from: Foundations of Qt Development (Expert's Voice in Open Source) (Paperback)
Qt is an interesting framework to work within, and is a fantastic answer to cross-platform nightmares that I've experienced. Instead of designing and/or reprogramming for each new platform (such as writing native software that you already have in Windows in C++ for Mac in Objective-C), Qt allows you to essentially program it once and then port to additional platforms.
The author understands the topic well, and this book is a must-have if you are interested in programming using Qt. I highly recommend this book. Aside from a couple small spelling and grammatical errors, this book is very well-structured and perfect for my needs.
2 of 7 people found the following review helpful:
4.0 out of 5 stars
Good intro but still needs more,
By AJ (North Dakota, USA) - See all my reviews
Amazon Verified Purchase(What's this?)
This review is from: Foundations of Qt Development (Expert's Voice in Open Source) (Paperback)
I enjoy this book, and do recommend it to others. It has helped in the basics of getting Qt apps running. I feel there is alot more that can be added to a second volume, but then that's the world of programming texts. For right now though I'm off to see the wizard of the Qt API.
|
|
Most Helpful First | Newest First
|
|
Foundations of Qt Development (Expert's Voice in Open Source) by Johan Thelin (Paperback - August 23, 2007)
$54.99 $33.69
In Stock | ||