Create Best Practices and FAQ.md closes #405#478
Create Best Practices and FAQ.md closes #405#478jessesquires wants to merge 8 commits intomasterfrom
Conversation
|
@jessesquires updated the pull request - view changes |
|
@jessesquires updated the pull request - view changes |
|
@jessesquires updated the pull request - view changes |
|
Ok. I think I've got everything. |
|
@jessesquires updated the pull request - view changes |
|
@jessesquires updated the pull request - view changes |
|
|
||
| - Make sure your [`-diffIdentifier`](https://instagram.github.io/IGListKit/Protocols/IGListDiffable.html#/c:objc(pl)IGListDiffable(im)diffIdentifier) implementation returns a **unique identifier** for each object. | ||
|
|
||
| - We highly recommend using single-item sections when possible. That is, each section only has 1 cell. Each section controller manages a single model and a single cell. This gives you the greatest amount of flexibility, modularity, and re-use for your components. |
There was a problem hiding this comment.
Do we want to recommend this? I think your point is not to use a single section controller w/ tons of variable items, right? We probably don't want to discourage multi-cell section controllers in general.
There was a problem hiding this comment.
👍
Right -- I'll remove, unless you have a suggestion on wording here
|
|
||
| - Core Data ([#460](https://github.com/Instagram/IGListKit/issues/460), [#461](https://github.com/Instagram/IGListKit/issues/461)) | ||
| - AsyncDisplayKit ([AsyncDisplayKit/#2942](https://github.com/facebook/AsyncDisplayKit/pull/2942)) | ||
| - ComponentKit |
There was a problem hiding this comment.
There was a problem hiding this comment.
I was looking for that 😄
| - AsyncDisplayKit ([AsyncDisplayKit/#2942](https://github.com/facebook/AsyncDisplayKit/pull/2942)) | ||
| - ComponentKit | ||
| - React Native | ||
| - Reactive Cocoa |
|
|
||
| **Does `IGListKit` work with `UITableView`?** | ||
|
|
||
| No, but you can install the [diffing subspec via CocoaPods]((https://instagram.github.io/IGListKit/installation.html)). |
There was a problem hiding this comment.
Is the markdown messed up here? The link doesn't show up in the preview
|
@jessesquires updated the pull request - view changes |
|
|
||
| - Make sure your [`-diffIdentifier`](https://instagram.github.io/IGListKit/Protocols/IGListDiffable.html#/c:objc(pl)IGListDiffable(im)diffIdentifier) implementation returns a **unique identifier** for each object. | ||
|
|
||
| - We highly recommend using single-item sections when possible. That is, each section controller manages a single model (which may have one or multiple cells). This gives you the greatest amount of flexibility, modularity, and re-use for your components. |
|
Updated. |
Sherlouk
left a comment
There was a problem hiding this comment.
Looks good to me!
May it be an idea to add a link to this in the issue template? "I have searched existing issues, and the FAQs and this is not a duplicate"
Random question but is isKindOfClass the same as doing (in Swift) if sectionController is DemoSectionController { ...
+1
Yep! We should probably add the Swift equivalent |
rnystrom
left a comment
There was a problem hiding this comment.
@jessesquires thanks for doing this!
|
@jessesquires updated the pull request - view changes |
|
@jessesquires has imported this pull request. If you are a Facebook employee, you can view this diff on Phabricator. |
Changes in this pull request
Initial best practices / FAQ. Closes #405.