java是否具有C#中的“Debug”和“Release”构建模式?
Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用
在接触到的开发语言中,基本上都有debug和release构建模式。debug是调试模式运行,可以让开发者断点到程序内部,查看实际是内部数据,的实际执行过程。debug有利于开发人员分析问题,解决问题。release是发布模式。可以为开发,测试提供真实发布的程序。以便在实际应用中发现问题。 debug模式下,测试系统性能是不准确的,release模式的运行性能要远远高于debug模式。
Java工程师坚持log输出信息调试,是不会用debug吗?
碰到多线程场景你就知道为什么了,很多人说线上没办法调试,其实也是可以的,可以开启远程调试,但是真正的问题很可能是数据问题,并发问题,性能问题,不是随便调试可以定位的
不是所有bug都需要debug调试的,有些问题,如果日志打印的完备,未必需要debug来调试,另外debug调试大多建立在本机开发而且重启很容易的情况,如果是部署到环境上了,用debug可能也不方便
看场景,还有应用端!!
服务端生产环境让你debug??如果你说的是前端安卓随意。。。。本地连线上服务端,随便调!!!
后台服务端,如果是处理线上问题,往往问题只能从生产环境日志复盘,然后本地复现再debug解决问题。
这跟是否会不会debug没关系,别说什么远程debug别秀技,把生产玩崩。。。这是一个大家约定的安全处理方案。。。。。。。。。做好日志收集很重要。
非特殊情况,本地无法复现bug,才会考虑在环境上开启debug模式调试问题,log日志方便排查问题,毕竟环境上不会一直启用 debug模式,万一出问题,没有log日志,排查也费事,没法快速准确的定位问题