什么是FullStack设计

摘要:
全栈的设计不盲目追求层之间的松散机制,而是增强层之间的内聚和内聚,以实现粗粒度的封装和重用。可以说,全栈的设计具有很大的威力。与普通的单级设计相比,它在开发效率方面并不处于同一水平。基于28项原则的设计可以满足80%的呼叫者的直接开发,19%的呼叫人可以通过扩展点扩展以满足他们的需求,对于1%的钻角需求,他们可以构建自己的车轮。

经常看到Full-Stack设计、Full-Stack设计,到底什么是Full-Stack设计呢?

full-stack 的设计,意味着各层能够无缝的集成在一起,遵循的DRY原则(don't repeat yourself),将各层共用的东西,抽取出来,并通过自顶向下的设计,无缝的集成在一起,粘合在一起,达到更高层次、更粗粒度的重用,同时为了保证灵 活的可扩展性,在更高、更粗的粒度上遵守开放-封闭的原则,在各层的各个关键点,要提供诸多的钩子,回调的接口,供使用者扩展。

full-stack的设 计,在层与层之间,并不一味的追求松散的机制,而是相反,在层与层之间增强一定的内聚性,粘合力,以此来达到粗粒度的封装与重用。

可以说full-stack 的设计,其爆发出的威力是巨大的,相对普通的单一层面的设计,在开发效率上不是一个层次上的,基于28原理的设计,可以满足80的调用者直接开发,19%的调用者,通过扩展点进行扩展来满足需求,对于1%钻角尖的需求,自己去造轮子。

spring, ruby on rails, Zend都是这样的工业级强度的full-stack的设计,我们的设计如果以他们为中心,生产力得到了极大的提高。

 
~~以上解释来自网络~~

免责声明:文章转载自《什么是FullStack设计》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C#学习笔记(35)——事件做的登录案例博客园中随笔,文章的区别下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

MySQL的安装、配置文件和初始化

MySQL基于源代码的安装本文以MySQL5.1.73+Centos6.5作为安装演示,其他版本安装方法大同小异。首先下载MySQL5.1.73的源代码包。比如MySQL5.1.73,安装在目录/usr/local/myql-5.1.73,然后做一个软连接/usr/local/mysql指向真正的版本路径。进行到此,MySQL库以及可执行程序已经编译出来,可...

解决安卓手机连接wifi总弹出“已登录到Wlan网络”

一些Android机型在连接到wifi时会不断提示,“如果你不小心打开了这个提示,你会跳转到一些广告网站。这是因为谷歌服务器会在本地Android系统通电后发送连接请求。”。一些手机制造商的工程师将此连接服务器设置到一些广告网站并登录网络“我们可以管理设备或手机模拟器的状态,还可以执行许多手机操作,如安装软件、升级系统、运行shell命令等。adb是连接安卓...

influxdb简单使用

之前对influxdb有一个简单的了解和入门的使用,近期由于想使用influxdb做一点东西玩玩,又要捡起influxdb。而在influxdb下没有细分的表的概念,influxdb下的表在插入数据库的时候自动会创建。更多用户权限设置可以参看官方文档:https://docs.influxdata.com/influxdb/v1.0/query_langua...

【01】如何在XMind中排列自由主题

如何在XMind中安排免费主题。在XMind思维导图软件中,用户可以根据需要添加免费主题。然而,由于自由主题的灵活性,它并不整洁,与需要控制界面有序排列的用户相比,这会造成一定的麻烦。首先选择要组织的所有免费主题,单击,然后在下拉框中选择以安排免费主题。有六种排列方式:左对齐、垂直居中、右对齐、顶部对齐、水平居中和底部对齐。...

flutter vscode+第三方安卓模拟器

1.首先打开夜曲模拟器2.Win+R,选择cmd,在第三方模拟器安装目录的bin目录下输入夜曲模拟器,然后运行命令:nox_Adb.execonnect127.0.0.1:620013。打开项目终端的vscode并建立连接:adbconnect127.00.1:62001(夜神模拟器的默认端口)4。查看连接:adbdevices或不使用第三方模拟器:1.打开...

JavaMail给QQ邮箱发邮件报错

org.springframework.mail.MailAuthenticationException:身份验证失败;nestedexceptionisjavax.mail.AuthenticationFailedException:535错误:http://service.mail.qq.com/cgi-bin/help?subtype=1&&a...