Design Philosophy Question - When to create new functions

Posted by Eclyps19 on Stack Overflow See other posts from Stack Overflow or by Eclyps19
Published on 2010-12-30T15:37:48Z Indexed on 2010/12/30 15:54 UTC
Read the original article Hit count: 234

Filed under:
|
|

This is a general design question not relating to any language. I'm a bit torn between going for minimum code or optimum organization.

I'll use my current project as an example. I have a bunch of tabs on a form that perform different functions. Lets say Tab 1 reads in a file with a specific layout, tab 2 exports a file to a specific location, etc. The problem I'm running into now is that I need these tabs to do something slightly different based on the contents of a variable. If it contains a 1 I may need to use Layout A and perform some extra concatenation, if it contains a 2 I may need to use Layout B and do no concatenation but add two integer fields, etc. There could be 10+ codes that I will be looking at.

Is it more preferable to create an individual path for each code early on, or attempt to create a single path that branches out only when absolutely required.

Creating an individual path for each code would allow my code to be extremely easy to follow at a glance, which in turn will help me out later on down the road when debugging or making changes. The downside to this is that I will increase the amount of code written by calling some of the same functions in multiple places (for example, steps 3, 5, and 9 for every single code may be exactly the same.

Creating a single path that would branch out only when required will be a bit messier and more difficult to follow at a glance, but I would create less code by placing conditionals only at steps that are unique.

I realize that this may be a case-by-case decision, but in general, if you were handed a previously built program to work on, which would you prefer?

© Stack Overflow or respective owner

Related posts about design

Related posts about philosophy