基于Mvc3,Ef,领域驱动电子商务系统的EShop开发
分享自己从代码小工一步步走向搭架子,ING...
简单了解UnitOfWork
摘要: UnitOfWorkUnit Of Work模式,即工作单元,它是一种数据访问模式。它是用来维护一个由已经被业务修改(如增加、删除和更新等)的业务对象组成的列表。它负责协调这些业务对象的持久化工作及并发问题。那它是怎么来维护的一系列业务对象组成的列表持久化工作的呢?通过事务。Unit Of Work...阅读全文
posted @ 2014-09-28 00:41 Turbo Zhang 阅读(207) | 评论 (0) 编辑
搭架子Domain先行?是Factory先行!
摘要: Domain?Table?通用的软件开发都是从这两者开始的,Domain更多的是从关注业务开始,Table则是为上层建筑定义了基础数据结构,两者都有自己的忠实信徒。Domain的信徒认为一切不为核心业务服务的开发建模都是耍流氓;Table的信徒则认为“程序=算法+数据结构”,只有归类出清晰的数据结构...阅读全文
posted @ 2014-09-24 12:27 Turbo Zhang 阅读(18) | 评论 (0) 编辑
实现一个基于WCF的分布式缓存系统
摘要: 前言:用到分布式的东西很多了,一直想做一个简单的分布式小项目练练手学习下。后来决定来一个简单的分布式缓存的系统。在企业应用开发中缓存的用例不胜枚举,但是每次更多的是单机的部署与使用,没有对应的需求是一个原因,另一个原因总是好高骛远做过的总是不想再进行修正。这次的分布式就从最简单的分布式缓存开始。说简...阅读全文
posted @ 2014-08-14 18:34 Turbo Zhang 阅读(925) | 评论 (9) 编辑
构建可伸缩,高性能的互联网应用
摘要: 转自:http://xmuzyq.iteye.com/blog/710302一应用无状态俗话说,一个系统的伸缩性的好坏取决于应用的状态如何管理。为什么这么说呢?咱们试想一下,假如我们在session中保存了大量与客户端的状态信息的话,那么当保存状态信息的server宕机的时候,我们怎么办?通常来说,...阅读全文
posted @ 2014-07-29 15:46 Turbo Zhang 阅读(54) | 评论 (0) 编辑
我终于深入参与了一个分布式系统了,好多想法不一样了!
摘要: 前言过去两个月深入的参与了一个分布式系统的开发,记得之前有人说过“想成为架构师之前,都是从微观架构开始的”。尽管我从没想过将来的某一天要成为一个架构师,或者领域专家,我只是想萌萌哒的编码,写着自己喜欢的Code,和一群志同道合的朋友做出大家喜欢的商品和产品。但是工作久了慢慢的搭架子的事情还是会来到你...阅读全文
posted @ 2014-07-12 14:21 Turbo Zhang 阅读(15268) | 评论 (73) 编辑
代码即数据思想带来的思考
摘要: 前言:首先大家都听说过“代码即数据”这句话,但是这里要说的“代码即数据”可能会有不同的意思,个人的意思是,我们在开发过程中有好多的时候是数据信息驱动或者状态驱动的。说的白话些,就是我们之前的好多开发都有明确的业务需求,同时开发过程中会使用我们熟练的解决方案。但是有的时候上手一个自己之前完全不熟悉的项...阅读全文
posted @ 2014-05-21 18:27 Turbo Zhang 阅读(87) | 评论 (0) 编辑
Repository模式完全实战引发的思考
摘要: --前言:这个月请假出去玩了几天,当了几天文艺青年,回来之后任务稍微紧了一点。放松之后回归正轨,好久没写了,也没什么好的东西值得分享,对于之前的文章好多朋友留言了,看来博客园的同学们对于技术还是比较踏实的。关于其中的一些问题有的我没有遇到过,我也不敢妄下断言,还是希望大家能够各种搜索自己解决吧。这篇...阅读全文
posted @ 2014-04-23 16:35 Turbo Zhang 阅读(1509) | 评论 (6) 编辑
从搭建电商系统引申出来的知识拓扑图
摘要: 起因由于最近一直在研究和储备做云计算服务方向的基础知识,突然发现自己的知识并没有形成体系。同时也不知道该系统的去学习些什么,总之就是有一些琐碎的知识但没有主干。楼主一直认为知识只有使用才会有价值,有意义,否则也只能是实验室里的东西。所以不管是在分析业务,思考职责分离或者技术选型时,总会强调“使用场景...阅读全文
posted @ 2014-04-02 17:04 Turbo Zhang 阅读(666) | 评论 (4) 编辑
分享一个Mvc的多层架构,欢迎大家拍砖斧正
摘要: 多层架构是什么?多层架构是开发人员在开发过程当中面对复杂且易变的需求采取的一种以隔离控制为主的应对策略,关于多层架构的标准,我认为有一句话是比较有代表性的“每一层都可以单独部署”,最传统,最简单的就是从三层开始的:将整个项目自下而上的分为:数据持久(数据访问)层,逻辑(业务)层,UI(展现)层。数据...阅读全文
posted @ 2014-03-31 16:15 Turbo Zhang 阅读(12335) | 评论 (69) 编辑
DDD~领域事件与事件总线[转]
摘要: http://www.cnblogs.com/lori/p/3476703.html谈谈它终于有些眉目了,搜刮了很多牛人的资料,英文的,中文的,民国文的,终于小有成就了,同时也做了个DEMO,领域事件这东西好,但需要你明白它之后才会说好,而对于明白领域事件这件事来说,它的门槛有点高,居然花了我三天的...阅读全文
posted @ 2014-03-25 22:26 Turbo Zhang 阅读(137) | 评论 (0) 编辑
DDD~microsoft NLayerApp项目中的层次结构图[转]
摘要: http://www.cnblogs.com/lori/archive/2013/02/21/2920641.html如果你想学好一样东西,一定要看高手是如何做的如果你想学好.net,一定要看.net framworks源代码如果你想学好分层结构,一定要去看petshop项目如果你想学好MVC,一定...阅读全文
posted @ 2014-03-25 22:17 Turbo Zhang 阅读(122) | 评论 (0) 编辑
小菜白话搭架子8:纪录一下我当年项目中是怎样使用Js的
摘要: 前言: 话说小菜许久没有做Web项目了,对web结合js的使用突然有些了生疏,这里主要是纪录一下当年是怎样使用mvc结合js的,算是为了以后再做web是能够快速上手。展现层的Mvc: 记得当年经理第一次要求我们使用Mvc2.0的时候,java出身的他不止一次说过,我们在使用.net mvc时要本着将...阅读全文
posted @ 2014-03-19 15:55 Turbo Zhang 阅读(163) | 评论 (0) 编辑
小菜白话搭架子7:IOC的使用
摘要: 前言:为什么要研究IOC呢?首先是小菜比较喜欢逛一些招聘网站,从招聘网站上可以看到心的技术趋势以及新的程序员的需要,当然如果有好的机会的话,小菜也不想错过啊。经常会发现招聘上除了基本的.net知识,sql知识外,行业业务能力以及一些常见框架的使用也是条件之一,IOC便是其中之一。什么是IOC:高内聚...阅读全文
posted @ 2014-03-06 22:35 Turbo Zhang 阅读(1243) | 评论 (5) 编辑
小菜白话搭架子6:说说框架中那些为“模式”存在的特殊类型
摘要: 起源: 既然上篇说了不要迷信某系设计模式,但今天为什么要说框架之中的隐形模式呢?其实这些并不矛盾,唯一使你矛盾的是我们的墨水或者说吃的亏还是不够。前几天在QQ群里看到一个刚毕业半年的开发人员在问“领域驱动各个层应该怎样分,每个层都应该放什么东西”,别人给了答案,可是看起来他还是不得其解。因为他可...阅读全文
posted @ 2014-02-16 21:35 Turbo Zhang 阅读(709) | 评论 (1) 编辑
小菜白话搭架子5:云平台上的那个Service Bus
摘要: 说说Windows Azure上的那个Service Bug,Service Bus:多层次的云端程序组件之间的逻辑交互,通过Service Bus进行消息的转换与传递实现相互通信。从而实现企业级系统的分布式。Service Bus存在于多层系统的中间层,不同于常见的直接消息传递(Tcp,Http)...阅读全文
posted @ 2014-02-07 14:48 Turbo Zhang 阅读(678) | 评论 (0) 编辑
小菜白话搭架子4:不再迷信某些设计思想
摘要: 前言 首先解释下“不再迷信”不是不信和不用,而是为了更好的思考与使用。故事起源与最近用Python做的类似于网盘的项目。由于之前更多使用的是高级语言(C#,Java),这种面向企业级的语言为得就是解决繁琐且负责的企业需求。于是设计模式的运用是必要也是必须。但是由于最近的工作内容更多的偏工具,脚本...阅读全文
posted @ 2014-01-25 11:01 Turbo Zhang 阅读(1185) | 评论 (9) 编辑
小菜白话搭架子3:用业务优化提高程序效率
摘要: 前言 首先,小菜从12306说起,记得在《大型网站架构设计》的书中李智慧说过:12306已经不是技术上谈优化的问题了,而是应该在业务流程上优化,去帮助12306为用户更好的服务。现实的开发场景中,作为开发者的小菜时常发现会有的程序员以代码的视角去完成业务,结果产生了一些问题程序,可是往往我们在程...阅读全文
posted @ 2014-01-15 21:14 Turbo Zhang 阅读(891) | 评论 (1) 编辑
小菜白话搭架子2:软件开发的哲学
摘要: 前言: 话说小菜将自己目前的架子简单的和老鸟介绍后,老鸟对小菜提了一下几个问题:这套架子的核心关注点是什么;他能对目前已经可以独立运行的Tool的作用与好处是什么。并放大它;软件是为业务服务的,关注其真正需要去服务的事情;由于软件是给人用的,应该以更好的方式方便其他的Tool的嫁接; 同时老...阅读全文
posted @ 2014-01-01 10:51 Turbo Zhang 阅读(740) | 评论 (1) 编辑
小菜白话搭架子一:有所为,有所不为
摘要: 前言 话说小菜过做已近3年,虽出身PHP后项目大多涉及.net,系统也做得比较繁杂,从常见的CMS,企业OA,ERP,也涉及到电商系统的开发定制,爬虫,工具不一而足,其中web系统居多。 由于表现良好,时常会被经理叫去:“小菜,人是需要成长的啊,不如下个项目你负责吧,锻炼一下吧。”可是小菜对...阅读全文
posted @ 2013-12-30 23:33 Turbo Zhang 阅读(1315) | 评论 (9) 编辑
项目管理杂谈
摘要: 转自:http://www.cnblogs.com/Mainz/archive/2010/07/20/1781344.html项目管理有个前提,资源稀缺,如人力、时间、资金等。比如,有一个政_府官员,有一笔拨款,于是上了一个政绩项 目,这类项目一般不缺资源,所以也不需要进度管理,做啥时候就啥时候,更...阅读全文
posted @ 2013-12-25 09:53 Turbo Zhang 阅读(40) | 评论 (0) 编辑
也谈系统设计的一些原则
摘要: 转自:http://www.cnblogs.com/Mainz/archive/2008/01/13/1037232.html在进行系统设计时,不仅要考虑软件的功能性需求,还要考虑非功能性需求,比如软件的性能(Performance)、可扩展性(Scalability),系统的稳定性(Reliabi...阅读全文
posted @ 2013-12-25 09:39 Turbo Zhang 阅读(40) | 评论 (0) 编辑
使用WCF实现SOA面向服务编程—— 架构设计
摘要: 转自:http://kb.cnblogs.com/page/96479/SOA本身就是一种面向企业级服务的系统架构,简单来说,SOA就是一种进行系统开发的新的体系架构,在基于SOA架构的系统中,具体应用程序的功能是由 一些松耦合并且具有统一接口定义方式的组件(也就是service)组合构建起来的。因...阅读全文
posted @ 2013-12-19 23:20 Turbo Zhang 阅读(123) | 评论 (0) 编辑
谈论项目架构
摘要: 在网上也看了很多东西,关于JAVA软件架构方面的东西,现在还真是很难找到,不 过,软件开发的架构基本是相同的。所以,我在网上查找了很多其他语言关于软件架构方面的文章。再这里也来说说自己对软件架构,特别是在JAVA项目架构方 面的看法。说得不一定对,但这也是我几年来的总结吧。 1. 尽量不要考虑项目...阅读全文
posted @ 2013-10-11 09:48 Turbo Zhang 阅读(171) | 评论 (1) 编辑
初涉电子商务系统开发随想--第四篇-O2O项目变态需求:求华山论剑,分析建模,指点迷津
摘要: 分享一个做过的变态需求,闲话少许,书回正文: 话说小弟以前常做B2C网站及系统,对此已小有心得,一日经理曰:今又接一项目,乃O2O也,与常做B2C无他异也,但做无妨,然时间较紧,只有3月也;闻此,小弟心中一亮,因为1:O2O最近话题比较火,这是第一次做O2O项目,有希望,也有挑战;2.希望套用之...阅读全文
posted @ 2013-09-20 13:44 Turbo Zhang 阅读(806) | 评论 (2) 编辑
初涉电子商务系统开发随想--第三篇-基于Mvc3,Ef,领域驱动电子商务系统的EShop开发
摘要: 前言: 最近做了2个小型的电子商务系统,最近的一个是自己带的项目,由于功能比较简单,业务关系又不是很复杂,所以想依靠了解许久但不觉深入的“领域驱动”思想自己,做一个开发的架构,完成之后希望在这里做一个记录:今天只是个概述,希望以后有机会细致的展开。1.大家都比较喜欢直接看层次图:Domain.E...阅读全文
posted @ 2013-09-08 16:34 Turbo Zhang 阅读(1428) | 评论 (7) 编辑
基于Mvc3,Ef,领域驱动电子商务系统的EShop开发的更多相关文章
- 基于ABP落地领域驱动设计-02.聚合和聚合根的最佳实践和原则
目录 前言 聚合 聚合和聚合根原则 包含业务原则 单个单元原则 事务边界原则 可序列化原则 聚合和聚合根最佳实践 只通过ID引用其他聚合 用于 EF Core 和 关系型数据库 保持聚合根足够小 聚合 ...
- 基于ABP落地领域驱动设计-03.仓储和规约最佳实践和原则
目录 系列文章 仓储 仓储的通用原则 仓储中不包含领域逻辑 规约 在实体中使用规约 在仓储中使用规约 组合规约 学习帮助 围绕DDD和ABP Framework两个核心技术,后面还会陆续发布核心构件实 ...
- 基于ABP落地领域驱动设计-04.领域服务和应用服务的最佳实践和原则
目录 系列文章 领域服务 应用服务 学习帮助 系列文章 基于ABP落地领域驱动设计-00.目录和前言 基于ABP落地领域驱动设计-01.全景图 基于ABP落地领域驱动设计-02.聚合和聚合根的最佳实践 ...
- 基于ABP落地领域驱动设计-06.正确区分领域逻辑和应用逻辑
目录 系列文章 领域逻辑和应用逻辑 多应用层 示例:正确区分应用逻辑和领域逻辑 学习帮助 系列文章 基于ABP落地领域驱动设计-00.目录和前言 基于ABP落地领域驱动设计-01.全景图 基于ABP落 ...
- 基于ABP落地领域驱动设计-00.目录和小结
<实现领域驱动设计> -- 基于 ABP Framework 实现领域驱动设计实用指南 翻译缘由 自 ABP vNext 1.0 开始学习和使用该框架,被其优雅的设计和实现吸引,适逢 AB ...
- 基于ABP落地领域驱动设计-05.实体创建和更新最佳实践
目录 系列文章 数据传输对象 输入DTO最佳实践 不要在输入DTO中定义不使用的属性 不要重用输入DTO 输入DTO中验证逻辑 输出DTO最佳实践 对象映射 学习帮助 系列文章 基于ABP落地领域驱动 ...
- 基于ABP落地领域驱动设计-01.全景图
什么是领域驱动设计? 领域驱动设计(简称:DDD)是一种针对复杂需求的软件开发方法.将软件实现与不断发展的模型联系起来,专注于核心领域逻辑,而不是基础设施细节.DDD适用于复杂领域和大规模应用,而不是 ...
- [.NET领域驱动设计实战系列]专题十:DDD扩展内容:全面剖析CQRS模式实现
一.引言 前面介绍的所有专题都是基于经典的领域驱动实现的,然而,领域驱动除了经典的实现外,还可以基于CQRS模式来进行实现.本专题将全面剖析如何基于CQRS模式(Command Query Respo ...
- .NET领域驱动设计系列(12)
[.NET领域驱动设计实战系列]专题十一:.NET 领域驱动设计实战系列总结 摘要: 一.引用 其实在去年本人已经看过很多关于领域驱动设计的书籍了,包括Microsoft .NET企业级应用框架设计. ...
随机推荐
- 【SSH2(理论+实践)】--Hibernate步步(一个)
前几个博客讨论SSH2该框架Struts,它代表层,集成封装.和使用WebWork作为核心处理,依赖映射是它的处理核心.在使用时需要Struts.xml配置相应Action和Interceptor够完 ...
- NSIS常用代码整理
原文 NSIS常用代码整理 这是一些常用的NSIS代码,少轻狂特意整理出来,方便大家随时查看使用.不定期更新哦~~~ 1 ;获取操作系统盘符 2 ReadEnvStr $R0 SYSTEMDRIVE ...
- Flex TextInput 动态推断输入内容
Flex TextInput 动态推断输入内容 <? xml version="1.0" encoding="utf-8"?> <s:Appl ...
- JavaScript面向对象旅程(下)
JavaScript面向对象旅程 剪不断,理还乱,是离愁. 前面已经提到过新语言开发的两个步骤,分别是:一.定义基本的数据类型,完善结构化编程语言的设计:二.为函数类型绑定this的概念,好在对象的方 ...
- Properties类读写.properties配置文件
package com.hzk.utils; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFo ...
- 单机部署redis主从备份
redis为了避免单点故障,也支持主从备份.个人在做主从备份的实验时,因为机器数量有限,一般非常少有多台机器做支撑. 本文就将叙述怎样在一台电脑上实现redis的主从备份. 同一台机器上部署多个red ...
- Round #169 (Div. 2)D. Little Girl and Maximum XOR
1.首先是要找到一个位置从左至右,作l这一个是0,r这一个是1. 2.实例01011,10100.你将能够找到01111和10000. #include<cstdio> #include& ...
- Linux命令行下载文件百度云盘
本来想直接使用wget去下载.但百度似乎增加限制,下半停产,不就不再下.刚刚好找其他方法.另辟蹊径: http://oott123.github.io/bpcs_uploader/ 版权声明:本文博客 ...
- Centos7系统配置上的变化(二)网络管理基础
原文 Centos7系统配置上的变化(二)网络管理基础 上篇简单介绍了CentOS 7 在服务和网络方面的一点变化,先前很多烂熟于心的操作指令已经不适用了,不管是否习惯,总要接受.熟悉这些变化. 写上 ...
- Swift学习——Swift解释特定的基础(七)
Implicitly Unwrapped Optionals 隐式解析选项 如上所述.可选意味着常数或变量"没有值".通过可选if声明来推断是否存在值,假设有值析值. 有时候 ...