谈中型项目下的编码技巧一

andriod中搞稍微大点个软件,写几十个java文件是常有的事。怎么样写思路才不打断影响到效率与耐心。

命名规则是根据团队约定的,每个团队命名规则都有区别,但目地是一样的---提高效率(团队的一致性)

   这里说的只做参考

包名命名:根据每个activity的作用命名。如订单结算:account,地址管理:addr。有几个主activity就有几个不同的包

包下的java文件命名

主activity文件 包名_Activity

副文件:   包名_功能    包名_adapter


195518817.jpg

项目公共包名:

   如果有activity之间的跳转,那么建议弄个"intent"包名,包下建立一个IntentsUnits.java文件

   所有要跳转的都写在这个文件下


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package  com.intent;
import  com.addr.Addr_list;
import  com.item_intent.Item_activity;
import  android.app.Activity;
import  android.content.Intent;
import  android.sax.StartElementListener;
public  class  IntentsUnits {
public  static  void  toAddrList(Activity activity)
{
Intent intent =  new  Intent();
intent.setClass(activity, Addr_list. class );
activity.startActivity(intent);
}
public  static  void  toIntentActivity(Activity activity, String type){
Intent intent =  new  Intent();
intent.setClass(activity, Item_activity. class );
intent.putExtra( "type" , type);
activity.startActivity(intent);
}
}

   有数据库的建个sqlitedb包名的包,包名下建立的文件名为“数据库名称DB“

195827719.jpg

有常量的建个"projectConstant"包名,在包名下建立一个ProjectConstant.java,然后把工程有关的所有的常量都写在这里,不写在resource下的string的文件中,是有的时候要用或改麻烦。特别当工程中用到数据库时。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package  com.projectConstant;
import  android.R.string;
import  android.os.Environment;
public  class  ProjectConstant {
//file or dir
public  static  String ProjectDir = Environment.getExternalStorageDirectory().getPath() +  "/xinyu_school/" ;
public  static  String projectDBDir = ProjectDir +  "database" ; //数据库文件夹名称
public  static  String projectImageDir = ProjectDir +  "image" ; //图片文件夹
//以下是history的type
public  static  String HISTORYTYPE_BUYING =  "1" ; //购物车
public  static  String HISTORYTYPE_BOUGHT =  "2" ; //已经购买
public  static  String HISTORYTYPE_STORE =  "3" ; //收藏
//以下部分无需理会
public  static  String projectDBDirName =  "/xinyu_school/database/" ; //此处无需管它
//database
//database at sdcard
public  static  String DB_PRODUCT =  "product_db.db" ;
//product productParent  picturename productname price number  //开心吧  path 烤猪 30,10只
public  static  String DB_PRODUCTTABLE =  "product" ;
public  static  String DB_PARENT =  "parent" ;
public  static  String DB_PICTURENAME =  "picturename" ;
public  static  String DB_PRODUCTNAME =  "productname" ;
public  static  String DB_PRICE =  "price" ;
public  static  String DB_NUMBER =  "number" ;
public  static  String DB_TOADDR =  "ToAddr_db.db" ;
public  static  String DB_TOADDR_TABLE =  "ToAddr" ;
public  static  String DB_TONAME =  "toname" ;
public  static  String DB_TOADDRESS =  "toaddress" ;
public  static  String DB_TOTEL =  "totel" ;
public  static  String DB_TOCHECKED =  "checked" ;
public  static  String DB_TODEFAULT =  "defaulted" ;
public  static  String DB_HISTORY =  "history.db" ;
public  static  String DB_HSTRYTABLE =  "historytable" ;
public  static  String DB_HISTORY_TYPE =  "type" ;
public  static  String DB_CLIENT_ID=  "admin" ;
}

类包名:在做工程前肯定先把一些数据类化,所以要建一个对象包ProjectClass,低下的文件名根据各个类来命名。

200751465.jpg

layout下的文件命名,根据activity的功能对应的布局命名。

201946488.jpg


最关键:layout下的xml内部控件的命名,跟drawable下的文件命名,他们在生成id是都在R.id下:

layout下xml内空间的命名layout_xml名称_功能如地址管理中的电话信息layout_client_addr_tel

drawable下的文件名用draw_所属xml名称_所属控件功能。如draw_client_addr_tel。

最后在各个java文件中巧用“my控件功能”,这样我们能方便索引句柄。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public  class  ClientActivity  extends  Activity {
     TextView myAddr;
     Button myAddrButton;
     TextView myHisBuy;
     Button mymyHisBuyButton;
     TextView myStore;
     Button myStoreButton;
     ToAddrDB myToAddrDB;
     @Override
     protected  void  onCreate(Bundle savedInstanceState) {
         super .onCreate(savedInstanceState);
         setContentView(R.layout.clientinfo);
         init();
     }



另外附上以前写的ecshop 网店雏形的代码下载地址http://pan.baidu.com/share/link?shareid=1333309535&uk=2065228996,这个代码几乎涉及到30%我所学的东西,里面的代码编写风格,跟内容有一定的学习价值。下载后先看"说明.txt"。编码utf-8.



本文转自lilin9105 51CTO博客,原文链接:http://blog.51cto.com/7071976/1232357,如需转载请自行联系原作者

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值