O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

A Framework Driven Development

1.797 visualizações

Publicada em

A Framework Driven Development

Publicada em: Engenharia
  • Seja o primeiro a comentar

A Framework Driven Development

  1. 1. • iOS (16.10 ~ ) • : minsone.github.io
  2. 2. • • • • • • QnA
  3. 3.
  4. 4. • • +
  5. 5. • • + • Carthage, Cocoapods
  6. 6.
  7. 7. • •
  8. 8. • • •
  9. 9. • • • • , SDK 
 .
  10. 10.
  11. 11. • • Objective-C
  12. 12. • • Objective-C • Xcode
  13. 13. • • Objective-C • Xcode •
  14. 14. • • Objective-C • Xcode • •
  15. 15. • • Objective-C • Xcode • • •
  16. 16. • • , Swift
  17. 17. • • , Swift •
  18. 18. A.swift protocol BaseAPI {} class API {} B.swift
  19. 19. A.swift protocol BaseAPI {} class API: BaseAPI {} B.swift
  20. 20. • • , Swift • • , ,
  21. 21. • • , Swift • • , , • SDK . • - Swift , iOS ,
  22. 22. A.swift protocol BaseAPI {} class API: BaseAPI {} B.swift
  23. 23. A.framework/A.swift protocol BaseAPI {} public class API {} B.framework/B.swift
  24. 24. • .
  25. 25. • . • public, open
  26. 26. • . • public, open • internal
  27. 27. • . • public, open • internal •
  28. 28. • . • public, open • internal • • , ,
  29. 29.
  30. 30. • • .
  31. 31. • • . • .
  32. 32. • • . • . • .
  33. 33. • • . • . • . • . - ex)
  34. 34. • • . • . • . • . - ex) • xUnique .
  35. 35. • .
  36. 36. • . • .
  37. 37. • . • . • .
  38. 38. • . • . • . • . . . . .
  39. 39. Module Package + Extension Domain Domain Domain Domain Common Service Main Service Application Alamofire Module SwiftRichString Module
  40. 40. Module Package + Extension Domain Domain Domain Domain Common Service Main Service Application Alamofire Module SwiftRichString Module • • ( , , UI ) • • . Module
  41. 41. Module Package + Extension Domain Domain Domain Domain Common Service Main Service Application Alamofire Module SwiftRichString Module • Module Package
  42. 42. Module Package + Extension Domain Domain Domain Domain Common Service Main Service Application Alamofire Module SwiftRichString Module • , , API Common Service
  43. 43. • 
 ex) , , Domain Service Module Package + Extension Domain Domain Domain Domain Common Service Main Service Application Alamofire Module SwiftRichString Module
  44. 44. • Main Service Module Package + Extension Domain Domain Domain Domain Common Service Main Service Application Alamofire Module SwiftRichString Module
  45. 45. • UIApplication(AppDelegate) Application Module Package + Extension Domain Domain Domain Domain Common Service Main Service Application Alamofire Module SwiftRichString Adapter
  46. 46. Application NetworkModule Alamofire LogInAPI AuthAPI CardAPI
  47. 47. Application NetworkModule Alamofire LogInAPI AuthAPI CardAPI
  48. 48. Application NetworkModule Alamofire LogInAPI AuthAPI CardAPI NetworkModule • • 

  49. 49. Application NetworkModule Alamofire LogInAPI AuthAPI CardAPI LogIn Network • NetworkModule 
 • LogIn, Logout API
  50. 50. Application NetworkModule Alamofire LogInAPI AuthAPI CardAPI Application LogInAPI
  51. 51. • NetworkModule • • • LogIn Network • NetworkModule • LogIn, Logout API • LogIn, Logout API
  52. 52.
  53. 53. • • Alamofire . • Alamofire .
  54. 54. • • Alamofire . • API . • API . .
  55. 55. • • Alamofire . • API . • WatchOS . • .
  56. 56. • Cocoa Layered Architecture • Paper - A Framework for iOS Application Development • • •

×