当前位置: 技术问答>java相关
一个好的程序员该有些什么良好的习惯!!(高分酬谢)
来源: 互联网 发布时间:2015-08-08
本文导语: 比如在设计上,书写代码上,文档上等等该注意些什么?? 下面这个程序是一个jdbc-odbc连接sql,思想是连接mssql server,然后执行query语句,得到返回的结果集。 请问下面的程序在一个程序员该有的良好习惯方面有写...
比如在设计上,书写代码上,文档上等等该注意些什么??
下面这个程序是一个jdbc-odbc连接sql,思想是连接mssql server,然后执行query语句,得到返回的结果集。
请问下面的程序在一个程序员该有的良好习惯方面有写什么问题??
package odbc;
import java.sql.*;
public class Odbc
{
private static String jdbcclass = "sun.jdbc.odbc.JdbcOdbcDriver";
private static String systemdsn = "sqlodbc";
private static String jdbcurl = "jdbc:odbc:"+systemdsn;
private static String address = "192.168.0.1:1433";
private static String user = "temp";
private static String password = "temp";
private Connection con = null;
private Statement stm = null;
private ResultSet res = null;
Odbc(){
try{
Class.forName(jdbcclass);
con = DriverManager.getConnection(jdbcurl,user,password);
stm = con.createStatement();
}
catch(Exception e){System.out.print(e.getMessage());}
}
public ResultSet query(String sql)
{
try
{
res = stm.executeQuery(sql);
}
catch(Exception e)
{
System.out.print(e.getMessage());
}
return res;
}
}
下面这个程序是一个jdbc-odbc连接sql,思想是连接mssql server,然后执行query语句,得到返回的结果集。
请问下面的程序在一个程序员该有的良好习惯方面有写什么问题??
package odbc;
import java.sql.*;
public class Odbc
{
private static String jdbcclass = "sun.jdbc.odbc.JdbcOdbcDriver";
private static String systemdsn = "sqlodbc";
private static String jdbcurl = "jdbc:odbc:"+systemdsn;
private static String address = "192.168.0.1:1433";
private static String user = "temp";
private static String password = "temp";
private Connection con = null;
private Statement stm = null;
private ResultSet res = null;
Odbc(){
try{
Class.forName(jdbcclass);
con = DriverManager.getConnection(jdbcurl,user,password);
stm = con.createStatement();
}
catch(Exception e){System.out.print(e.getMessage());}
}
public ResultSet query(String sql)
{
try
{
res = stm.executeQuery(sql);
}
catch(Exception e)
{
System.out.print(e.getMessage());
}
return res;
}
}
|
1、jdbcurl,user和password不应该被hardcode在代码里,最好能够从config文件里读取,这样以后更改数据库所在机器地址账号和密码就很方便了
2、这样的工具函数最好能写一个完整的有数据库查询,删除,增加等功能的,并且每个功能函数最后还要有释放connection的代码
3、如果像我上面所说那样的话,Connection,Statement和ResultSet就不用写成全局变量了,只需要在每个功能函数里声明就可以了,这样做到函数之间功能独立,无不相干。
2、这样的工具函数最好能写一个完整的有数据库查询,删除,增加等功能的,并且每个功能函数最后还要有释放connection的代码
3、如果像我上面所说那样的话,Connection,Statement和ResultSet就不用写成全局变量了,只需要在每个功能函数里声明就可以了,这样做到函数之间功能独立,无不相干。
|
我觉得对数据库的操作可以进行封装,可以做一个能够产生Connection的专门类出来,然后程序通过该类进行取得Connection,当然了,最好是能够实现数据库的连接池,这样效率就很高了。
还有一点建议:不要是用面向对象的语言编写面向过程式的程序,这是使用语言的倒退。java就非常明显,在jsp中你可以直接操作数据库,但这是ASP的程序风格,在java中应该很好的运用面向对象的设计方法,这才是使用java最大的好处。
还有一点建议:不要是用面向对象的语言编写面向过程式的程序,这是使用语言的倒退。java就非常明显,在jsp中你可以直接操作数据库,但这是ASP的程序风格,在java中应该很好的运用面向对象的设计方法,这才是使用java最大的好处。
|
package odbc;
import java.sql.*;
public class Odbc
{
Odbc( ){
init();
}
private void init(){
//从配置文件中读取连接数据库信息
}
private Connect getConnect(){
//得到连接
}
public getRecordSet(String sql){
//得到结果集
}
public update(String sql){
//更新数据库
}
public insertRow(String sql){
//插入记录
}
……
}
import java.sql.*;
public class Odbc
{
Odbc( ){
init();
}
private void init(){
//从配置文件中读取连接数据库信息
}
private Connect getConnect(){
//得到连接
}
public getRecordSet(String sql){
//得到结果集
}
public update(String sql){
//更新数据库
}
public insertRow(String sql){
//插入记录
}
……
}
|
写java程序时
1 要到处是注释(要写的规范)
2 要层次清晰,适当的留有空格
3 要时刻提醒自己代码的规范
4 不要再一个方法里完成太多的功能
5 要对异常给与充分的注意与解决。
6 方法名,类名称的定义要合乎规范。
7 要用一些哗众取宠的技巧
1 要到处是注释(要写的规范)
2 要层次清晰,适当的留有空格
3 要时刻提醒自己代码的规范
4 不要再一个方法里完成太多的功能
5 要对异常给与充分的注意与解决。
6 方法名,类名称的定义要合乎规范。
7 要用一些哗众取宠的技巧
|
每个功能块都加上注释以及逻辑说明
代码外观上要做到美观:具有较强的可读性
程序代码具有很强的健壮性,更多与设计相关,但代码上也有要求:空值防护,try块,return等以及书写风格
最好公司或者项目统一--难度有点大
代码外观上要做到美观:具有较强的可读性
程序代码具有很强的健壮性,更多与设计相关,但代码上也有要求:空值防护,try块,return等以及书写风格
最好公司或者项目统一--难度有点大
|
编码要思路清晰
注释要多
编码风格要统一
文档多写点
注释要多
编码风格要统一
文档多写点
|
最好的习惯是联想,打星际的时候不要想着我造了一条狗,应该是构造了一个狗的对象
|
在写文档的时候没有废话,让人一看就知道是怎么回事
没有难以理解的语句,除非必要!写的代码具有亲和力
让人想看了还想再看 看代码的人有一种酣畅的感觉,
我现在没有碰到这种人
没有难以理解的语句,除非必要!写的代码具有亲和力
让人想看了还想再看 看代码的人有一种酣畅的感觉,
我现在没有碰到这种人
|
package odbc;
import java.sql.*;
public class Odbc
{
Odbc( ){
}
/*实行SQL语句返回结果集*/
public ResultSet query(String sql) throws Exception
{
String jdbcclass = "";
String systemdsn = "";
String jdbcurl = "";
String address = "";
String user = "";
String password = "";
Connection con = null;
Statement stm = null;
ResultSet res = null;
try
{
/*参数定义*/
jdbcclass = "sun.jdbc.odbc.JdbcOdbcDriver";
systemdsn = "sqlodbc";
jdbcurl = "jdbc:odbc:"+systemdsn;
address = "192.168.0.1:1433";
password = "temp";
user = "temp";
Class.forName(jdbcclass);
con = DriverManager.getConnection(jdbcurl,user,password);
stm = con.createStatement();
res = stm.executeQuery(sql);
return res;
}
catch(Exception e)
{
throw e;
}
}
}
import java.sql.*;
public class Odbc
{
Odbc( ){
}
/*实行SQL语句返回结果集*/
public ResultSet query(String sql) throws Exception
{
String jdbcclass = "";
String systemdsn = "";
String jdbcurl = "";
String address = "";
String user = "";
String password = "";
Connection con = null;
Statement stm = null;
ResultSet res = null;
try
{
/*参数定义*/
jdbcclass = "sun.jdbc.odbc.JdbcOdbcDriver";
systemdsn = "sqlodbc";
jdbcurl = "jdbc:odbc:"+systemdsn;
address = "192.168.0.1:1433";
password = "temp";
user = "temp";
Class.forName(jdbcclass);
con = DriverManager.getConnection(jdbcurl,user,password);
stm = con.createStatement();
res = stm.executeQuery(sql);
return res;
}
catch(Exception e)
{
throw e;
}
}
}
|
写代码的时候要想着可能几个月后还要修改,得添点说明别到时候忘了。命名
也要好,别到时候不记得了。文档要写好,实在是不记得了,还有条后路。
也要好,别到时候不记得了。文档要写好,实在是不记得了,还有条后路。
|
写代码的时候要想着可能以后要留给其他人来维护,多点注释,多点文档。
到时候,接手的人会打心眼里感谢你的。
我现在就是在接手其他人的程序,感触颇深。
到时候,接手的人会打心眼里感谢你的。
我现在就是在接手其他人的程序,感触颇深。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。