On Dec 4, 2012, at 7:49 AM, Brad O'Hearne <br...@bighillsoftware.com> wrote:

> In general -- any alert that requires user attention (especially ones with 
> multiple button alternatives) can be left on the screen indefinitely by a 
> user. If you are monitoring environmental conditions (such as network, 
> server, or Internet reachability) that arise, it is always possible that such 
> an event that would necessarily need to supersede the displayed alert, as the 
> global event (environmental condition) might prevent the normal course of 
> action which the first alert would provide. For example: 
> 
> 1) Alert one displays:
> "This condition took place, would you like to proceed with option X or option 
> Y". (Assume both X and Y require Internet connectivity). 
> 
> 2) The app detects a loss of Internet connectivity. Neither X nor Y are now 
> appropriate until the Internet reachability issue is resolved. So what we 
> need to do is redirect the user's attention to resolving the more important 
> problem at hand, fixing the network issue, a second alert condition. 
> 
> The thing compounding the issue is that 1) and 2) occur in somewhat unrelated 
> parts of the app which necessarily do not know what each other is doing 
> (other than existing). That is actually a very good thing -- and we want to 
> somewhat keep it that way. They do have a relationship, however, in that the 
> managing entity in 2 actually controls the entity in 1 (though agnostic to 
> its function). So the problem was resolved by having the managing entity in 2 
> issue a lifecycle message to the entity in 1, so that it could behave 
> accordingly.
> 
> Its working, but in any such architecture (an OS is a good example) there is 
> the constant tension between managing resources globally vs. separating and 
> hiding concerns within components.  

Yeah, you're walking that fine line between “framework” and “application” that 
requires such attention to balance.

We use a lot of frameworks in our products. I constantly have to remind myself 
that the framework is not my product; the app is, and that might mean severely 
reining in the scope and generality of the supporting framework.

--Kyle Sluder
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to