Each project can contain many different components. The different components of a project can contain class modules, forms, references, and resources.
Components that contain public and private procedures and functions. Class modules are used to define custom namespaces. Within a namespace, you define the procedures used for your program and define the structures to implement custom commands and functions that can be called from AutoLISP.
Form components contain custom dialog boxes you lay out for use with your project. Forms in your project are displayed using a procedure or function, unless you build a stand-alone application. Windows forms, WPF windows, and user controls are some of the form types that can be part of a project. For this guide, forms can mean either Windows forms and WPF windows.
References are used to indicate which projects or libraries your project uses.