...
- Development environment
- Tools
- IDE
- Version Control
- Hg http://sourceforge.net/apps/trac/cs-studio/wiki/SourceRepository
- Eclipse plugin: http://www.javaforge.com/project/HGE
- Commit, then push
- Pull, then update
- Hg http://sourceforge.net/apps/trac/cs-studio/wiki/SourceRepository
- API
- Documentation
- Eclipse Architecture
- CSS Architecture
- Tools
- Build and release procedures
- Headless http://sourceforge.net/apps/trac/cs-studio/wiki/BuildSystem
- Creating a product
- Automated?
- Headless http://sourceforge.net/apps/trac/cs-studio/wiki/BuildSystem
- Production environment
- Workspace
- Update Site http://sourceforge.net/apps/trac/cs-studio/wiki/UpdateRepository
- Intro pages, cheatsheets http://sourceforge.net/apps/trac/cs-studio/wiki/IntroPages
How to contribute to CSS
- Level of integration http://css.desy.de/content/e760/e761/index_eng.html
- Standards
- Test-driven (JUnit) http://sourceforge.net/apps/trac/cs-studio/wiki/UnitTests
- Test-driven (JUnit) http://sourceforge.net/apps/trac/cs-studio/wiki/UnitTests
- Procedure http://css.desy.de/content/e760/e761/index_eng.html
- Select the level of integration for your plugin from the list above
- Use existing interfaces and extension points
- Add new extension points whenever useful
- Use Eclipse contributions to integrate your plugin seamlessly with other plugins
- Use common data types (IData) to exchange data (not only strings) with other plugins
- Localize strings in your code
- Decouple local requirements from CSS implementations. Use interfaces to decouple.
- Test CSS core versions and plugins on several platforms (at least Windows, Linux Mac-OS)
Links