-
Notifications
You must be signed in to change notification settings - Fork 565
Code guidelines
-
Try to keep the public interfaces to classes as simple as possible—anything that can be private should be
-
Have very strict validation as part of constructors, then you can proceed confidently elsewhere.
-
Be consistent in the naming of things. e.g., it looks like "mini" and "takeover" are the names for notif types. Use those names everywhere, not "overapp", "small", "modal", etc.
-
Please always use . notation when accessing @properties on other objects, and [] when using methods
-
Internally, always use _property instead of ., unless the functionality (e.g., atomic, strong) of the property is intended
-
Please alphabetize imports and don’t put random newlines between them. Have a section for non-Mixpanel stuff, then a single, blank line, then a section for Mixpanel stuff.
-
The lib should build with both Base SDK 6 and Base SDK 7. In either case, the tests should run without errors in iPhone and iPad simulators in both iOS 6 and iOS 7.
-
The tests should include tests for garbage responses from the server
-
timeout
-
500 errors (503, 502)
-
empty, HTML and plain text response bodies
-
400 errors
-
invalid json
-
-
It should pass Analyze with no warnings/errors.
-
It should pass QA with Leaks running and show no signs of leaking.