前言
上篇文章介绍了啥是应用系统?应用系统现状如何?存在什么问题?
本期我们就将从具体的应用系统谈起,谈到抽象的应用系统,为SMP打下一个语言基础。
一、什么是具体的应用系统
我们在为各行各业开发应用系统时候,我们的程序员、开发人员看到的是啥,看到的是应用系统名称,看到的是具体的需求和具体的方案,看到的是自己开发的代码,还能看到的是啥?看的是具体的开发金额、开发成本、开发时间。
举例,在银行开发会计系统,首先我们看到的是会计系统这个系统名称,然后看到的是会计系统的需求书和设计方案,然后看到的是自己编写的一段关于会计核算码汇总处理的代码。
再举例,在银行开发国际结算系统,首先我们看到的是国际贸易结算系统名称,然后看到的是国际贸易结算系统的需求书和设计方案,然后看到的是自己编写一段信用卡结汇的处理的代码。
应用系统名称不一样、需求、设计方案、编码都不一样。
可以这样认为,每个应用系统都是由其需求决定的,每个应用系统开发需求是不一样的,所以,应用系统是一个具体的应用系统。
这种具体的视角所见会导致我们认为,世界上没有一个应用系统是一样的,没有程序是一样的。所以我们要定制开发,所以我们需要一个一个满足用户的需求,所以我们要保留我开发方式和开发习惯。
其实这种观点,对科技创新是一种阻碍,我们应该在看到眼前情景下,反问自己我们能不能换一个角度,换一个方法看待应用系统,用创新的角度来看待应用系统?
二、什么是抽象的应用系统
如果我们一直坚信每个应用系统都是不同的,认为现有的开发应用系统方式没有问题,那科技创新就无从谈起。
在长期编程过程中,程序员们应该发现,我们有一些函数可以在不同应用系统中公用,我们有一些程序可以从这个应用系统中拷贝出来,到这个应用系统中进行粘贴修改,继续使用,只是每个程序员对这些现象关注度不同而已。他们并不清楚正是这些共用和复用让具体的应用系统有一些不具体的情况,也就是说应用系统中有一些共性的地方。
我们都知道,绝大部分应用系统有登录、用户管理、权限管理等,这些都共同的需求,共同的功能,但是具体到每个应用系统都会有所不同。这正是这些共有的需求和功能,有人还专门为此做了开发工具。
当然从共有视角看待应用系统还是不够的。
记得前面我们说过计算机就是输入+处理+输出的过程。这是高度抽象的表达,让人一下子对计算机处理有一个简单明了的认知。
同样我们也可以对应用系统进行抽象,当然抽象的方法有多种,抽象的视角有多种,比如,可以从开发费用上来区分小项目、中等项目和大项目,可以从开发工具上来区分是java应用系统、还是php应用系统,可以从开发架构上来区分c/s应用系统、还是b/s应用系统。
当然还可以从行业、企业内部职能角度来区分应用系统,这些区分的确是抽象的,但是,抽象后的意义何在?仅仅是为了统计分析?为了了解应用系统的市场的各类的分布情况?
SMP对应用系统认知是建立在我们所见的应用系统界面和功能上的。
SMP对应用系统的抽象:应用系统是界面+功能。
三、抽象的应用系统是设计开发语言的基础
SMP对应用系统的抽象是为了设计新的开发语言,它的核心就是对界面和功能的设计。因为它认为一个应用系统都是有若干个界面和功能所组成的。
无论是程序员和用户,你们去看看你们的开发过的和使用过的应用系统,是不是这样,界面+功能。
很难找到没有界面的应用系统,即使纯后台的批处理,至少也要有一个批处理开始、批处理结束的界面提示吧!
更没有一个应用系统只有界面没有功能的,因为每个应用系统都是为了满足某个特定主题的需求而开发的,而需求核心就是功能。
如果我们能够设计一款开发语言,能够处理界面、能够处理功能,那么这个语言一定能够开发出应用系统。这也是我们抽象应用系统后得出的推断。
当然,我们接下来就会面临,**什么是界面?什么是功能?**的问题。这同样需求进一步对界面和功能进行抽象,抽象的基础是具体,即我们接触过的界面有多少,我们是否能够对界面进行抽象,我们接触的功能有多少,我们是否够能对功能进行抽象,如果能,我们会一直对抽象的结果进行再抽象,直至能够计算机处理它们。
由此看来,SMP是站在抽象的应用系统高度来对应用系统进行抽象分析的(实际它最初是站在抽象的计算机高度的),这是一种自上而下的抽象方面。所以,SMP架构是非常稳固的。
如果我们从具体的界面,具体的功能开始抽象,也许我们就得不到抽象的应用系统,因为我们可能陷入到具体的界面和具体的功能的汪洋大海之中,不能自拔。
如果没有一个抽象的应用系统,我们就不可能去创建一个新的开发语言,因为语言是面对的是抽象的应用系统,不是具体的应用系统。
如果没有抽象,我们就可能开发出一个具体的开发工具。比如我们开发一个银行软件的开发工具。这当然不是我们想要的结果。
后面,我们会对应用系统相关环节做进一步的分析,看看它们存在哪些痛点,而SMP是否能够针对这些痛点作出相应的对策。
敬请关注:下篇应用系统开发全过程的痛点。

4773

被折叠的 条评论
为什么被折叠?



