开发者素质基础
# 素养
对于有些小伙伴来说,Androlua是你们接触的第一个开发工具,那么如何使用优美的lua写出规范的代码,提升自己写代码的气质捏?
# 📜命名规范
# 常见命名规范
# 小驼峰式
第一个单词首字母小写,后面其他单词首字母大写
- 例子
myAge=18
myName[10]
dianaLove="me"
# 大驼峰式
每个单词的第一个字母都要大写。
- 例子
MyAge=3
MyName[10]
DianaLove="me"
# 下划线法
可以结合其他方法使用
- 例子
_My_Age=3
_My_Name[10]
_Diana_Love="me"
# 匈牙利法
早期的规范,由微软的一个匈牙利人发明的。确定变量的类型,系统却又琐碎。
要求前缀字母用变量类型的缩写,其余部分用变量的英文或英文的缩写,单词第一个字母大写。
- 例子
--注意类型
iMyAge=3 --int
cMyName[10] --char
sDiana_Love="me" --str
匈牙利法中类型有哪些?
点击查看
a 数组(Array)
b 布尔值(Boolean)
by 字节(Byte)
c 有符号字符(Char)
cb 无符号字符(Char Byte,并没有神马人用的)
cr 颜色参考值(Color Ref)
cx,cy 坐标差(长度 Short Int)
dw 双字(Double Word)
fn 函数(Function)
h Handle(句柄)
i 整形(Int)
l 长整型(Long Int)
lp 长指针(Long Pointer)
m_ 类成员(Class Member)
n 短整型(Short Int)
np 近程指针(Near Pointer)
p 指针(Pointer)
s 字符串(String)
sz 以 Null 做结尾的字符串型(String with Zero End)
w 字(Word)
# 📚真正的学习Lua
# 不要习惯于当CV工程师
理由很简单,如果你习惯于依赖示例代码,而不去真正研究这门语言本身或你复制的代码的每一行,你就不能扩展,不能提升,不能写出属于自己的项目,不能自己产出什么东西,永远被别人牵着走。
# 要有一个美的追求
有些人写的APP实在是不能入眼的三流APP,比如XX影视什么的。
人总是追求美的。一个好的独立开发者,
不仅要会写代码,还要懂配色,设计,运营,开发素养。
如果你现在写以下APP,你有必要去学习以上内容。
五颜六色杀马特APP
逻辑奇特,胁迫用户
乱开目录,完全不按照绿色规范的流程
工程结构和代码逻辑稀烂,难以交流
# 规范开源与提问
要开源就不要加密源码...详见下文话题“开源规范”
提问详见下文"社区交流素质"
# 🌏社区交流素质
# 如何提问才能更容易收到大佬的帮助
有些人进群就求助,也不附上截图或者错误信息,描述还不够清楚,每次看到这种小白,大佬也爱莫能助。
- 大纲
点击查看
你可能曾经试过向大牛提问,但是这些提问往往石沉大海,于是你就纳闷了,这些大牛们平时在网上看都性格好好和蔼可亲的样子,怎么一向他们提问变得那么冷漠了?反差实在是太大了。
其实,出现这样的情况,往往不是对方耍大牌,而是你提问的方式错了。所以这篇文章让大家了解几个原则,让你更好地提问,并获得高回复率。🎓
# 原则一、向适当的人提问适当的问题。
大牛们喜欢艰巨的任务和激发思考的好问题。如果你提的问题在百度知道都可以找到答案,就莫怪他们鄙视你了,你也应该反省一下,你自己为什么那么懒?!这些懒人们在高手眼中就像是蛀虫一样,本来大牛们的时间就不多,与其忽视你的傻问题,不如花时间去回答其他更有意义的问题。
# 原则二、提问前先搜一搜。
将你的问题放进搜索引擎过滤一遍,这其实不是什么难事,事实证明,90%的问题都可以用搜索引擎解决了,百度不行,用Google,Google不行用知乎。
什么?怎么搜索?!
这里刚好有一篇《十大高明的Google搜索技巧》,拿去用吧。
什么?链接在哪里?!
看原则二!
# 原则三、提问前先试试自己解决。
如果你的问题在网络上找不到答案,你也需要自行思考试图解决,解决不了,再向大牛们提问,大牛们喜欢看勤于思考,喜欢自己动手的人,不要以为你可以随便地忽悠大牛,大牛们的经验比你丰富,一眼就可以看得出你对待问题的态度,所以,认真地思考,准备好你的问题。
# 原则四、准确地描述问题。
问题的描述应该包含以下内容:
- 清晰的细节;
- 问题发生的背景;
- 提问前做过的调查研究及对其的理解;
- 提问前为确定问题而采取的诊断步骤;
注意:千万不要用什么「跪求」,「在线等」,「紧急」等之类哗众取宠的词语来吸引大牛的注意,在大牛们看来,这些问题根本不值得去回答。
# 原则五、问题解决后向大牛汇报一下结果。
别的不说,别人帮你解决了问题,你得向别人说声谢谢吧,这是最基本的礼节。
如果你厚道的话,也可以将解决问题的过程写下来,让以后有问题的人不要重蹈覆辙。这个举动不仅是在总结经验,而且是在为自己攒人品,大牛们看到你的总结会欣赏你的作为,以后就更加喜欢回答你的问题,说不定你以后还有机会和大牛们吃吃饭呢。
好吧,就说到这里,感谢Eric S. Raymond,感谢知乎,感谢搜索引擎们。
如果你能按以上的五个原则提问,这个世界真的会少很多的噪音,也少了很多抱怨,算是为人类造福了,
最后,祝大家能够提出好问题,并得到高回复率。
(题图:月色 by 清溪) https://zhuanlan.zhihu.com/p/19779979
# 📦开源规范
# 为何需要开源?
- 锻炼编程能力。
- 提高自己的社区知名度。项目的受欢迎程度让你在开源社区出名!
- 锻炼运营能力
- 极客精神。 在IT界,受欢迎开源项目的负责人都很“牛”
- 贡献社区。造东西给大家用,互相回馈。
# 什么样的项目开源会遇冷
- 模仿的项目
- 没人需要的项目
- 重复造的轮子(而且没有特色)
# 开源一个项目需要?
- 源码
- 介绍文档&使用手册
- 如何助力开发的帮助文档
- 允许他人贡献代码
- 问题,公开的issue(不是私聊)
- 项目现存问题
- TODO清单和预期计划
# 怎样开源一个项目?
注册一个 github&gitee 账号去开源,而且不推荐改名字,注册账号时请慎重考虑。
https://gitee.com/
https://github.com/
# 如何规范开源项目?
# 规范版本号
版本号定义为 0.0.1
。以后我们每次更新,版本号都不一样。
版本号分三段,分别为:
- 一,重构版本
- 二,重大功能改进
- 三,小升级或者 bug 修复
TIPS:0.x.x
可以认为是非正式版本、测试版。
而 1.x.x
开始,是正式发布的版本。
# 规范代码
结构,文件名、变量名、函数名、类名等等,不能随随便便改!
当你的开源项目被贡献时,作为开源合作者,应该去检查代码合不合理、规范等等,合并后产生什么影响。
# 通晓开源协议
知名度较高的开源规范 (opens new window)分为五种(BSD, Apache, GPL, LGPL, MIT),它作为行业通用认知,侵权可以诉讼.
开源协议详细内容 https://zhuanlan.zhihu.com/p/87855729
开源协议如何选择 http://www.ruanyifeng.com/blog/2011/05/how_to_choose_free_software_licenses.html
# 如何使用开源
详见 https://www.zhihu.com/question/336820269
# 开源软件如何盈利
详见 https://zhuanlan.zhihu.com/p/133525485
一般是爱发电和打赏,或者售卖服务.