惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News and Events Feed by Topic
爱范儿
爱范儿
Blog — PlanetScale
Blog — PlanetScale
The GitHub Blog
The GitHub Blog
C
Check Point Blog
小众软件
小众软件
I
InfoQ
罗磊的独立博客
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Engineering at Meta
Engineering at Meta
酷 壳 – CoolShell
酷 壳 – CoolShell
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Hugging Face - Blog
Hugging Face - Blog
博客园 - 三生石上(FineUI控件)
MyScale Blog
MyScale Blog
The Cloudflare Blog
Last Week in AI
Last Week in AI
腾讯CDC
Y
Y Combinator Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
雷峰网
雷峰网
B
Blog
T
Tailwind CSS Blog
MongoDB | Blog
MongoDB | Blog
A
About on SuperTechFans
D
Docker
博客园 - 司徒正美
博客园_首页
Recent Announcements
Recent Announcements
D
DataBreaches.Net
阮一峰的网络日志
阮一峰的网络日志
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
G
Google Developers Blog
Microsoft Security Blog
Microsoft Security Blog
F
Fortinet All Blogs
Stack Overflow Blog
Stack Overflow Blog
aimingoo的专栏
aimingoo的专栏
N
Netflix TechBlog - Medium
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 聂微东
GbyAI
GbyAI
Jina AI
Jina AI
V
V2EX
Vercel News
Vercel News
IT之家
IT之家
WordPress大学
WordPress大学
M
MIT News - Artificial intelligence
NISL@THU
NISL@THU
V
Visual Studio Blog
C
Cybersecurity and Infrastructure Security Agency CISA

博客园 - aimin

SharePoint Foundation中文档与文件、单据类型定制办法 SharePoint2010的牛刀:一、新的服务应用程序架构 Silverlight甘特图:五、Gantt图控件[已开源发布Codeplex] Silverlight甘特图:四、树形DataGrid开发原理 Silverlight甘特图:三、甘特图面板开发原理 Silverlight甘特图:二、时间线开发原理 Silverlight甘特图:一、甘特图介绍及开发者之系统准备 SharePoint Silverlight Workspacer 1.0 Silverlight Gantt Chart 改进计划 招SharePoint人才必须看ASP.NET底子 杂谈项目中的那些事儿:计划与变化 杂谈项目中的那些事儿:人的力量 杂谈项目中的那些事儿:理想与现状 【转】7 Signs Your SharePoint Project Is in Trouble 【转】7 Keys to Microsoft SharePoint Success silverlight Gantt Chart Demo 谈谈代码设计 Show一下Silverlight写的GanttChart SharePoint特性一览
为业务建模——MOSS的优势与劣势
aimin · 2010-06-10 · via 博客园 - aimin

虽然2010已经发布了,但是在没有SP *之前,还是不打算正是应用到项目中。相信任何一个明智的项目技术决策人员会同意这个说法。 

所以打算使用SharePoint的项目而言,WSS 3.0 或 MOSS 对于在运行和将要实施的项目,应该还是首倡之选。

虽然较SPS 2003有很大的改进,但WSS3、MOSS依然被许多技术人员视为Portal和OA的选项。对于更加复杂的ERP、PDM/PLM,总显得有些力不从心。ERP 我不是很熟悉,就PDM或PLM,宏观而言,复杂的产品结构、交错的关联关系、庞大的数据容量都给基于SharePoint的项目实施带来了很大困扰;从细节而言,譬如:缺少事务机制、无法建立结构基线版本、WSS3中虽然有Document Library, 但是它却没有文档的概念,只有文件的概念 (在PDM中,版本控制主要是针对文档而言的,文档在产品生命周期不同阶段有不同的含义,它最终会产生一个或多个实体文件。)

下图只是一个现实业务模型的冰山一角:

 

但SharePoint还是一个非常不错的平台 (WSS MOSS SP2+1个Hotfix后,还是相当稳定的)

开放性

SharePoint是开放的,Web Service、BDC、XML/XSLT;众多公开、易于理解的接口;EventHandler (其实只是被动的事件处理,自定义事件无法享受EventRceiverManager可注册、事件队列等优秀的EventBus机制), 使用Feature包装技术点,使之功能化,并部署至服务器场;ASP.NET、WCF、AJAX的直接支持;MasterPage对页面布局的灵活控制;对Office的天然整合自然不用多说。总而言之,只要你愿意,可以在充分利用其优势的情况下,将它改的“面目全非”,当然对它的改动必须是在充分理解了SharePoint庞大规则的基础之上。在SharePoint实施过程中,常常听到重写某某控件,重写某某页面的决策,这些决定太过轻率,并会导致不可测的后果。

可建模(标准化)

SharePoint提供了ContentType作为主要的建模机制,ContentType可定义:栏位(属性)、事件处理、新建编辑查看表单、绑定工作流等。 如果涉及多个项目,可以将模型应用到所有项目,实现项目管理、设计管理、生产管理的标准化。ContentType的可继承性也确保了个项目模型定制的个性化能力。但是由于Lookup字段类型能力比较弱,无法在建立模型时确定各业务对象类型之间的关系。而这个缺失的能力可以通过扩展开发来实现,在后面的章节会详细解释。

可定制

SharePoint提供的组件都是可以定制或定制开发的。举两个常见的例子:SharePoint中典型的两个WebPart,ListViewWebPart和ListFormWebPart。

ListViewWebPart: 许多开发人员一看是sealed,就认为难以扩展,难以实现想要的效果,其实不然,因为ListViewWebPart只是一个空壳,数据-HTML的转化实际上是靠VIEW CAML完成的,在SharePoint 2010版本中,则提供了更通用的标准语言XSLT来替代这个转化规则。在SharePoint 2007中,我们可以通过定义CAML实现我们想要的HTML效果,也可以注册Custom Action来添加操作,同样可以定义新的ToolBar,包括New菜单等等。这些都是在保留了ListViewWebPart本身能力基础之上的扩展。

ListFormWebPart: 这个就更加不用多说了,除了Custom Action之外,可以通过开发或定制ASCX用户空间,置入12 templates controltemplate下,实现自定义的风格。

在对WSS3, MOSS的优劣势进行简单分析后,我们回归主题——为业务建模

在许多与传统业务紧密相关的IT项目中,进行as - is 和 to-be分析后,可以进行业务层次的对象建模。在传统的开发模式中,最终会映射为关系数据库的数据表关系表和抽象的逻辑层;而在基于类似SharePoint这种对象型数据库,实施的项目时,由于它已经在关系型数据库中进行了进一步的基于对象的架构,所以只需要进行简单的转化和抽象,就可以直接对业务层次的对象进行系统建模。