What is Hungarian notation?

This is a recommends products dialog
Top Suggestions
Starting at
View All >
Language
French
English
ไทย
German
繁體中文
Country
Hi
All
Sign In / Create Account
language Selector,${0} is Selected
Register & Shop at Lenovo Pro
Register at Education Store

Pro Tier Benefits

• Save up to an extra 5% on Think everyday pricing
• Spend SG$10,000, advance to Plus Tier with increased benefits

Plus Tier Benefits

• Save up to an extra 8% on Think everyday pricing
• Spend SG$50,000, advance for free to Elite Tier with increased benefits
• Take advantage of flexible payment options with TruScale Device as a Service.

Elite Tier Benefits

• Save up to an extra 12% on Think everyday pricing
• Take advantage of flexible payment options with
TruScale Device as a Service.
Reseller Benefits
• Access to Lenovo's full product portfolio
• Configure and Purchase at prices better than Lenovo.com
View All Details >
more to reach
PRO Plus
PRO Elite
Congratulations, you have reached Elite Status!
Pro for Business
Delete icon Remove icon Add icon Reload icon
TEMPORARILY UNAVAILABLE
DISCONTINUED
Temporary Unavailable
Cooming Soon!
. Additional units will be charged at the non-eCoupon price. Purchase additional now
We're sorry, the maximum quantity you are able to buy at this amazing eCoupon price is
Sign in or Create an Account to Save Your Cart!
Sign in or Create an Account to Join Rewards
View Cart
Wow, your cart is empty!
Remove
item(s) in cart
Fill it in with great deals
Some items in your cart are no longer available. Please visit cart for more details.
has been deleted
Please review your cart as items have changed.
of
Contains Add-ons
Proceed to Checkout
Yes
No
Popular Searches
What are you looking for today ?
Trending
Recent Searches
Hamburger Menu
{"arrowColor":"#000000","backgroundColor":"#e6f4fa","sideMsg":"","data":[{"pcInfo":"","mAndTabInfo":"","bannerInfo":{"t_id":"Pagef19edc5c-b75c-4d6b-b793-542c263ea55e","language":{"en_sg":"%3Cp%3E%3Cstrong%20style%3D%22text-wrap-mode%3A%20wrap%3B%22%3E%3C%2Fstrong%3E%3C%2Fp%3E%3Cp%3E%3Cstrong%3EPerfect%2012.12%20Deals%20%7C%20Get%20up%20to%2065%25%20off%20PCs%20%2B%205-10%25%20back%20in%20reward%20points%20for%20a%20limited%20time%26nbsp%3B%7C%3C%2Fstrong%3E%3Cstrong%3E%26nbsp%3B%3Ca%20href%3D%22%2Fd%2Fdeals%2Fonline-exclusive%2F%3FipromoID%3Dhellobar_01%22%20target%3D%22_self%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%22%3EShop%20Now%3C%2Fa%3E%3C%2Fstrong%3E%3C%2Fp%3E","en":""},"id":"Pagef19edc5c-b75c-4d6b-b793-542c263ea55e"},"gInfo":""},{"pcInfo":"","mAndTabInfo":"","bannerInfo":{"t_id":"Page8b654d1a-e82d-460b-b09e-3a202fcbe4fe","language":{"en_sg":"%3Cp%3E%3Cstrong%20style%3D%22text-wrap-mode%3A%20wrap%3B%22%3EThinkPad%20X1%20Carbon%20Gen%2013%20AI%20PC%20%7C%20The%20all-new%20ThinkPad%20X1%20Carbon%20Gen%2013%20AI%20PC%20is%20available%20now.%3Cspan%20style%3D%22text-wrap-style%3A%20initial%3B%22%3E%26nbsp%3B%26nbsp%3B%3C%2Fspan%3E%3C%2Fstrong%3E%3Ca%20href%3D%22%2Fp%2Flaptops%2Fthinkpad%2Fthinkpadx1%2Fthinkpad-x1-carbon-gen-13-aura-edition-14-inch-intel%2Flen101t0108%3FipromoID%3Dhellobar_02_ThinkPad_X1_Carbon_Gen_13%22%20target%3D%22_blank%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20text-decoration%3A%20underline%3B%22%3E%3Cspan%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%22%3E%3Cstrong%3EPre-order%20Now%3C%2Fstrong%3E%3C%2Fspan%3E%3C%2Fa%3E%3C%2Fp%3E","en":""},"id":"Page8b654d1a-e82d-460b-b09e-3a202fcbe4fe"},"gInfo":""},{"pcInfo":"","mAndTabInfo":"","bannerInfo":{"t_id":"Paged471220c-6dad-4def-aa02-2ff1a2a37582","language":{"en_sg":"%3Cp%20style%3D%22text-wrap%3A%20wrap%3B%22%3E%3Cstrong%3E%3C%2Fstrong%3E%3Cstrong%3ELenovo%20Pro%20for%20business%3C%2Fstrong%3E%20%7C%20FREE%20membership%2C%20exclusive%20member%20discounts%2C%20Purchase%20PC%20%26amp%3B%20get%2020%25%20off%20Accessories%20%26nbsp%3B%26nbsp%3B%3C%2Fp%3E%3Cp%20style%3D%22text-wrap%3A%20wrap%3B%22%3E%3Ca%20href%3D%22https%3A%2F%2Faccount.lenovo.com%2Fsg%2Flenovopro%2Fen%2Fsmbaccount%2Fgatekeeper%2Fshowpage%3FipromoID%3Dhellobar_03_lpro%22%20target%3D%22_self%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20text-decoration%3A%20underline%3B%22%3E%3Cspan%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%22%3E%3Cstrong%3EJoin%20Now%3C%2Fstrong%3E%3C%2Fspan%3E%3C%2Fa%3E%3C%2Fp%3E","en":""},"id":"Paged471220c-6dad-4def-aa02-2ff1a2a37582"},"gInfo":""},{"pcInfo":"","mAndTabInfo":"","bannerInfo":{"t_id":"Pageb124d3b0-80c0-4abb-99ed-fdc70d2d4062","language":{"en_sg":"%3Cp%20style%3D%22text-wrap-mode%3A%20wrap%3B%22%3E%3Cstrong%3EBack%20to%20School%3C%2Fstrong%3E%20%7C%20Take%20an%20EXTRA%2010%25%20off%20with%20code%20SGBTS%20on%20Lenovo%20Education%20Store.%20Register%20now%20to%20unlock%20%24150%20welcome%20discount.%3C%2Fp%3E%3Cp%20style%3D%22text-wrap-mode%3A%20wrap%3B%22%3E%3Ca%20href%3D%22https%3A%2F%2Fwww.lenovo.com%2Fsg%2Fedu%2Fsgedu%2Fen%2Flogin%2Fedu%2Findex.html%3FipromoID%3Dhellobar_04_edu_login%22%20target%3D%22_self%22%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%20text-decoration%3A%20underline%3B%22%3E%3Cspan%20style%3D%22color%3A%20rgb(0%2C%200%2C%200)%3B%22%3E%3Cstrong%3EJoin%20Lenovo%20Education%3C%2Fstrong%3E%3C%2Fspan%3E%3C%2Fa%3E%3C%2Fp%3E","en":""},"id":"Pageb124d3b0-80c0-4abb-99ed-fdc70d2d4062"},"gInfo":""}],"autoRun":true,"displayTerminal":"pc,tablet,mobile"}


What is Hungarian notation?

Hungarian notation is a naming convention used in programming to provide meaningful and descriptive names to variables. The main idea behind Hungarian notation is to prefix variable names with one or more lowercase letters that represent the data type or purpose of the variable. This convention helps programmers understand the meaning and usage of variables without having to look at their declarations.

Why is Hungarian notation used?

Hungarian notation is used to improve code readability and maintainability. By using a consistent naming convention, it becomes easier for developers to understand the purpose and usage of variables, functions, and other program elements. It also helps prevent common programming errors, such as using a variable of one type in an incompatible context. Hungarian notation provides visual cues about the data types and helps identify potential issues before they cause runtime errors.

How does Hungarian notation work?

Hungarian notation works by adding a prefix to variable names that represents their data type or purpose. For example, a string variable can be prefixed with "str", an integer variable with "n", a boolean variable with "b", and so on. This prefix is typically followed by a descriptive name that indicates the purpose of the variable. For instance, a string variable that stores a user's name could be named "strUserName".

Can Hungarian notation be used in all programming languages?

While Hungarian notation can be used in any programming language, its popularity has declined in recent years. Many modern programming languages have strong type systems and expressive syntax that make the use of prefixes unnecessary. Additionally, most code editors and integrated development environments provide features like syntax highlighting and tooltips that can effectively convey information about variables' data types without the need for explicit prefixes.

Would using Hungarian notation improve my code quality?

Using Hungarian notation alone does not guarantee improved code quality. While it can provide some benefits, such as better readability and reduced likelihood of certain programming errors, there are many other aspects to consider when writing high-quality code. Following best practices, writing modular and maintainable code, and adhering to established coding conventions are equally important factors for improving code quality.

Does Hungarian notation affect program performance?

No, Hungarian notation does not affect program performance. It is purely a naming convention and has no impact on the execution speed or memory usage of a program. Using prefixes in variable names is resolved by the compiler or interpreter during the compilation or interpretation process and does not affect the program's runtime behavior.

When should I consider using Hungarian notation?

You should consider using Hungarian notation if you are working on a project that follows a specific coding style guide or if you are collaborating with other developers who are accustomed to using this convention. In some legacy codebases, Hungarian notation may already be prevalent, and it may be more practical to stick with the existing naming convention rather than introducing inconsistency.

Can I use Hungarian notation alongside other naming conventions?

Yes, you can use Hungarian notation alongside other naming conventions, although it is generally recommended to stick to a single naming convention within a codebase for consistency. If you are working on a project that already uses Hungarian notation, it's best to follow that convention throughout the code. However, if you are starting a new project or working on an open-source project, it's advisable to choose a naming convention that is widely accepted and understood by the programming community.

Does Hungarian notation apply to all types of variables?

Hungarian notation can be applied to all types of variables, including primitive data types like integers, strings, booleans, as well as complex data structures like arrays and objects. However, the use of Hungarian notation for complex data structures can become more challenging and may require longer prefixes to adequately describe the structure and purpose of the variable.

Does Hungarian notation improve code documentation?

Yes, Hungarian notation can serve as a form of self-documentation within the code. By using descriptive prefixes, it becomes easier for developers to understand the intended usage and data type of variables without having to refer to external documentation. This can be especially helpful when working with large code bases or collaborating with other developers.

Are there any programming languages that encourage the use of Hungarian notation?

While there are no programming languages that explicitly enforce the use of Hungarian notation, some languages have conventions or coding style guides that recommend its use. For example, older versions of the Microsoft Visual Basic programming language promoted the use of Hungarian notation. However, it's important to note that coding conventions can vary between programming languages and communities.

Can Hungarian notation be helpful in large codebases?

Hungarian notation can be helpful in large codebases, particularly when multiple developers are working on the same code. The use of consistent naming conventions, such as Hungarian notation, can facilitate collaboration and make it easier to understand the purpose and usage of variables across different parts of the codebase.

Can Hungarian notation be used in dynamically typed languages?

While Hungarian notation was initially popularized in statically typed languages, it can still be used in dynamically typed languages. However, the benefits may be less pronounced since the data types of variables can change at runtime.

Is Hungarian notation used in modern software development practices?

Hungarian notation is less commonly used in modern software development practices. With advancements in programming languages, integrated development environments (IDEs), and coding conventions, other naming conventions such as descriptive variable names, camel case, or Pascal case have gained more popularity.

How does Hungarian notation handle global variables?

Hungarian notation can be applied to global variables by including the appropriate prefix to indicate the variable's data type and purpose. However, it's worth noting that the use of global variables is generally discouraged in modern programming practices due to potential issues with code modularity and maintainability.

How does Hungarian notation handle null or undefined values?

Hungarian notation does not have specific prefixes for null or undefined values. In these cases, it is generally recommended to use descriptive variable names that accurately convey the intention and possible value states, rather than relying solely on prefixes.

 
 

Signup for Lenovo email notifications to receive valuable updates on products, sales, events, and more...

Sign up >
{"pageComponentDataId":"11e4f6dfl949d-48ba-a64d-1279e93b7655","pageComponentId":"11e4f6dfl949d-48ba-a64d-1279e93b7655","isAssociatedRelease":"true","pageComponentDataLangCode":"en_sg","configData":{"jumpType":"currentTab","headlineColor":"black","displayNumber":"","styleMode":"vertical","miniCardHoMode":"2","headline":"","products":[{"number":{"t_id":"len101t0102","language":{"en_sg":"len101t0102","en":""},"id":"Paged1edadc5-6986-4227-80be-072ea8113019"}},{"number":{"t_id":"len101t0104","language":{"en_sg":"len101t0104","en":""},"id":"Pageda634bc0-3f90-4bca-aa7a-9371254a72b2"}},{"number":{"t_id":"len101t0081","language":{"en_sg":"len101t0081","en":""},"id":"Page2cf609c2-51b2-40f0-87bc-1cb279e1dfbc"}},{"number":{"t_id":"len101g0036","language":{"en_sg":"len101g0036","en":""},"id":"Page64406973-2b77-47b7-b687-ef52b65d2ad3"}}]},"urlPrefix":"AAAAAAALAAAC","title":"glossary-right-blue-boxes-fragment","pageId":"c2ae7f91-5071-4e5e-a121-d725e8d772ab","urlEdit":0,"uri":"/FragmentDirectory/glossary/glossary-right-blue-boxes-fragment.frag","pageComponentUuid":"11e4f6dfl949d-48ba-a64d-1279e93b7655"}
coming coming
Starting at
List Price
Est Value
Web Price:
List Price
Est Value (Estimated Value)
List Price is Lenovo’s estimate of product value based on the industry data, including the prices at which first and third-party retailers and etailers have offered or valued the same or comparable products. Third-party reseller data may not be based on actual sales.
Estimated value is Lenovo’s estimate of product value based on industry data, including the prices at which Lenovo and/or third-party retailers and e-tailers have offered or valued the same or comparable products. Third-party data may not be based on actual sales.
Learn More
See More
See Less
View {0} Model
View {0} Models
shipping.options.for.{0}
Part Number:
Features
See More
See Less
compare
Added!
Great choice!
You may compare up to 4 products per product category (laptops, desktops, etc). Please de-select one to add another.
View Your Comparisons
Add To Cart
Add To Cart
We're sorry,
Products are temporarily unavailable.
Continue Shopping
Learn More
Coming Soon
Featured Product
Featured Products
Oops! No results found. Visit the categories above to find your product.
Save
open in new tab
© 2024 Lenovo. All rights reserved.
© {year} Lenovo. All rights reserved.
Compare  ()
x