Visual Basic provides developers with a choice between two different user interface models for their applications: the Single Document Interface (SDI) and the Multiple Document Interface (MDI). As of 2010, most applications use the SDI interface, but the MDI interface may be more appropriate for some applications.
Most applications in Windows 95 or later use a Single Document Interface. Each window of the application holds a single document, so if the user wants to open more documents with that application, he must open a new window. It's also the default mode when building an application with Visual Basic. An example of an SDI application is Windows Notepad.
Multiple Document Interfaces were more popular in versions of Windows prior to Windows 95, but they've become less common, outside of a few applications. With an MDI, each window within an application holds multiple documents, usually in sub-windows. Each time the user wants to open a new document, rather than opening a new window, the document opens within the existing window and shares it with all other open documents. An example of an MDI application is a tabbed Web browser like Firefox, where users have an option to open documents in multiple tabs within the same window.
Advantages of SDI
An SDI interface works very well with multiple monitors and multiple virtual desktops. It also allows users to switch between multiple open documents using the native Windows taskbar and task manager, rather than through special code that must be written into your application.
Advantages of MDI
MDI applications can often handle multiple documents more readily than SDI programs. For example, many MDI text editors allow the user to open multiple text files side by side in the same window, making it easy to compare and look up information from a second document while working on the first.
Stability and Performance
SDI applications tend to be more robust and bug-free than MDI applications, since a serious error with one document rarely affects the other documents within an SDI environment. For example, if one Windows Notepad document crashes, any other open copies of Notepad will usually survive the crash. On the other hand, if one Web page in Firefox causes the browser to crash, all the open Web pages die with it. Nevertheless, MDI applications tend to perform more quickly than SDI programs, since only one version of the application is loaded into memory.
- 20 of the funniest online reviews ever
- 14 Biggest lies people tell in online dating sites
- Hilarious things Google thinks you're trying to search for