更新时间:2019年07月26日 13时52分50秒 来源:黑马程序员论坛
代码风格有很多种,Windows 和Linux都有自己主流的代码风格,每个团队、每个公司也可能有自己的代码风格,争论哪种风格好哪种风格坏根本没有什么意义。有助于其他程序员理解的代码风格都是可以接受的,因为遵循特定代码风格的目的就是为了便于交流。 1 命名要展示对象的功能(标识符) 作用 给包,类,方法,变量等起名字 组成规则 由字符,下划线_,美元符$组成(包括英文大小写字母,中文字符,数字字符等)。 注意事项: 不能以数字开头 不能是Java中的关键字 命名原则: 尽量做到见名知意 1.1命名规则 a工程名 工程名一定要能传达文件的内容信息,别人一看到工程名就能知道文件中放的是什么内容。把一个类的代码或者某一类代码放在一起是好的习惯,这样就很容易给工程取一个直观的名字。业余爱好者常常把很多没关系的代码糅到一个文件中,结果造成代码杂乱无章,也很难给它取一个恰当的名字. b包 最好是域名倒过来,要求所有的字母小写 c类或者接口 如果是一个单词首字母大写 如果是多个单词每个单词首字母大写(驼峰标识) d方法或者变量 如果是一个单词全部小写 如果是多个单词,从第二个单词首字母大写 e常量 如果是一个单词,所有字母大写 如果是多个单词,所有的单词大写,用下划线区分每个单词 f面向对象命名方式 (1) 以对象为中心,采用“主语(对象)+谓语(动作)”的形式来命名,取代传统的“谓语(动作)+宾语(目标)”的形式。 如:dlist_append (2) 第一个参数为对象,并用thiz命名。 如:dlist_append(DList* thiz, void* value); (3) 对象有自己的生命周期,因此都有相应的创建和销毁函数。 2 排版布局要美观大方 2.1 合理使用空格 等号两边用空格。如:int a = 100; 参数之间用空格。如:test(int a, int b, int c) 语句末的分号与前面内容不要加空格。如:test(a, b, c); 其他能让代码更美观的地方。 2.2 合理使用括号 用括号分隔子表达式,不要只靠默认优先级来判断。((a && b) || (c && d)) 用括号分隔if/while/for等语句的代码块,那怕代码只有一行。 2.3 合理缩进 每一级都正常缩进,用tab缩进取代空格缩进。用空格缩进的目的是防止代码因编辑器的tab宽度不同而变乱,这个担心现在是多余的 了,代码编辑器都支持tab宽度设置了。如果代码缩进的层次太多(比如超过三层),则可能是代码设计上出了问题。 2.5 遵从团队的习惯 这一点是最重要的,一个团队就要有一个团队的样子,不管你的水平有多高,遵循团队的规则是一个程序员的基本素养。如果团队的规则确实不好,大家应该一起完善它。做到这一点,你已经离成为专业程序员这个目标更近一步了,重新做一遍练习吧。随着后面的学习,你就可以真正走进专业程序员这个行列了。 |
推荐了解热门学科
java培训 | Python人工智能 | Web前端培训 | PHP培训 |
区块链培训 | 影视制作培训 | C++培训 | 产品经理培训 |
UI设计培训 | 新媒体培训 | 产品经理培训 | Linux运维 |
大数据培训 | 智能机器人软件开发 |
传智播客是一家致力于培养高素质软件开发人才的科技公司,“黑马程序员”是传智播客旗下高端IT教育品牌。自“黑马程序员”成立以来,教学研发团队一直致力于打造精品课程资源,不断在产、学、研3个层面创新自己的执教理念与教学方针,并集中“黑马程序员”的优势力量,针对性地出版了计算机系列教材50多册,制作教学视频数+套,发表各类技术文章数百篇。
传智播客从未停止思考
传智播客副总裁毕向东在2019IT培训行业变革大会提到,“传智播客意识到企业的用人需求已经从初级程序员升级到中高级程序员,具备多领域、多行业项目经验的人才成为企业用人的首选。”
中级程序员和初级程序员的差别在哪里?
项目经验。毕向东表示,“中级程序员和初级程序员最大的差别在于中级程序员比初级程序员多了三四年的工作经验,从而多出了更多的项目经验。“为此,传智播客研究院引进曾在知名IT企业如阿里、IBM就职的高级技术专家,集中研发面向中高级程序员的课程,用以满足企业用人需求,尽快补全IT行业所需的人才缺口。
何为中高级程序员课程?
传智播客进行了定义。中高级程序员课程,是在当前主流的初级程序员课程的基础上,增加多领域多行业的含金量项目,从技术的广度和深度上进行拓展。“我们希望用5年的时间,打造上百个高含金量的项目,覆盖主流的32个行业。”传智播客课程研发总监于洋表示。
黑马程序员热门视频教程
Python入门教程完整版(懂中文就能学会) | 零起点打开Java世界的大门 |
C++| 匠心之作 从0到1入门学编程 | PHP|零基础入门开发者编程核心技术 |
Web前端入门教程_Web前端html+css+JavaScript | 软件测试入门到精通 |