1. A computer-implemented method of loading, in computer memory, files required by a software program, the method comprising: obtaining a first list of file identifiers, each being associated with a respective file; sorting the first list based on a first attribute of each of the associated files; selecting, in sorted order, a file identifier in the sorted first list; loading the file associated with the selected file identifier; and repeating the selecting and loading steps until each file identifier in the sorted first list is selected.