每个人心里都有一个叫做“童年”的地方,每个童年都是和某些个爱好画上等号,我们甚至可以这样表述童年的不同阶段:玩电子游戏的时代、看武侠故事的时代、听磁带音乐的时代等等等等,而无论这些爱好是多么的不同,有一点始终不变:我们总是在幻想有朝一日,能带着梦想去闯荡世界,哪怕是打职业竞技游戏,或是唱歌出专辑,甚至是:仗剑走天涯!
这种为了单一的技能而奋斗着,单纯而又扯淡的梦想,在我做了程序员之后竟然渐渐清晰起来!有一天我突然就想:能不能就只用js一种语言来开发程序!
后来我遇到了大家都知道的困难,比如不能数据持久化、不能跨域、不能xxx,好吧,这并不是什么大问题,为了克服这些个为安全着想的毛病,我们需要一门后台语言来hold住,比如说C#。大家都知道js想和c#交互,就得用上ajax,让前台向后台发送请求,然后后台响应,这个过程会伴随很多机械重复的代码量,一个很自然的想法就是:能不能全自动呢?
带着这个想法,我设计了CaiShen快速开发框架,它的想法如图
透过这个框架,js可以直接调用c#编写的函数,以达到访问数据库、文件系统、网络资源等等的js涉及不到的资源,当然了,这完全可以手动编写接口,但是这里追求的是高度自动化集成。
这样的话,后台的人员开发c#,前台的人员开发js,用这个组件一整合,就什么都搞定了!这种前后端彻底分离的思路彻底的解放了js开发人员,过去由于js能调用的东西和后台过于紧密,且需要手动编写全部代码,所以常常是前台等着后台,而现在后台功能和前台能调用的功能之间无缝对接,就能实现破天荒的后台等前台了,这是历史性的转变!
前后分离还带来了高度的功能内聚,由于后台可以独立的运作,就有了空间和自由去规划,一般的,再复杂的业务环境下也不过是数百个功能,其余要么是这些基本功能的变形,要么就是几个基本功能的组合,而这些都能通过js来完成。
好吧,今天把CaiShen框架下降到.net 4.0了,使用方法保持不变,为了方便xp和vs2010的使用哇!恩,就说到这里吧!
来吧,试试我的CaiShen!
下载地址:http://files.cnblogs.com/caishen/CaiShen2014-03-31-23-01-44.rar