随笔分类 - SharpDevelop 0.92
摘要:从上周3开始,第二轮研究SharpDevelop,已经将近一周了,决定从今天开始,把每天的心得写下来,然后再整理成技术文章。因为之前8月份,研究过Core层,所以这一周在逐步向Base层过渡。 上周概况: 周三,研究Codon和Condition 周四,研究Property 周五,研究Services 周六,研究Main函数,StartUp模块 周日,研究Base层基本架构,同时开始将SharpD...
阅读全文
摘要:第一轮研究: 2007.7.19-2007.8.1 1.SharpDevelop使用心得 2.SharpDevelop插件图 3.从分析Main函数开始 4.AddIn插件体系 5.Service:服务层分析 总纲 6.SharpDevelop 属性结构分析 7.SharpDevelop 属性服务 8.SharpDevelop ...
阅读全文
摘要:今天去www.sharpdevelop.com转了一圈,找到了这个东西,不错不错! # Develop change list SharpDevelop 2.2.0.2595 (6/28/2007) Additional and improved templates Boo support updated to version 0.7.8 NUnit sup...
阅读全文
摘要:本篇分析Core\Services的PropertyService类,该服务是用于所有需要属性持久的地方。因为涉及到属性持久化的存储位置,所以类中存在5个静态常量,很重要: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> readonl...
阅读全文
摘要:属性结构位于Core/Property,先看属性系统的工作方式,如图:IXmlCovartable接口提供了对象与XML节点互相转换的方法,可以认为是序列化的另一种实现方式。据作者说,这两个方法的实现要比序列化速度快很多。IProperties是主接口,应用程序其他部分都通过调用该接口进行工作。它提供了对属性的读写操作,以及一个自身对象的复制方法。DefaultProperties是IProper...
阅读全文
摘要:Service在SharpDevelop中的用途:需要一些静态辅助类,协助主流程完成一些额外扩展的细小琐碎的功能,例如OpenFile功能,例如获取编译器输出位置。原先SharpDevelop使用只含静态成员的类,但是后来发现需要定义多于10个以上的静态类,不易维护;而且难以替换,难以扩展。现在0.92版本使用ServiceManager单件访问这些辅助功能。Service的结构在Core/Ser...
阅读全文
摘要:这套体系是由xml与相关类共同作用形成的。xml文件为:SharpDevelopCore.addin(搜索一下,这个文件是唯一的)相关类在:Core/AddIns在逻辑上,SharpDevelop有一棵插件树AddInTree,树上有很多节点AddInTreeNode,对外表现为SharpDevelopCore.addin这个xml文件。每个AddIn插件由Codon和Conditional组成。...
阅读全文
摘要:最BT的就是这里了,连个Application.Run()都没有——而全都是从AddIns读取。 1 [STAThread()] 2 public static void Main(string[] args) 3 { 4 commandLineArgs = args; 5 bool noLogo = fals...
阅读全文
摘要:1.它只有4.79M大小,真是小到让人不可思议。为什么呢?想想Visual Studio.NET吧,几个G的大小,吓都吓死人了,实现的还不就是那么些功能?2.使用SharpDevelop的时候,你可以把原来用Visual Studio.NET建的工程导入成SharpDevelop中的工程,也可以把SharpDevelop中的工程导出成Visual Studio.NET下的工程。这样,就可以使的Sh...
阅读全文