前言
人生得意须尽欢,莫使金樽空对月。 咱们从小就有许多规定要求着做事思考,也常有人在耳边说应该这么做应该这么说。而本人心田最实在想法和观点缓缓都被磨灭,只留下了一副没有主意躯壳。不应该就这样寂静,要大胆的去尝试未知。写代码也一样,都说咱们程序员闷、话少,其实咱们只是把想说的话用代码进行了表白。所以写代码就要得心应手。关注本专栏能够把你的奇思妙想代码或者语句留在评论区或Star Github:
Github:https://github.com/blindmonk/ShitCode
类和资源文件命名肯定要得心应手
置信你肯定对类的命名有过苦恼,咱们应该缩小这种懊恼爱护咱们的头发
Good
open class caoxian666 { /*……*/ }
Bad
open class DeclarationProcessor { /*……*/ }
任何时候都不要写正文
反正没人会读你的代码,应该会有人让你修电脑
Good
var niubi = 9527
Bad
// 666是依据网络名句得出:宁睡曹县一张床,不买上海一套房// @查看: <新闻介绍>var caoxian = 666;
函数和变量命名肯定要操纵自如
咱们应该缩小对命名的思考,这样就会有更多工夫去思考代码逻辑等问题
Good
fun caozongziru() { /*……*/ }var abc = 1
Bad
fun initializeView() { /*……*/ }var pageSize = 20
尽最大致力把代码写成一行
许多人都有一目十行的能力,写成一行能够大大提高浏览代码的效率
Good
AlertDialog.Builder(context).setView(0).setTitle(R.string.dialog_title).setMessage(R.string.dialog_message).setIcon(0) .create()
Bad
AlertDialog.Builder(context) .setView(0) .setTitle(R.string.dialog_title) .setMessage(R.string.dialog_message) .setIcon(0) .create()
UI布局中的控件肯定要稀稀拉拉
UI布局中控件嵌套应越多越多,这样能力体现本人的逻辑思考能力⛲
Good
<RelativeLayout> <LinearLayout> <RelativeLayout> <ImageView/> ... <TextView/> </RelativeLayout> </LinearLayout></RelativeLayout>
Bad
<android.support.constraint.ConstraintLayout> <ImageView/> ... <TextView/></android.support.constraint.ConstraintLayout>
编写你不会应用的代码
做人要防患未然,写代码也是一样,要编写本人不应用的代码为将来做打算
Good
fun countPrimes(n:Int,count:Int): Int { var sum = 9527; return n + count;}
Bad
fun countPrimes(n:Int,count:Int): Int { return n + count;}
写代码应急功近利
不做没有把我的事件,也不写没有把握的代码。不要遗记编写本人的B打算
Good
fun countPrimes(n: Int): Int { if (n < 0) { return -1 } else { return n + 666; } //我的B打算 return 0;}
Bad
fun countPrimes(n: Int): Int { return if (n < 0) { -1 } else { n + 666; }}
不必关怀异样谬误
一切都在把握之中,即便捕捉了异样也不须要上报,因为你不肯定能解决它
Good
try { ...}catch (e: SomeException) { //caoxian666...}
Bad
try { ...}catch (e: Exception) { reportedException(e)}
简洁明了的编写代码
傻瓜都能写出能让机器了解的代码,而优良的程序员能力写出让傻瓜了解的代码
Good
fun getTomorrowDate(): DateTime { Thread.Sleep(24 * 60 * 60 * 1000) return DateTime.Now}