(no subject)

Jul 22, 2007 13:46

Three Wrong Ideas From Computer Science - Joel on Software:There are three very major differences between accessing resources on another machine and accessing resources on the local machine:

1. Availability,
2. Latency, and
3. Reliability.

When you access another machine, there's a good chance that machine will not be available, or the network won't be available. And the speed of the network means that it's likely that the request will take a while: you might be running over a modem at 28.8kbps. Or the other machine might crash, or the network connection might go away while you are talking to the other machine (when the cat trips over the phone cord).

The answer, of course, is to do what X11 did: assume a network even when it's all on localhost.
You'll lose some of the benefit of the special case of local use, but the benefit is combining two concepts into one abstraction.
In Java, no file operations are considered safe: all I/O stuff can throw an IOException. Rather than wrapping networked file verbs with local interfaces to make it easier on the programmer, do it the other way around to make a more reliable system.

untagged

Previous post Next post
Up