Weapsy 分析网站架构
Weapsy 分析(一)网站架构
这个项目看了好久了,但是老没时间写一些分析心得。下班后想了想,事情也不能老拖着,还是得做。
如图所示:Weapsy由5个项目所组成,有点可惜了,没有测试的项目,说明一些小的项目老外也不写啥测试,项目能Hold住测试都免了 ^_^。
核心层Core:主要由Cookie,Cache,Mail,AppSetting等一些公用的组件。除实体层外,它被所有的项目所引用。
数据层Data:负责一些基于CodeFirst的数据初始化,仓储,实体关联。
实体层Entities:定义整个实体层。
服务层Service:定义服务,展示层调用各种服务。
展示层Web:不解释了.
--------------------------------------------------------------------------------------------------------------------------------------
Entities不依赖任何层
Core依赖的层:Entities
Data依赖的层:Core,Entities(需要EntityFramework)
Service依赖的层:Core,Entities(需要EntityFramework)
Web依赖的层:Core,Entites,Service(需要EntityFramework)当然展示层还使用了多个开源项目不具体写了,来个图:
项目的层次结构大体介绍了下,说些我对这个项目的想法。
项目不大,不复杂,但是作者的经验非常的丰富,对系统需求考虑的会比较多,非常值得借鉴。
学习本是一个由浅入深,由易到难的过程。而且IT学习需要非常多的时间,浪费很多时间去做一件意义不是
非常的大的事情,本身就是一个失败。
项目基于EF+CodeFirst+SQL2008,如何使用领域驱动进行开发,如何架构整个项目。虽然简单,但是透射出
很多观念。
值得学习的,最少我学习到的,以后做项目我会尽力去做:
Web中说清楚了项目的情况,每次变更的记录,第三方组件学习需要看的资料。事情不需要太复杂,做好就行了。
虽然有些介绍非常简单,但是我们可以通过版本控制去查看修改。如1.0 beta 2中可以去版本控制里面阅读具体的修改。
以Sat at 11:59的版本为例:点击7cbe8a08b97e进入变更集详细页面
看见没? edit代表了修改, View diff 链接可以查看具体的改变。
代码不是死看的 ,基础差的可以第一个版本看起,跟着作者的脚本一步步的进步。最最重要的有个明确的目标会比较轻松。
Weapsy 分析(一)网站架构序续
2012-04-26 23:04 by _风行, 194 阅读, 0 评论, 收藏, 编辑
好吧,这个不是我想写的,是老外逼我的,兄弟你更新项目的速度还真是快啊。。。
刚去下载了项目的最新版本,一看,哇塞,该有的都有了。。。
测试的项目老外也拉上了,说明后期会写测试代码。另外还多出一个WebFramework的层。虽然现在没东西,但是我相信迟早会有的。
OK,最新的项目对我现在看的项目影响不大。1.0 RC (?? 03 2012)
- Upgrade to Entity Framework 4.3.1
- Added AutoMapper custom version (by nopCommerce Team)
- Deleted AppSettings.config file
- Added missed model properties and localization resources of Plugin Definitions
- Minor changes
- Fixed some bugs
所以还是看现在版本:Weapsy 1.0 Beta 2 - Source
Rating: No reviews yet
Downloads: 160
Change Set: 2e0bdd6ade2c
Released: Feb 28 2012
Updated: Feb 28 2012 by lucacb
Dev status: Beta
随笔分类 -Weapsy
Weapsy分析终
2012-06-16 14:17 by _风行, 181 visits, 网摘, 收藏, 编辑
Weapsy分析四(Data层)
2012-06-16 14:05 by _风行, 111 visits, 网摘, 收藏, 编辑
Weapsy 分析三(Web层) 3 关于MVC3中一个表单多个按钮的处理方案
2012-05-19 21:31 by _风行, 520 visits, 网摘, 收藏, 编辑
Weapsy 分析三(Web层) 2 初始化
2012-05-19 13:02 by _风行, 212 visits, 网摘, 收藏, 编辑
Weapsy 分析三(Web层) 1 Global.asax
2012-05-13 18:17 by _风行, 212 visits, 网摘, 收藏, 编辑
Weapsy分析(二)项目分层
2012-05-01 12:22 by _风行, 245 visits, 网摘, 收藏, 编辑
Weapsy 分析(一)网站架构序续
2012-04-26 23:04 by _风行, 195 visits, 网摘, 收藏, 编辑
Weapsy 分析(一)网站架构
2012-04-26 22:20 by _风行, 225 visits, 网摘, 收藏, 编辑
Weapsy 分析网站架构的更多相关文章
- Flickr 网站架构分析
Flickr 网站架构分析 Flickr.com 是网上最受欢迎的照片共享网站之一,还记得那位给Windows Vista拍摄壁纸的Hamad Darwish吗?他就是将照片上传到Flickr,后而被 ...
- 各大型网站架构分析收集-原网址http://blog.csdn.net/lovingprince/article/details/3379710
1. PlentyOfFish 网站架构学习http://www.dbanotes.net/arch/plentyoffish_arch.html 采取 Windows 技术路线的 Web 2.0 站 ...
- 【转】LAMP网站架构方案分析【精辟】
[转]LAMP网站架构方案分析[精辟] http://www.cnblogs.com/mo-beifeng/archive/2011/09/13/2175197.html Xubuntu下LAMP环境 ...
- Twitter网站架构分析介绍
http://www.kaiyuanba.cn/html/1/131/147/7539.htm作为140个字的缔造者,twitter太简单了,又太复杂了,简单是因为仅仅用140个字居然使有几次世界性事 ...
- 【Hadoop离线基础总结】流量日志分析网站整体架构模块开发
目录 数据仓库设计 维度建模概述 维度建模的三种模式 本项目中数据仓库的设计 ETL开发 创建ODS层数据表 导入ODS层数据 生成ODS层明细宽表 统计分析开发 流量分析 受访分析 访客visit分 ...
- 分析http协议和高并发网站架构
案例任务名称 分析http协议和高并发网站架构 案例训练目标 深入理解http协议的工作原理 掌握http协议的分析方法 包含技能点 搭建web服务器 编辑简单的html页面并上传到服务器 使用wir ...
- LAMP网站架构分析
转自:http://www.williamlong.info/archives/1908.html LAMP(Linux-Apache-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包 ...
- LAMP网站架构方案分析
本文引自:http://www.williamlong.info/archives/1908.html LAMP(Linux-Apache-MySQL-PHP)网站架构是目前国际流行的Web框架,该框 ...
- 前端学HTTP之网站架构演化
前面的话 本文将详细介绍网站架构的演化过程 初始阶段 大型网站都是从小型网站发展而来,网站架构也是一样,是从小型网站架构逐步演化而来.小型网站最开始时没有太多人访问,只需要一台服务器就绰绰有余,这时的 ...
随机推荐
- 【甘道夫】官方网站MapReduce代码注释具体实例
引言 1.本文不描写叙述MapReduce入门知识,这类知识网上非常多.请自行查阅 2.本文的实例代码来自官网 http://hadoop.apache.org/docs/current/hadoop ...
- react.js 从零开始(三)JSX 语法及特点介绍
什么是jsx? jsx = JavaScript + xml jsx 是一种 Ecmascript 的一种新标准. jsx 是一种 带有结构性的语法. jsx 的特点: 1.类xml语法易于理解. 2 ...
- thoughtworks笔试整理
笔试了,时间1个半小时.没想到居然有7/10是开放性问题.大意例如以下:1.为什么选择增加ThoughtWorks.200字以内,不能用"interesting"."ch ...
- UNIX环保进程
学习的过程之前,先来了解下过程中的操作环境. main功能 过程总是开始main功能开始执行,我们编程,程序从main功能进行,它是原型例如,下面的: int main(int argc, char ...
- [译文]c# /.Net 技巧: ToDictionary() and ToList()
前言: 有两个简单好用的LINQ扩展方法 ToDictionary() 和ToList(),你可能知道或不知道,但是它的的确确可以简化查询转化为集合的任务: 简介: LINQ和延迟执行 据你所认识的L ...
- TFTP server组态
TFTP server组态 2014-10-31北京海淀区 张俊浩 一.TFTP(Trivial File Transfer Protocol,简单文件传输协议或称小型文件传输协议) 是一种简化的文 ...
- javascript权威指南(6) - 对象
JavaScript对象可以从一个称为原型的对象继承属性,这种"原型式继承"(prototypal inheritance)是JavaScript的核心特征.除了字符串.数字.tr ...
- NDMCDB数据库hang住故障分析 - cursor: pin S wait on X
问题描写叙述: 上午刚刚到办公室,就有监控人员邮件反馈,昨晚NDMCDB407数据库被重新启动过,让我分析一下数据库重新启动的原因.因为昨晚业务有版本号上线,所以短信警告关闭了,所以没有短信下发到我手 ...
- exit() _exit()
图 C程序的启动与终止 差别: _exit()函数:直接使进程停止执行,清除其使用的内存空间,并销毁其在内核中的各种数据结构; exit()函 数则在这些基础上作了一些包装,在运行退出之前加了若干道工 ...
- 动画云创始人胥克谦&课程格子创始人李天放分享创业经历
原文地址:http://student.csdn.net/mcd/topic/163587/955044 2014年10月18日在北京科技大学成功举办了CSDN高校俱乐部全国巡讲,现场參会学生有一百余 ...