首页 > 代码库 > Magicodes框架之路——起航

Magicodes框架之路——起航

前言

从事开发也好几年了,并且最近一直在做架构搭建的工作。这些时间,最大的感悟就是:

  • 只有自己理解了的才是自己的。
  • 对架构这块,若欲立之,必先破之。

故此,才准备利用业余时间来倾力打造这套框架。由于时间精力以及能力有限,也许这套框架初期会有很多不合理之处,但是我相信只要有恒心,这套框架迟早会打磨完美。由于本人秉承做一行爱一行的原则,对代码也比较痴迷,故此命名为"Magicodes框架"。

Magicodes ——意为"Magic Codes"。代码就如同魔术,每一个代码爱好者都可能是一位大魔术师。只要你热衷于此,请跟随我们的脚步一起前行吧。

在最近的一段时间里,我们也组成了Magicodes团队,Magicodes团队是一个崇尚开源的团队,我们决定接下来长期维护此框架并且免费开源。

MagicCode框架优势

MagicCode框架是一套插件框架,目前为WebForm版本,在WebForm版本稳定后,我将继续打造Mvc版本。从整套架构体系的设计方面来说,除了后端框架的插件式设计外,前端框架的模块化设计也是本框架的一部分。

好了,废话不说了,下面就简单列下本框架所涉猎到的一些技术或者概念:

后端

插件式架构(MagicCode架构)

插件式架构就在于提供一个开放的体系结构,以方便中间件的选择、组装和集成,应用框架的重用已成为软件开发生产中最有效的重用方式之一。

基于插件的设计好处很多,把扩展功能从框架中剥离出来,降低了框架的复杂度,让框架更容易实现。扩展功能与框架以一种很松的方式耦合,两者在保持接口不变的情况下,可以独立变化和发布。公开插件接口,让第三方有机会扩展应用程序的功能,有财大家一起发。另外,还可以让开源与闭源共存于一套软件,你的插件是开源还是闭源,完全由你自己决定。

插件框架(MagicCode.Core)

插件框架用于组织和管理系统插件的下载、装载、组合、实例化以及销毁,并提供整套完整的与后台服务通信的操作接口等功能。

插件接口(MagicCode.Web.Interfaces)

系统的所有插件全部通过实现系统框架统一的接口规范,以便有效的组织、管理插件对象。

插件策略属于插件接口的一部分,插件策略用于实现一些比较通用的功能,以便于各个插件调用,目前MagicCode框架提供了以下策略:

  • Cache——缓存策略
  • Email——邮件策略
  • Logger——日志策略
  • ScriptMin——脚本资源压缩策略
  • Sesstion——会话策略
  • SMS——短信策略
  • UserAuthentication——用户验证策略

插件组件(Plus)

插件组件为具体的插件程序,是实现了插件接口的一个独立的程序。Magicodes团队会提供一些通用插件以供用户免费使用:权限菜单等通用系统管理插件、默认主题。

流程引擎

我们将打造一个轻量级的流程引擎插件,而且也是开源的。这里就不多介绍了,到时让我们用代码说话!

路由系统

动态映射Url,以便使Url更友好或者更易于理解。你的Url你做主。

WebAPI

Magicodes除了支持自有的WebAPI之外,还支持微软的WebAPI。并且支持Rest协议和OData。API一次编写,适应所有终端(PC、移动),适用主流格式(JSON、XML、BSON)。一套API,打遍天下无敌手。而且API友好,使用方便,基于Rest协议的WebAPI,让你极其方便的实现你的增删改查。基于OData协议的API,让你查询爽到爆。

事件管理

在插件中,您可以订阅任何全局事件,那么如何处理,是您说了算。框架只是平台,但是亦不限制您的自由发挥。

性能监控

Magicodes除了有完善的日志记录外,还带有性能计数器,代码哪里慢了?看看计数器怎么说吧。

配置管理

业务系统离不开各种配置,从网站设置到邮件配置等等,Magicodes自带一些默认配置,比如系统配置、邮件配置、站点配置等,能够让您直接使用,同时您也可以设置自己的配置,以供插件使用。

EntityFramework

ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案。这里我比较喜欢Code First+迁移。

前端

前端模块化

与后端插件架构类似,编程语言发展到一定阶段,必然要经历拆分模块化的过程,以利于团队协作与维护。而前端开发,在经历过纷乱的阶段,也进入了模块化开发的时期。

功能齐全的UI

Magicodes的系列主题将为您提供全面美观的界面,并且有足够多的HTML元素、HTML和CSS组件以及Jquery插件供您选择。让您可以快速构建界面出色、体验优秀的跨屏页面,大幅度提升你的开发效率,让你的网站瞬间变得高大上:

1.    多套主题

2.    前端组件丰富

3.    丰富实用的框架API

一个框架,多种设备

你的网站和应用能在Magicodes的帮助下通过一份代码快速、有效适配手机、平板、PC设备。我们的目的在于最大限度的节省大家的开发工作量

 

MVVM

MVVM模式已经成为前端开发的主流,面对日益复杂的前端,模块化只是起点,响应式只是手段,MVVM也只是里程碑。自打一看到MVVM框架,我们就爱上了她,陷入其中不可自拔。也许这就是一见钟情的魅力

尾声

Magicodes正式开始宣传了。本框架将会长期维护并且更新下去,而且尽量每周分享一篇技术贴或者架构心得贴,以促进大家共同进步,如有不对的地方,请各位大神指正。

 

另外,Magicodes团队是一个崇尚开源的团队,再好的框架,再好的代码也得有人欣赏不是?再说了,我们追求的不是盈利,我们是一群疯狂的代码爱好者,我们追求的是架构的不断完善,我们追求的是你用了我们框架然后给赞!开源,是我们的理念。同时,我们也希望大家也能贡献自己的插件源码,让我们一起前行。

 

预计本周,框架将提供免费下载,请关注我们的官网和我的博客——http://www.magicodes.net。

 

最后,分享一首本人前段时间偶有所感而得的诗:

 

夏雪

 

你是一朵特立独行的雪花

就这么突兀的出现在这个城市的晴空

冰晶的容颜,雪白的罗裙

仿佛整个烈日里都是绽放着的你的美

 

我只是这个城市的过客

茫然而不知所终

你缓缓飘下,然后又不顾一切地融化在我的手心

你给了我你生命中的所有的绚烂

而我却是一个过客

 

也许你不该出现在这个烈烈的晴空

也许我不该行走在这个喧嚣的城市

只是,

不知这一刻的邂逅,可是为了那一刻的永恒

 

Magicodes框架之路——起航