Skip to main content

Questions tagged [constants]

0 votes
1 answer
1k views

Should private static constants be in declaration (header) or defintion (source)?

Given a class which has certain private, constants (e.g., configuration), should these (A) be included in the declaration of the class (in the private section) or (B) should it be "hidden" ...
Patrick Wright's user avatar
18 votes
6 answers
5k views

Is setRGBColor(32,128,192) a valid use of magic number?

According to When is a number a magic number?, I know magic number should not exists, so I know the following code about creating a Label from some UI framework and set the color RGB needs to be ...
wcminipgasker2023's user avatar
1 vote
2 answers
3k views

How to deal with constants that are shared between multiple packages?

I'm looking at creating my first packages to clean up my codebase. Below is a very simplified version of my current project structure: my_project/ |-database.py |-app_1.py |-app_2.py |-constants.py ...
Jossy's user avatar
  • 311
2 votes
2 answers
548 views

What is the best way to keep some constant complex data structures in a C++ code?

As implied by the title of the Q, I have a few entities and need to keep them as constant objects in a C++ project. Each entity contains very complex data structures (lists of enums, maps of maps, etc....
TonySalimi's user avatar
1 vote
1 answer
109 views

Term for a map of constants [closed]

Considering there's a map of string constants, most commonly with a key and a value being equal, e.g. in TypeScript: const itemTypes = { FOO_BAR: 'FOO_BAR', BAZ_QUX: 'BAZ_QUX', } as const; They ...
Estus Flask's user avatar
3 votes
3 answers
4k views

Define "constants" at the global or function scope?

I often define variables that will never change, i.e. constants, at the top of a script/module. But recently I've been wondering if it makes sense to define them at the function scope level if they ...
pstatix's user avatar
  • 1,047
144 votes
3 answers
34k views

Where do "magic" hashing constants like 0x9e3779b9 and 0x9e3779b1 come from?

In code dealing with hash tables, I often find the constant 0x9e3779b9 or sometimes 0x9e3779b1. For example hash = n * 0x9e3779b1 >>> 24 Why is this particular value used?
bkgs's user avatar
  • 1,023
0 votes
1 answer
178 views

Visibility of constants

Should constants of my class only be public if I know that they will be used from their users or doesn't it hurt to make all of my constants public per se? Is not exposing all constants cleaner?
Kai Neuwerth's user avatar
1 vote
1 answer
707 views

Should I use accessors or public static fields for global constants?

I have to work on some code that was CAST-audited. The report says that it is bad in Java to use public static and that accessors should be preferred. That is also what I was taught at school. The ...
The Once-ler's user avatar
4 votes
4 answers
1k views

Is a constant name related to its current value an anti-pattern? [closed]

For example, suppose I have a string constant like this: const TITLEBAR_MESSAGE="Welcome back, %USERNAME%!"; I think it is more readable when it is named as const WELCOME_BACK_USERNAME="Welcome ...
ocomfd's user avatar
  • 5,760
0 votes
2 answers
621 views

Referencing Database Primary Keys from Codebase

I don't have a lot of experience with these kind of issues, but I feel I need to consult on this issue. The current codebase I'm working on is using what I consider to be a questionable technique to ...
Ashton Spina's user avatar
3 votes
5 answers
2k views

I feel like these constants should be in a different class?

I have a static class called RenderingUtilities that houses several useful methods and constants. Some of these constants are related to the Earth as an object such as the Earth's radius. I believe ...
Taco's user avatar
  • 1,175
3 votes
1 answer
120 views

Should I replace a constant with static methods, if that constant usually 'cooperate' with a specific operator?

For example, to convert between g and kg, I have a constant 1000: public static final float G_TO_KG=1000; . . . this.result = someResult*1000; I found G_TO_KG always bind to operator '*'. So my ...
ocomfd's user avatar
  • 5,760
2 votes
3 answers
370 views

When defining constants, which is more important? Easier to find? Or narrower scope?

For example, consider I have constants VOL_MIN and VOL_MAX, which is used inside 1 function only: public void setVolume(int val){ final int VOL_MIN = 1; final int VOL_MAX = 10; val=Math....
ocomfd's user avatar
  • 5,760
1 vote
1 answer
243 views

Should I make constant for values of three choices (trivalent/ternary)?

For two choices there is boolean. In my case, I have positive, negative, and neutral which are three choices and cannot be represented by boolean. I've see there's method Math.signum(x) in Java which ...
fikr4n's user avatar
  • 154

15 30 50 per page