2010年7月16日
三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。
1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。
2、业务逻辑层(BLL Business Logic Layer):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。
3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增、删、改、查。
优点:
1、开发人员可以只关注整个结构中的其中某一层;
2、可以很容易的用新的实现来替换原有层次的实现;
3、可以降低层与层之间的依赖;
4、有利于标准化;
5、利于各层逻辑的复用。
缺点:
1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。
2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。
所以考虑一个项目是不是应该应用三层/多层设计时, 先得考虑下是不是真的需要? 实际上大部分程序就开个WebApplication就足够了, 完全没必要作的这么复杂. 而多层结构, 是用于解决真正复杂的项目需求的。
2010年6月24日
VBA 编写考勤分析程序终于完成了,从6月15号开始经过十几次的反复修改
6月24号终于推出了 1.0正式版。
编写目的:
目前公司考勤班次复杂,员工人数多,现有的考勤软件无法准确对所有员工打卡记录进行归类。
完全依靠人工进行分析每个员工的打卡记录。为了减少和减轻人工分析过程中大量的重复性劳动,
现利用EXCEL VBA 程序开发一套考勤分析程序。
实现功能:
1.自动计算正常上班时间和实际加班时间
2.自动标注出勤迟到,早退,漏打卡等出勤异常的员工打卡记录
3.自动排除重复打卡记录
4.标注排班表中未添加,但是有出勤记录的员工
存在问题:
1.必须在排班表中准确分配好员工的班次,否则出现错误
2.还需要人工核对异常出勤记录中是否存在请假
3.由于完全依靠CPU计算分析考勤数据,数据量大时会计算缓慢,需要提高计算机硬件配置
2010年6月21日
现在企业都很注重宣传自己,只有宣传好自己,外界认同你了,你的企业才能更好的发展,而企业网站侧是一个企业形象宣传的窗口,对于一个陌生的客户要了解你们很多会先看看你的网站,从侧面了解一下,你公司的实力及产品信息等。这里说到的陌生的客户,(姑且让我这样称呼吧,)也是潜在的客户,他们是怎么样得知你的企业,我想有一部分是通过搜索找到的,说到搜索这里好像才和SEO搭上边吧,其实我觉得我在这里谈SEO应用于企业之中,可能有些多余的,因为作为SEOER都知道,通过SEO优化,让企业站排名靠前,可以网罗更多客源,事实上也是这样的,很多企业都是这样做的
企业网站,不说如何优化,想说说网站用户体验,这也是SEO里的一部分内容吧,企业站最好简洁明了,不要让人看了有找不着北的感觉。产品分类清析,说明详细,图文并茂,用户更容易找到TA想要的。另外很多人说企业站没什么内容更新,其实不然,一个行业相关的东西太多了,你可以找找技术方面、信息方面的内容,经常更一下,特别是逢年过节的时候,发表一些祝贺类的文章,表达一下企业对客户的祝贺,更能显示企业的亲和力及人文关怀。还有本论坛的一位朋友告诉我的:1、把网站首页的联系方式加粗加红,2、在网页右边增加滚动的网站留言板,或者在线QQ能给网站提升 300%的效果,但这样做有没有300%的效果不敢说,但肯定有一定的好处,红色字体最少可以引人注目,在线QQ及留言方便用户交流,大家可以试试。
总之通过企业网站能给企业来一定的销售量,而SEO能给企业站带来更多生机,当然企业网上的销售不能光靠一个企业站维持,还得在其他一些行业站发布一些相关信息,拿阿里巴巴、慧聪网来说,在这些网站上发布信息,客户通过他们网站内的搜索也能找到你,这里发布信息也有个技巧的,别人站内搜你也是通过关键词才能搜到,所以这里就用上SEO里的关键词选择。发布时你得选好关键词及发布的标题,这样搜索时你才能靠前,机会更大。
2010年6月20日
为公司编写的一个宏程序,班次太多还没完成
Sub kqfx()
'取得打卡表的记录行数
kqcount = Sheet1.UsedRange.Rows.Count
'取得排班表的记录行数
pbcount = Sheet3.UsedRange.Rows.Count
For i = 2 To pbcount
Sheet2.Cells(i, 1) = Sheet3.Cells(i, 1)
Sheet2.Cells(i, 2) = CStr(Sheet3.Cells(i, 2))
Sheet2.Cells(i, 2).NumberFormat = "@"
Sheet2.Cells(i, 3) = Sheet3.Cells(i, 3)
Sheet2.Cells(i, 4) = Sheet3.Cells(i, 4)
Sheet2.Cells(i, 5) = Sheet3.Cells(i, 5)
Next i
'创建汇总表完成
For i = 2 To pbcount
y = 1 '打卡计数
For j = 2 To kqcount
If Sheet2.Cells(i, 2) = Sheet1.Cells(j, 1) Then '相同员工
' cfjl = Sheet1.Cells(j, 6) 排除重复打卡记录 后续考虑
If Sheet1.Cells(j, 6) <> "重复记录" Then
Sheet2.Cells(i, y + 9) = Sheet1.Cells(j, 3) '考勤时间行改成列
y = y + 1
End If
End If
Next j
Next i
'记录汇总完毕 开始分析
For i = 2 To pbcount
flag = ""
banci = Sheet2.Cells(i, 5)
jb1 = ""
jb2 = ""
lbsj = 0
Overtimes = 0
If IsEmpty(Sheet2.Cells(i, 10)) Or IsEmpty(Sheet2.Cells(i, 11)) Or IsEmpty(Sheet2.Cells(i, 12)) Or IsEmpty(Sheet2.Cells(i, 13)) Then
flag = flag + "考勤记录不完整"
Sheet2.Cells(i, 9) = flag
end if