Java学习——强调一下编程风格
讲完了Java的基础语法,大家就可以编写简单的程序代码了,这里有必要强调一下编程风格。
代码风格虽然不影响程序的运行,但对程序的可读性却非常重要。自己编写的程序要让别人看懂,首先在排版方面要非常注意。
其实每个人的编程风格、每个软件开发公司的编程风格都不一样。一个人编写的程序代码,就应该能让别人看懂,甚至是过了很长时间,自己也要看的懂,否则这个程序就成了一个死程序。
编程风格是指编程时的格式,让程序看上去就很有层次感。下面通过一些例子,说明编程风格的重要性:
上面程序段的整个排版看起来是否很舒服,并且层次感很强?是否一眼看上去就知道整个程序架构?这里的关键在于缩进,缩进也可以称为跳格。
上面的代码采用的缩进:"public class math" 是顶格的,接着 mian() 方法缩进 4 个空格,在 mian() 方法里面的代码一律缩进 8 个空格,而 print() 方法的主体代码又多缩进 4 个空格。这样整个程序的所属关系就很明显了。mian() 方法属于 math 类,其余的都属于main() 方法,而在 print() 方法内的代码段又属于此方法。规律就是空格多的代码从属于空格少的代码。
我推荐大家使用 tab 键缩进,大部分编辑器(如Eclipse)都支持自定义 tab 键的空格数,一般为 4 个空格。
除了缩进,空行也是必要的,先看下列程序代码:
上面的程序段,在 print() 方法与 view() 方法之间有空行,用来区分不同的模块。print() 方法与 view() 方法所完成的功能不一样,所以使用空行将它们分开,这样更增加了程序的可读性。
另外,需要注意的是方法或属性的命名。这些名字应该有含义,最好有规律,不要只使用"a"、"b"这种通用变量,适当可以根据变量或函数的功能为其命名。上面的"print",其他程序员一看就知道这个方法,是有关打印或输出的函数。再如:变量名"name",一看就知道是有关名字的变量。所以,一定要命名的有意义,否则程序的可读性不强。
还有一点是有关注释的。在每个方法的方法名旁边,应该添加一些注释,同时在一段程序完成之后,也要对程序的功能及如何操作,做个简单的描述。
只要做到以上几点,这个程序他人来读就很容易。即使自己在很长时间后,再来读程序也会一目了然。
Java学习——强调一下编程风格的更多相关文章
- [Java学习] 强调一下编程风格
讲完了Java的基础语法,大家就可以编写简单的程序代码了,这里有必要强调一下编程风格. 代码风格虽然不影响程序的运行,但对程序的可读性却非常重要.自己编写的程序要让别人看懂,首先在排版方面要非常注意. ...
- ES6深入学习记录(三)编程风格
今天学习阮一峰ES6编程风格,其中探讨了如何将ES6的新语法,运用到编码实践之中,与传统的JavaScript语法结合在一起,写出合理的.易于阅读和维护的代码. 1.块级作用域 (1)let 取代 v ...
- Java学习之网络编程实例
转自:http://www.cnblogs.com/springcsc/archive/2009/12/03/1616413.html 多谢分享 网络编程 网络编程对于很多的初学者来说,都是很向往的一 ...
- Java学习:网络编程总结
Java网络编程总结 一.概述 计算机网络是通过传输介质.通信设施和网络通信协议,把分散在不同地点的计算机设备互连起来,实现资源共享和数据传输的系统.网络编程就就是编写程序使联网的两个(或多个)设备( ...
- 学习Javascript的编程风格
Javascript编程风格 Douglas Crockford是Javascript权威,Json格式就是他的发明. 去年11月他有一个演讲(Youtube),谈到了好的Javascript编程 ...
- Java学习笔记-网络编程
Java提供了网络编程,并且在实际中有着大量运用 网络编程 网络编程概述 网络模型 OSI参考模型 TCP/IP参考模型 网络通讯要素 IP地址 端口号 传输协议 网络参考模型 网络通讯要素 IP地址 ...
- Java学习_面向对象编程
抽象类 一个class定义了方法,但没有具体执行代码,这个方法就是抽象方法,抽象方法用abstract修饰.因为抽象类本身被设计成只能用于被继承,因此,抽象类可以强迫子类实现其定义的抽象方法,否则编译 ...
- Java学习之网络编程
转自:http://blog.csdn.net/driverking/article/details/6573992 一.网络编程基本概念 1.OSI与TCP/IP体系模型 2.IP和端口 解决了文章 ...
- Java学习进阶—高级编程
当你已经熟练的掌握了面向对象中的各种概念后,是否会对这些知识是如何使用的产生浓厚的兴趣?本课程主要针对于已经掌握了JAVA核心开发技术的读者准备,讲解了JAVA多线程.常用类库.IO编程.网络编程.类 ...
随机推荐
- Xshell、Xftp评估过期的解决办法
介绍一个 FTP客户端-IIS7服务器管理工具作为FTP客户端,它支持批量管理ftp站点.定时上传和定时下载,定时备份,且操作简洁.同时iis7服务器管理工具还是vnc客户端.并且支持批量管理 ...
- 【译】.NET 的新的动态检测分析
随着 Visual Studio 16.9 的发布,Visual Studio 中的检测分析变得更好用了.本文介绍我们新的动态分析工具.这个工具显示了函数被调用的确切次数,并且比我们以前的静态检测工具 ...
- VS中光标变成方块状,输入时会把光标覆盖的部分替换掉的解决方法
按下键盘上的Insert键,切换为插入模式.
- Redis6.x学习笔记(一)
前言 最近学习Redis6.x,特做笔记以备忘,与大家共学.课程是从私塾在线下载的,他们把架构师课程都放出来了,大家可以去下载学习,不要钱的,地址是http://t.hk.uy/eac,课程很不错,值 ...
- 测试的V模型和W模型
V模型 :后测试 优点: 1.每一阶段都清晰明了,便于把控开发的每一个过程. 2.既包含了单元测试又包含了系统测试 缺点: 1.测试介入的比较晚,所以开发前期的缺陷无从修改. 2.开发和测试串行. W ...
- 日常Bug排查-系统失去响应-Redis使用不当
日常Bug排查-系统失去响应-Redis使用不当 前言 日常Bug排查系列都是一些简单Bug排查,笔者将在这里介绍一些排查Bug的简单技巧,同时顺便积累素材_. Bug现场 开发反应线上系统出现失去响 ...
- Envoy:TLS双向认证
环境准备 主机 角色 数量 front-envoy front envoy 1 service envoy 作为内部后端的envoy 2 end 后端应用程序 2 访问 / front-envoy = ...
- 使用 MegaCLI 检测磁盘状态并更换磁盘
专栏首页阿dai_linux使用 MegaCLI 检测磁盘状态并更换磁盘 原 10
- ltp循环跑
e]# cat r3.sh#!/bin/bashi=1for ((; i<=1000; i++))do/opt/ltp/runltp -s fmtmsg01 -p -l -t -l /home/ ...
- mate-notification-daemon stopping, Mate notifications timeout
mate-notification-daemon stopping, Mate notifications timeout Ask Question Asked 9 days ago Viewed 1 ...