我在一年多前开始从事Sharepoint开发,当时我接手了公司的一个WSS 3.0解决方案。
个人认为,对我来说,了解一下Sharepoint开发是一个很好的步骤,因为有很多问题(如安全性、负载平衡、幽灵)需要看到WSS团队如何解决,这有助于我解决其他解决方案中的问题。但是我并不全职从事WSS解决方案开发,所以其他人需要回答每天使用WSS的情况。
WSS和Sharepoint都是ASP.NET平台的扩展,因此,任何在ASP.NET和.NET上的经验都应该是一个初学者创建Sharepoint解决方案的良好基础。在开始WSS项目之前,我阅读了Inside Microsoft Windows Sharepoint Services 3.0书籍,以了解基本概念和wss解决方案架构。
我很快发现,你必须拥有一个虚拟机环境进行Sharepoint开发,因为在客户端工作并附加到服务器上的远程进程以进入调试模式是很痛苦的。因此,我建议创建一个安装有Visual Studio并具有访问源代码控制系统的MOSS虚拟机。在该计算机上开发解决方案,完成后将其检入源代码控制。
我还建议查看开发工具,例如stsdev和wspbuilder,以帮助您构建解决方案,这些工具会大大简化您的开发过程。还有很多可用于网站的工具,如codeplex等,可以帮助您解决问题。
有时候开发这些解决方案可能会很困难,更改可能需要重启IIS池或者进行强制性的IISReset,错误信息有时可能会比较难懂。但是你很快就会掌握技巧并知道该去哪里查找。Sharepoint也能够帮助你很多,我曾经从客户那里收到了无数问题,而这些问题都可以通过标准的 out-of-the box web parts 来解决,这样我就不必编写任何代码来让我的客户满意 :)
此外,Sharepoint还要求以特定方式编写解决方案,例如 12 hive 文件结构,因此它可以帮助你规范化你的解决方案。
文档非常缺乏,所以你必须经常依赖 Reflector 和其他工具来了解框架内部的情况。希望在2010年能够得到改善。
初学阶段的学习曲线很陡峭,需要学习很多新的概念和技术,例如Sharepoint中的工作流、特征、Ghosting和代码访问安全等。Sharepoint使用很多Xml配置,开发人员必须学会使用这些配置,包括站点定义、列表模板等。有时候我会陷入 Xml 编辑模式,一整天都无法弄清为什么事情不按照预期进行。
这些只是我个人的一些想法,我主要从事 WSS 开发,如果有人能够就Sharepoint中的Web Part配置发表评论,例如如何配置搜索,那将会非常棒。虽然我自己并没有做过这方面的工作。