首页 开发编程 正文

php怎么打出多行 java开发中如何写出高质量代码

所以想说说我对java开发的一些看法,通篇没有一句注释、一个方法几百行、if/else满天飞、方法之间参数传递全是map、sql语句各种嵌套子查询、关联查询7-8个表,所以开发过程中要注意代码扩展性,高质量代码在开发中的意义?《计算机程序的构造和解释》一书提到代码是写给人看的,方便业务开发如何去写高质量代码?我建议去看一下《阿里巴巴J...

php怎么打出多行,如何才能写出高质量的代码?

作为一名java开发工程师,对于这个问题我算是比较有感触的,所以想说说我对java开发的一些看法,纯属个人意见,不喜轻喷!

什么样的代码算是高质量代码,或者说是高质量代码的特征?

在我看来,主要就是在于可读性、易扩展两方面。

首先,我觉得最重要是要可读性高。为什么这么说呢?相信做过开发的朋友都知道,互联网公司的人员流动率还是比较高的,可能出现的情况是领导突然跟你说,你去交接一下某某某同事的工作,而交接的时候一般情况主要是业务流程、功能模块来交接,大概率不会一行一行的代码去读。如果项目正常运转,不出问题、也没有需求变更(大概率需求会变更),那就是你好我好大家好,如果出了问题或者需求变更,还是之前同事的那些模块,那就必须得去啃代码了。这个时候代码的易读性就显得非常重要了。你可以试想一下,通篇没有一句注释、一个方法几百行、if/else满天飞、方法之间参数传递全是map、sql语句各种嵌套子查询、关联查询7-8个表,当你看到这样的代码,估计心里顿时万马奔腾,怒火蹭蹭蹭的往头上涌去。所以我觉得可读性是第一要素。

其次,扩展性要好。这个也很好理解,现在是信息时代,流量为王,为了提高市场占有率,普遍需求变更频繁,2周一次发布都是正常频率。在这种频繁需求变更的情况下,如果代码的扩展性不高,每一次需求都需要大量改动代码,即耗费时间还容易出错,比如漏改某处地方而引起其他功能异常。所以开发过程中要注意代码扩展性,当然也不要去过分设计,让代码晦涩难懂。

高质量代码在开发中的意义?《计算机程序的构造和解释》一书提到代码是写给人看的,不是写给机器看的,只是顺便计算机可以执行而已。如果代码是写给机器看的,那完全可以使用汇编语言或者机器语言(二进制),直接让机器执行。

所以代码一定要让人容易理解。高质量代码的好处:

好的代码读起来令人赏心悦目,比如java里的spring、mybatis等框架,读源码时常常不自觉发出惊叹,代码原来还可以这么写!

质量高意味着维护成本低,运行稳定

质量高意味着扩展性强,方便业务开发

如何去写高质量代码?

对于做java的来说,我建议去看一下《阿里巴巴Java开发手册》。

手册以 Java 开发者为中心视角,划分为编程规约、异常日志、单元测试、安全规约、MySQL 数据库、工程结构、设计规约七个维度,再根据内容特征,细分成若干二级子目录。根据约束力强弱及故障敏感性,规约依次分为强制、推荐、参考三大类。对于规约条目的延伸信息中,“说明”对规约做了适当扩展和解释;“正例”提倡什么样的编码和实现方式;“反例”说明需要提防的雷区,以及真实的错误案例。 摘自《阿里巴巴 Java 开发手册》

最后推荐一下阿里巴巴代码规范扫描插件,以IDEA为例,安装如下

使用如下:

30岁跳槽转行学IT能学好吗?

你好!作为一个从医学转IT开发的人来说,没有什么不可以不可能,只是想不想学的问题和感兴趣不感兴趣。做一件事最好的时候在10年前,其次是现在。另外就业前景的话还是不错的,现在那家公司没开发,没自己网站和APP,那就与时代脱轨啦!

你在编程时遇到过哪些惊为天人的事情?

很多年前新入职一家公司,接手了一份远古代码。C语言写的。

在某个相对核心的逻辑函数里,写了1000多个goto。新逻辑———加几个goto,新人———加几个goto,有BUG——另起几个goto,看不懂代码——自己搞几个goto!

就像这坨电线一样,而这份代码还是公司主营业务的核心代码之一,我是一点也不敢动啊,真的不如重写来的快。

大一学习java该从哪里下手?

漫无目的是真的难受了。

我的建议很简单。选择C ++或Java。然后学习JavaScript。越来越多的基于Web的应用程序需要牛逼的JavaScript技能。然后根据要执行的工作类型选择PHP,Swift或Python。一旦您很好地了解了这三个集合中的每一个,就可以相对轻松地选择所需的任何其他语言或框架。

大一打基础吧。不废话,直接贴出每种语言的顺序,也贴出一些资源。大学四年能学这么多就已经很牛逼了。

c和java后面贴出更详细的版本,毕竟这两个是最重要的。毕竟大一,学c++打基础还是有时间的,虽然java更容易点。

最后还会列出整套资源哦。

1、c/c++2、java3、python4、前端5、软件测试

C/C++详细图解

资源

轻松掌握C语言视频教程(会打字就能学会) 对应1、2、3、4知识点。

C++基础完整视频 对应1、2、3、7知识点

C语言数据结构 培养架构师思维 对应4、5、6知识点

C++核心编程_打造你的核心编程技能 对应1-9知识点

QT界面开发 对应1、2知识点

MFC 对应3知识点

linux系统编程 对应上面所有。

服务器开发之linux网络编程 对应所有。

最后的实战项目网上一搜一大把

java

教学流程、每个模块需要学的东西、能掌握的技能,好好给我记住,期末要考的。

接下来划重点,视频和资料,考试不考,日常作业。

然后再把各个阶段的单独清理出来。每个阶段会用到的资源也会附上一部分。

第一阶段:

毕向东Java基础教程 (提取码ks8m)

这个基础教程讲的很全面,对新手很友好,但题主貌似用不到。

第二阶段

Java多线程与并发库高级应用 这个是张孝祥老师的

mysql高级教程视频

JDBC教程 (提取码3e7c)

10天玩转Web前端视频

linux从入门到精通

第三阶段:

高可用的并发解决方案nginx+keepalived视频

动手实现Tomcat

Ajax、jQuery基础入门视频教程

REDIS高级应用

Maven精品教程视频 (提取码:6hzy)

Mybatis由浅入深全套

Spring和springMVC详细示例精通教程

第四阶段

oracle数据库单行和多行函数的使用

物流行业--国际物流 (提取码:638g)

java实战项目品优购电商系统开发

深度掌握Springboot实践技术教程

玩转Github开发 (提取码:q5gh)

Vue.js深入浅出教程

第五阶段

Spring Boot+Vue.js+FastDFS实现分布式图片服务器

一统江湖微服务架构之SpringCloud

Jenkins持续集成

迎娶白富美的独门秘籍-Java程序算法设计视频

想要C++视频关注私聊发送“C++”就可以了哦

想要java视频,关注私聊发送“java”也就行了。

所见即所得编辑器原理?

KindEditor 是一套开源的在线HTML编辑器,主要用于让用户在网站上获得所见即所得编辑效果,开发人员可以用 KindEditor 把传统的多行文本输入框(textarea)替换为可视化的富文本输入框。 KindEditor 使用 JavaScript 编写,可以无缝地与 Java、.NET、PHP、ASP 等程序集成,比较适合在 CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用。 主要特点 快速:体积小,加载速度快 开源:开放源代码,高水平,高品质 底层:内置自定义 DOM 类库,精确操作 DOM 扩展:基于插件的设计,所有功能都是插件,可根据需求增减功能 风格:修改编辑器风格非常容易,只需修改一个 CSS 文件 兼容:支持大部分主流浏览器,比如 IE、Firefox、Safari、Chrome、Opera

本文转载自互联网,如有侵权,联系删除