Extension points in Enterprise Application

527 views

Published on

Extension points in Enterprise Application, ITDays Cluj-Napoca,

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
527
On SlideShare
0
From Embeds
0
Number of Embeds
350
Actions
Shares
0
Downloads
2
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Extension points in Enterprise Application

  1. 1. .
  2. 2. Who am I? : ”vunvulear@outlook.com”,
  3. 3. Features • Component does not know anything about other components beyond the scope of the extension contract • Applications can have more than one component that extend a specific extension point
  4. 4. Evolution public class Calculator { private string baseValue; ... public void Add(string value) { if (value==null || value.Count == 0 || value == "-") { baseValue = baseValue + "-"; } ... } }
  5. 5. Evolution public class Calculator { private string baseValue; ... public void Add(string value) { if (ContainsDefaultValue(value)) { baseValue = baseValue + "-"; } ... } protected virtual bool ContainsDefaultValue(string value) { return (value==null || value.Count == 0 || value == "-"); } }
  6. 6. Natural Based on the needs Every iteration At design time
  7. 7. Interfaces Virtual Methods Abstract Class Modules Services Configuration Files
  8. 8. Interfaces Virtual Methods Abstract Class Modules Services Configuration Files
  9. 9. Interfaces public class MyCalculator : ICalculator { public void Add(string value) { // Some action } void Initialize() { // Some action } void Refresh() } { } public interface ICalculator { void Add(string value); void Initialize(); void Refresh(); }
  10. 10. Annotation [InitializeAttribute(typeof(MyInitialize)] public class MyCalculator : ICalculator { public void Add(string value) { ... } void Initialize() void Refresh() } public interface ICalculator { void Add(string value); void Initialize(); void Refresh(); }
  11. 11. Print EP Internal Teams Print EP Print EP External Teams View EP Core Core Team
  12. 12. • • • • Manager Expiration Policy Encryption Backing Store Caching • Provider • CRUD • Retry Policy • Hash Algorithm • Symmetric Encryption Data Access Cryptography
  13. 13. • Validator • Attributes • Handing • Formatter • Listeners • Filters • Handler • Formatter • Management Validation Logging Exception • Authorization • Authentication • Security Cache Security
  14. 14. Changes Be prepared for changes • Frameworks • Services • Hardware • On-premise to Cloud • Cloud to On-premise
  15. 15. Question Answers
  16. 16. { “name” : “Radu Vunvulea, “blog” : “vunvulearadu.blogspot.com” “email” : ”vunvulear@outlook.com”, “socialMedia” : { “twitter” : “@RaduVunvulea”, “fb” : “radu.vunvulea” } }

×