android之addView解析

企业应用系统开发的越多,就会发现里面存在很多通用任务。如果把这些通用任务作为基础模块,整合到一个框架里面,以后开发项目就可以在这个基础上进行,可以加速项目进行。

我从后端到前端总结了一些基础模块,主要是基于Asp.Net 的Web解决方案。供大家在实现此类框架时做参考。

一. 后端

1. 基础组件

1) 持久层

SqlHelper , Enterprise Library, O/R Mapping 框架。

Enterprise Library: http://http://entlib.codeplex.com/

EF: http://entityframework.codeplex.com/

NHibernate: http://nhforge.org/

Castle ActiveRecord: http://www.castleproject.org/projects/activerecord/

MyBatis: https://code.google.com/p/mybatis/

2) IoC框架

松耦合,可插拔绝对是一个基础框架所应有的特性,引入一个IoC框架是值得考虑的。

Autofac:http://code.google.com/p/autofac/

Castle Windsor:http://sourceforge.net/projects/castleproject/files/Windsor/Castle.Windsor.3.2.0.zip/download

Unity:http://entlib.codeplex.com/

Spring.NET:http://www.springframework.net/

StructureMap:http://sourceforge.net/projects/structuremap/files/

Ninject:http://ninject.org/download

3) 启动任务

框架的启动任务应该是可配置可扩展的。应结合IoC框架和bootstrapper 完成该功能。

bootstrapperhttp://bootstrapper.codeplex.com/

4) 全局配置

我曾经看到过很多应用把系统配置弄的一团糟糕。有的放在.config文件,有的放到xml,或者则在DB里面。

分散的配置方式,给实施上线和后期维护都带来了巨大困难。配置应该是集中化管理,并且可扩展,可接入。实现缓存已经动态刷新。

5) 多语言

多语言支持是Global应用程序的不可或缺的一个功能。根据应用场景,可以实现静态多语言和数据多语言。支持的语言随着业务发展,能够动态扩展。

对于静态多语言,还需实现用户的定制。

6) 通用数据

对于一些Key-Value的通用列表数据,需要实现集中维护,一致的服务接口。

7) 日志

很多优秀成熟的日志组件可供选择。

log4net: http://logging.apache.org/log4net/index.html

nlog: http://www.nlog-project.org/

Common.Logging: http://netcommon.sourceforge.net

Enterprise Library: http://http://entlib.codeplex.com/

8) 系统事件

     提供一致的系统事件发布与订阅功能。参考:http://martinfowler.com/eaaDev/EventAggregator.html

9) 定时任务

      提供一个Web管理的定时任务管理和监控的功能。可以使用Quartz.net: http://www.quartz-scheduler.net/

10) 缓存

合理使用缓存,是提高系统响应速度的重要手段。缓存需要支持本地缓存和分布式缓存。

缓存组件可引入Enterprise Library中的Cache Block, 通过它的框架,接入MemCache或者MS的AppFabric(Code:Velocity)

EnyimMemcached: https://github.com/enyim/EnyimMemcached

AppFabric: http://msdn.microsoft.com/en-US/windowsserver/ee695849.aspx

11) 异常管理

定义异常的继承体系和通知管理机制。定义系统级别的受控异常。

12) 系统消息

提供邮件,短信,站内信的发送接口。支持默认实现可被替换。

13) 加密解密

提供加解密的工具类。

14) 外部数据源

定义一致的接口,提供系统通过各种方式,如ODBC, WS, WCF, WebAPI等方式,访问到外部资源。

15) 文件存储
实现根据配置,将上传文件存储到本地,共享目录,NAS, SAN,数据库等目的地的功能。
16) 功能权限
基于功能的授权模型。AOP实现权限验证拦截。
17) 数据权限
基于数据的授权模型。
18) Web服务层基础
实现Web层的基类,序列化,错误处理,工具函数等。

2. 基础用用
1) 人员、组织、账号、角色管理
系统基础数据的管理界面
2) 登陆
有关登陆的一系列功能,登陆验证,修改密码,密码找回等
3) SSO
与其他应用系统集成不可缺少的模块。可基于认证身份的加密传递,Cookie共享等机制实现。
5) 个性化
用户的个性化配置,如系统皮肤,默认语言,默认首页等。需要提供方便的定义和扩展访问功能
6)  菜单
定制各种场景下的菜单体系,功能代码,已经渲染接口。
7) 授权
系统功能授权

二. 前端
前端相对于后端比较纯粹,主要涉及三个方面HTML/CSS/JavaScript。相关知识地图可以参考我前面发的博文。Web前端开发技术
下面列出一些可选的框架组合:
1. CSS 框架

2. JavaScript框架

3. UI 组件
jQuery UI: http://jqueryui.com/
jQuery Mini UI: http://www.miniui.com/

4. js模块加载器

android之addView解析,布布扣,bubuko.com

android之addView解析

上一篇:mysql 事务


下一篇:mybatis创建oracle触发器时冒号引起的问题