Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Horizontal Navigation Bar


Button Group

Button Hyperlink
titlePrevious
typestandard
urlhttps://softwareconfluence.ecmwf.int/wiki/display/ECFLOW/Indentation
Button Hyperlink
titleUp
typestandard
urlhttps://softwareconfluence.ecmwf.int/wiki/display/ECFLOW/Advanced+Topics
Button Hyperlink
titleNext
typestandard
urlhttps://softwareconfluence.ecmwf.int/wiki/display/ECFLOW/Introducing+Zombies


Python’s object-oriented design features allows allow considerable flexibility in how we design and structure our suite definition.

Each suite will have a different set of forces which that determine how it should be designed.

Lets Let's consider how we would design the tutorial examples in a more object-oriented manner. We start with some design criteria we must meet.

  • The default variables (ECF_HOME, etc) must be configurable and independent of the suites
  • New suites must enable automatic job creation checking
  • We need to write out definition as a separate file
  • New suites should be able to re-use the “boiler plate” “boilerplate” code defined by the above requirements

Here is a possible design, that uses inheritance and the template design pattern:

...

Horizontal Navigation Bar


Button Group

Button Hyperlink
titlePrevious
typestandard
urlhttps://softwareconfluence.ecmwf.int/wiki/display/ECFLOW/Indentation
Button Hyperlink
titleUp
typestandard
urlhttps://softwareconfluence.ecmwf.int/wiki/display/ECFLOW/Advanced+Topics
Button Hyperlink
titleNext
typestandard
urlhttps://softwareconfluence.ecmwf.int/wiki/display/ECFLOW/Introducing+Zombies


...