# Naming convention of variables, etc. In abap2xlsx, over time, alas, the ABAP code came to mix different [naming standards](https://github.com/abap2xlsx/abap2xlsx/issues/773). Naming standards may vary from one class to another, but one naming standards is usually correctly applied in each class. It's not possible to impose one naming standards by fixing the existing names, because clients may have developed custom programs which may already refer to them. When it's about adding a new variable, parameter or type in an existing object or method, it's embarrassing to impose one naming standards because that could be inconsistent with the variables, parameters or types which already exist at this place. Here is the chosen compromise so that to keep the ABAP code the most consistent possible everywhere: - If you fix a method, reuse its naming standards so that its code looks consistent. If this method has several naming standards, choose the most used one. - If you create an ABAP object or a method implementation, choose the names according to the below rules. - If you create an attribute, a method definition or a type in a class or interface, choose the naming standards used in its section. NB: that means, if you need to create and maintain several objects to fix one issue or to make one pull request, you may end with using different naming standards. Rules for creating an ABAP object or a method implementation (mix of Hungarian notation (prefixes) and [Clean Code](https://github.com/SAP/styleguides/blob/main/clean-abap/CleanABAP.md#avoid-encodings-esp-hungarian-notation-and-prefixes)): - Method names - clean code - Local class names - LCL_ - LCX_ for the only exception class - Types - elementary: TV_ - structure: TS_ - table: TT_ - Instance and class Attributes (not constants) - clean code - constant and global attributes - C_ - Local variables - elementary: LV_ - object: LO_ - structure: LS_ - table: LT_ - data reference: LR_ - Local constants - LC_ - Field symbols - elementary: