Я знаю все философские аргументы против препроцессоров и макросов в Java. Я не согласен с тем, что только потому, что некоторые могут злоупотреблять языковой функцией, ее следует исключить для всех.
Я хотел бы включить макросы __FILE__
и __LINE__
в мой код Java и Scala для эффективного ведения журнала. Любое использование Exception неприемлемо из-за влияния на производительность во время выполнения. Те люди, которые утверждают, что ведение журнала можно отключить в «производственном коде», должны прислушаться к совету Брайана Кернигана:
Удаление сообщений об ошибках «теперь, когда программа работает» — это то же самое, что носить парашют на земле, но снимать его, когда вы находитесь в воздухе.
Есть ли вероятность того, что эти макросы могут попасть в язык? Если нет, есть ли способ запустить препроцессор, такой как m4, с помощью Maven?
Спасибо.