Почему статические переменные считаются злом?
Я программист Java, который является новым для корпоративного мира. Недавно я разработал приложение с помощью в Groovy и Java. Весь код, который я написал, использовал довольно большое количество статики. Старшая техническая партия попросила меня сократить количество используемых статиков. Я гуглил примерно то же самое, и я нахожу, что многие программисты довольно против использования статических переменных.
Я нахожу статические переменные более удобными в использовании. И я предполагаю, что они являются также эффективно (пожалуйста, поправьте меня, если я ошибаюсь), потому что если бы мне пришлось сделать 10 000 вызовов функции в классе, я был бы рад сделать метод статическим и использовать простой Class.methodCall() на нем вместо того, чтобы загромождать память 10 000 экземпляров класса, верно?
кроме того, статика уменьшает взаимо-зависимости от других частей кода. Они могут выступать в качестве совершенных государственных держателей. Добавляя к этому, я нахожу, что статика широко реализована на некоторых языках, таких как Smalltalk и Scala. Так почему же это угнетение статики распространено среди программистов (особенно в мире Java)?
PS: пожалуйста, исправьте меня, если мои предположения о статике неверны.
Comments