Learning Materials
Work in Progress
Please edit this page to add more resources. Feel free to comment on how any resources here align with the OpenLMIS conventions.
Videos, online tutorials, and other learning materials. See history in 2017-09-29 Meeting notes - learning materials.
Automated Testing
unit tests, integration tests, contract tests, test coverage, what is a "good test", and practices to decrease Bugs and Regressions (this has become a priority in Summer 2017 when bugs and regressions became a significant pain point)
- Automated Testing End-to-End https://www.pluralsight.com/courses/automated-testing-end-to-end
includes: unit, integration, and types of tests; Functional UI Testing - Advanced Unit Testing https://www.pluralsight.com/courses/advanced-unit-testing
includes: DRY versus DAMP, Structural Inspection - what else?
Object-Oriented Analysis and Design (OOAD)
- Domain-Driven Design Fundamentals: https://www.pluralsight.com/courses/domain-driven-design-fundamentals
- Domain-Driven Design in Practice: https://www.pluralsight.com/courses/domain-driven-design-in-practice
Great supplement for the Domain-Driven Design Fundamentals course - Java Object-Oriented Design https://www.pluralsight.com/courses/java-fundamentals-object-oriented-design
- Øredev - REST in Practice - Jim Webber https://vimeo.com/41763224
- Domains, DTOs - any good materials for that?
- what else?
DRY (don’t repeat yourself) and making re-usable code
- Clean Code-Writing Code for Humans https://www.pluralsight.com/courses/writing-clean-code-humans
includes: DRY, naming principles, Classes, and "code that is easy to write, read and maintain" - what else?
RESTful principles
nouns and verbs, complete representations, caching, concurrency
- REST Fundamentals: https://www.pluralsight.com/courses/rest-fundamentals
includes: representations, designing RESTful APIS
UI
- Software design patterns implemented in EcmaScript 6: http://loredanacirstea.github.io/es6-design-patterns/
OpenLMIS: the global initiative for powerful LMIS software