Chain of Responsibility Detector
This is just a learning project. The main topicts that I wanted to lear by doing are:
- JavaScript Design Patterns: I implemented the generic Chain of Responsibility and the very JS specific Revealing Module.
- DOJO Toolkit: it's a very popular and powerful JavaScript framework that is AMD compatible. I'm using release-1.9.0.
- Asynchronous Module Definition AMD: the library modules should be primarely compatible with DOJO 1.9 but also with other loaders like RequireJS
- Behaviour-Driven Development with Jasmine: this project glues everything together.
- Git and Github: this is my first open source project hosted here. [:
- Create JavaScript code that is compatible with JSHint.
This library and the sample code is Open Source under the Apache 2.0 License.
Author(s):
- William R. J. Ribeiro @bill_bsb, will at williamrjribeiro dot com)
Version 1
Initial release.
- Detects two browsers: Internet Explorer and Firefox.
- Detects two OS: Windows and OSX.
- ASTAH class diagram.
- Validated by JSHint
- No Jasmine unit tests.
- Not AMD compatible.
Version 2
- Detects two additional browsers: Google Chrome and Apple Safari.
- Refactor code to be AMD compatible and use DOJO's loader.
- Implement Jasmine unit tests for all modules.
- Simplify the API
- Use Dojo's DTL engine which is basically Django
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.