I don't disagree with you, but I have a variety of developers that work with 
me/read/modify my code, and they are  of varying levels of proficiency (none 
are actual C++ programmers by choice) (Java is their main language). I want to 
make things as friendly and obvious and for them (and guiltily, myself). The 
nice thing is that when the C++ std level of detail is needed it is there. But 
99% of the time we have no need for it to be the absolute best performant code. 
I understand API creators have that requirement, but application developers 
usually do not. Maybe C++ isn't the right language, but there's so much Qt does 
right over all the other options we have.

I will continue to increase my proficiency in C++, but this is my personal 
commitment. I cannot demand the same for the others. 



> Sent: Wednesday, October 31, 2018 at 5:19 PM
> From: "Jérôme Godbout" <godbo...@amotus.ca>
> To: "Jason H" <jh...@gmx.com>, "giuseppe.dang...@kdab.com" 
> <giuseppe.dang...@kdab.com>
> Cc: "interest@qt-project.org" <interest@qt-project.org>
> Subject: RE: [Interest] Qt API annoyances: where to log/discuss?
>
> All those back_inserter() and C++0xXY template make our life easier in the 
> end, I strongly suggest you do learn them, they can make very generic code 
> with SFINAE that most other language will have hard time to accomplish with 
> the same final level of performance. It's a good balance of quantity of code 
> vs speed. The draw back, is the learning curve and the readability that are 
> hideous.
> 
> I agree there is way too much boiler plate for C++ template syntax, but you 
> can design some helper to simplify your SFINAE or other template usage. 
> back_inserter() for example let you make an algo that work with any type of 
> container that will append data, no matter what that container can be, you 
> can even make your own container as long as you provide the push_back() 
> function.
> 
> Why use back_inserter over direct push_back? Because some algo like copy 
> operate on iterator and don't need to be rewritten with a push_back version 
> to work, as simple as that. The mor you will stay close to the iterator and 
> the standard, the easier it will be to code with it.
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to