同时编写调试和生产代码的最佳做法是什么?

时间:2018-04-17 05:25:52

标签: android swift debugging

我开发iOS应用程序并立即使用swift和Xcode。当我使用测试代码进行调试时,我经常这样写。

//test
label.backgroundColor = UIColor.red
//set bicolor
label.backgroundColor = UIColor.clear

如果是测试模式(发布应用程序之前),我想将backgroundColor设置为红色。当我将应用程序提交到商店时,将backgroundColor设置为红色的测试代码将被注释掉,并且backgroundColor将被设置为清除。

同时编写调试和生产代码的最佳做法是什么?是不是好的做法?

4 个答案:

答案 0 :(得分:4)

你可以做的就是开发

label.backgroundColor = UIColor.clear
#if DEVELOPMENT
label.backgroundColor = UIColor.red
#endif

label.backgroundColor = UIColor.red
#if RELEASE
label.background = UIColor.clear
#endif

答案 1 :(得分:2)

快速提供3个 #pragma_mark 与Objective-C相同:

  1. // MARK: - write your text here

  2. // TODO: - write your text here

  3. // FIXME: - write your text here

  4. 您可以使用-添加分隔线。

答案 2 :(得分:2)

使用Swift标志DEBUG和RELEASE,您可以分离DEBUG和RELEASE的代码

https://kitefaster.com/2016/01/23/how-to-specify-debug-and-release-flags-in-xcode-with-swift/

答案 3 :(得分:0)

在Swift中,您可以使用以下代码:

#if RELEASE
    // release only code
#else
    // debug only code
#endif

我通常在Android中编写以下方法

如果您需要一些代码用于调试和生产,可以执行以下操作,

在GlobalVariableClass中创建如下所示的全局布尔值,

public boolean debug=true

然后你可以写代码,

if(GlobalVariableClass.debug){
    //debug code
}else{
   //Production code
}

它还有助于日志数据,

If(GlobalVariableClass.debug){
   Log.e("TAG","log message");
}

因此,对于制作时间,您需要将debug中的GlobalVariableClass更改为false