It’s a fact that applications spend 80 percent of their time executing 20 percent of their code. Some even claim that the ratio is higher: 90-10. Usually, programmers can’t assess the performance overhead of individual language constructs. For example: what’s the cost of an if statement? How many CPU cycles does a constructor call take? Therefore, if your application’s performance needs to be optimized, don’t rely on a hunch or lucky guesses?most likely, the code components you’re trying to optimize impose small performance overhead anyway. Instead, use a dedicated profiler to detect the critical parts of your code and focus your efforts on optimizing these critical parts.