Jump to content
Sign in to follow this  
  • entries
    4
  • comment
    1
  • views
    52474

A Christmas present: Effective FPL

Mr. Arne Bergmann

2544 views

Wow, has it been that long since my last entry?

Well, I have a very short one with a big attachment. I always wanted to write something about "best practices" for Feature programming. That "something" became larger and larger and it became pretty clear that it's too large for a "regular" blog post. That's why I decided to create a PDF file, instead. In the end it turns out to be a 37 page booklet instead of an article.

I compiled some techniques that I consider to be the most effective for creating Feature definitions with good performance. So, please take a look at "Effective FPL" and let me know what you think about it in the comments.

 

Merry Christmas and a good start into 2016!



1 Comment


Recommended Comments

Hi Arne,

 

happy New Year!

 

Very nice paper (or should I say 'booklet'?)! A real "must read" for anybody attempting serious feature programming. The distinction between BasicTypes and normal objects is quite helpful. Although the reference based access to BasicTypes in the foreach-loop makes a lot of sense, it's something one has to be aware of in order make good use of it. I guess changing lists (deleting/adding items) in a loop is often a bad idea. In my experience it sometimes helps to start deleting items starting from the end. This way the behavious is usually much more predictable.

 

I really like the idea of getting rid of the possibility to change the parameters passed to a feature. That simply shouldn't be possible by default. If you really want to do that on special occasions maybe one can find a construct that explicitly passes "changeable" references. Like passing a value or a pointer in C/C++ for example. For performance reasons one probably shouldn't copy complex objects, but just disabling changes for the value passing style (as a standard) and enabling changes for the pointer passing case should do and would prevent many people from programming stupid things...

 

Type safe containers would be nice too. And, yes please implement a copying constructor  / universal copying assignment if possible. That makes a lot of sense.

 

Regards,

Bodo

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...