Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
Name resolution, in the context of programming, is the linking of identifiers within the programming environment to the actual program components that they represent. These names may be stored in lookup tables or as part of a namespace hierarchy. The purpose of the naming is to provide a shorthand reference to coded material. The process may be used to call a function, variable or other component from a repository of named entities.
The name of a programming component can be the arbitrary choice of the programmer, or it could be something with specific syntax assigned by an algorithm of the programming language. The namespace of an identifier provides the context. The same name in two different namespaces may refer to totally different programming components. The scope of a variable determines where it can be available for use within a program.
Names assigned to subroutines allow them to be called up easily without inserting the entire code. The ability to access a subroutine using a name is one of the greatest advantages of programming.
Name resolution can take place when the program is compiled or at runtime. The first is called static name resolution, and the other is called dynamic name resolution.