Technical retrospective
Chappy.InstagramFeed
Components
- InstagramFeedView
-
InstagramFeedPresenter
-
InstagramFeedCoordinator
- InstagramFeedService
Dependencies
- user ID
-
clientSource:
-
myprofile/encounters/otherprofile
-
-
MOXUserLoader
- FeaturesService
- SharedUserCache
- NotificationService
- VerificationService (new)
Transport Entities
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103621/pasted-from-clipboard.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103623/pasted-from-clipboard.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103630/pasted-from-clipboard.png)
Ownership and layers
{ InstagramFeedService , VerificationService, SharedUserCache, etc }
____________________________________
InstagramFeedCoordinator
__________________^__________________
InstagramFeedPresenter
__________________^__________________
InstagramFeedView
Legend:
Layer: ____________________________________
Ownership: ^
InstagramFeedView
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103708/pasted-from-clipboard.png)
InstagramFeedPresenter
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103711/pasted-from-clipboard.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103721/pasted-from-clipboard.png)
ViewModel computation
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103725/pasted-from-clipboard.png)
InstagramFeedCoordinator
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103733/pasted-from-clipboard.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103746/pasted-from-clipboard.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103747/pasted-from-clipboard.png)
FeedState computation
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103773/pasted-from-clipboard.png)
Verification Service
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103792/pasted-from-clipboard.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103797/pasted-from-clipboard.png)
ExternalProviderConnector
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103894/pasted-from-clipboard.png)
ExternalProviderConnector
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103902/pasted-from-clipboard.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103908/pasted-from-clipboard.png)
Solved problems
BPDPhotoCollection bug
- Saves only the last album coming from the SRV
- Fixed version BPDFixedPhotoCollection
- IOS-13740 Core team task to fix properly
BPDSharedUserCache additions
Added API:
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4106637/pasted-from-clipboard.png)
Not progressive JPEG
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4104009/pasted-from-clipboard.png)
Extending scrolling area
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4104134/pasted-from-clipboard.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4104145/pasted-from-clipboard.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4104147/pasted-from-clipboard.png)
Non fatal error tracking (asserts)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4104173/pasted-from-clipboard.png)
Non fatal error tracking (asserts)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4104165/pasted-from-clipboard.png)
HotPanel framework fixed hacked
- Added experimental mode to HP framework
- trackChildElements option is ignored (always ON)
- presenting a VC without tracking screen doesn't change current tracking screen
- Current tracking screen provider
- Fixed finding parent tracking element and screen
- ScrollScreen/ScrollElement work like a charm
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4104195/pasted-from-clipboard.png)
SnapshotTests
- FBSnapshotTestCase
- FBSnapshotsViewer
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4104256/pasted-from-clipboard.png)
self.
- Layout refactoring
- Long-lexeme-safe
- TDD
SnapshotTests
GalleryViewController
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103935/pasted-from-clipboard.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/160123/images/4103936/pasted-from-clipboard.png)
HorizontalPagedLayout
FittingCollectionViewLayout
retrochappy
By borlov
retrochappy
- 1,014