carlAlex
8/10/2016 - 8:41 AM

Coding workflow

Coding workflow

//DEV #1-1 - Topic -
//DEV #1-2 - Topic -
//DEV #1-3 - Topic -
//DEV #1-4 - Topic -

//DEV #2-1 - Topic -
//DEV #2-2 - Topic -
//DEV #2-3 - Topic -
//DEV #2-4 - Topic -

//DEV #3-1 - Topic -
//DEV #3-2 - Topic -
//DEV #3-3 - Topic -
//DEV #3-4 - Topic -
/*
 * Prototype - What should it do?
 *  
 *  
 * 
 * (Use Excel for quick testing and development of formulas etc.)
 */
//

/*
 * Planning:
 * 
 * Nouns:
 * 
 * *****
 * Adjectves:
 * 
 * *****
 * Verbs:
 * 
 * ****
 */
//

//DEV: #1 - Topic - Task
//DEV: #1-1 - SerializeData - Open a new stream
//DEV: #1-2 - SerializeData - Serialize with binaryformatter

/* TODO-List
 * 
 * [ ] - Task 1
 * [X] - Task 2
 * [ ] - Task 3
 * [ ] - Task 4
 * [ ] - Task 5
 */
//
Preparation
 What should it do?
 Prototype it: (in Excel?)
	- Calculations
	- Variables
	- Inputs
	- Outputs
 Plan
 	- Write comments
		- Nouns -> Classes
		- Adjectives -> Properties
		- Verbs -> Methods
		  - Events
		    - what is an interesting event? Who might want to listen to it?
		    - what sort of messages would I like to get?
		  - Interfaces (decoupling)
		    - what would the HIGH LEVEL OBJECT need this thing to do?
		    - what do I (the HIGH LEVEL OBJECT) need another class to do?
	- Tools - Options - Environment - Task List: "DEV: # *task*"
 Perform
	- Write the code ("fix" the comments)
	* TDD - Write
		-Arrange
		-Act
		-Assert
 Perfect
	- Refactor (Changing code, but not functionality
	- Readability - Maintainability - Testability - Performance - Extensibility 	- Compliance




(Designing, refactoring, optimizing, refining)
When you click a button, or something happens:

*Start at the end result:
  *What information do you need here?
  *Who should provide this information?
  *How should it be done? (keep adding classes and interfaces, SRP!)