c 应用程序开发框架_企业应用程序开发框架的分类

c 应用程序开发框架

如果您使用Google“最佳Java框架”,那么您很可能会迷失本文 ,它对Java Enterprise世界中的情况进行了很好的概述。 但是,从我的角度来看,它缺少一件非常重要的事情–对上述框架进行分类。

让我们看看这个生态系统的另一个角度,它超越了Java世界。

选择用于开发应用程序的最佳框架(或一组框架),意味着要在以下标准之间寻求最佳平衡:

  1. 适用范围 –使用框架可以开发应用程序的哪一部分? 我需要一套框架还是一个?
  2. 开发速度 –开发将进行多快?
  3. 可管理性和灵活性 –架构,性能和其他限制是什么?

框架分类

将所提及的标准与每个类的参考框架集及其在一个图中的突出特征相结合,我得到以下结果:

构架

高级编程语言或“无框架”方法

这种“没有框架”的方法简直是简陋的案例,它提供了您所能获得的最广泛的适用性以及最高的可管理性和灵活性。 显然,这是开发企业应用程序的最慢方法,因为您需要重新发明所有轮子。 通常,此级别用于构建框架,使开发速度提高一级。

狭窄的框架

该课程的代表人数最多。 所有这些都旨在通过提高抽象级别并为其领域提供清晰的API来在某个相当小的区域内简化开发。 捆绑ORM,中间件,UI,消息传递和其他类型的框架并不是一件容易的事,但是,在此类别中,您需要混合满意的开发速度和高度的灵活性。

代码生成器/聚合器

此类旨在加快应用程序开发的早期阶段。 实际上,它们是基于面向狭窄的框架来配置您的应用程序的。 因此,以JHipster为例,它将使用基于Angular的用户界面生成基于Spring的应用程序。 在启动阶段之后,使用这些框架没有太多价值。

高级全栈框架

此类介绍了Narrow-focused框架上的下一个抽象级别。 因此,您已经拥有了完整的基础架构,可以更快地构建全面的企业应用程序。 以CUBA平台为例,它提供了用于构建3层应用程序的全栈体系结构,并包括企业应用程序广泛使用的常见功能,例如软删除,数据感知组件,文件存储以及高级模块:身份验证和授权,数据审核等。 该类最适合为企业部门开发类似于ERP的系统,业务线应用程序或定制软件。

低/无代码框架

在此阶段,您将完全失去对代码库的控制,仅在预定义的扩展点中开发少量逻辑。 因此,如果这样的框架在性能,部署选项,UI组件,集成等方面满足您的要求,这将是配置应用程序的最快方法。 但是,可能有一天您将无法克服体系结构限制。

摘要

在一组用于开发企业应用程序的框架中选择合适的框架,不仅是要在Internet上寻找“企业的最佳框架”并从列表的顶部进行选择。 首先,它是解决折衷问题,并找到适用范围,开发速度以及灵活性和可管理性满足您要求的正确组合。 解决后,您将可以专注于在正确的类中选择框架本身,检查另一套条件:例如,首选的编程语言,社区的规模,供应商支持的质量,成功的故事等等……

总而言之,我想提供一个表,其中包含框架类和典型应用程序,它们最适合。

典型应用
“无框架”方法
  • 狭窄的框架
  • 低级产品,例如内存网格,大数据处理算法,图像识别等。
狭窄的框架
  • 具有独特(罕见)架构的企业应用程序
  • 微服务
  • 自定义后端
  • 电子商务平台
  • 企业服务总线
代码生成器/聚合器
  • 在启动阶段为与狭窄框架相同的应用程序助一臂之力
高级全栈框架
  • ERP应用
  • 定制BPMS应用程序
  • 主数据管理应用程序
  • 业务线应用
  • 具有典型企业要求的定制应用程序
低/无代码框架
  • 简单的网站
  • 标准在线商店
  • 企业门户
  • 简单/典型BPMS
  • 基本的CRUD应用

翻译自: https://www.javacodegeeks.com/2018/06/classification-development-framework.html

c 应用程序开发框架

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
saf (saf application framework) 是一个高并发的c 应用程序框架,它以RPC为基础,提供了动态载入模块的特性,为服务端开发人员只用关注于程序的业务逻辑,就可以实现远程方法调用,而不会关心底层的通信细节,另外,它还内置了一个简单的http server,用来查看服务器的运行状态。 2:内置简单的http server用于查看系统状态3:模块化的管理,只用在lib中增加动态库就可以达到增加rpc service的目的结构                                                              -------------- -----------        ------------                            /|              | |           |      |            |                          / | Handle Thread| --->- |Net Thread \----->|   Decode   |\                        /   --------------      | ----------- \      ------------  \   -----------------  /    --------------      |               \                    \>|                 |/    |              |     |                \                   />|Dispacher Thread  -----  Handle Thread ----> -----------    \   ------------  /   ----------------- \     --------------      | |           |    \ |            |/                       \    --------------      | |Net Thread  ---- >    Decode   /                         \  |              |     | -----------      \ ------------                           \ | Handle Thread|     |           \        \                                          --------- ----      |            \        \                                                  |          |             \        \                                                 |          |              \      --\---------                                       |          |               \    |            |<-------------------------------------           |                \   |   Encode   |                                                 |                 \   ------------                                                  |                  \  ------------                                                  |                   \|            |                                                 |                    \   Encode    <------------------------------------------------                     ------------ 编译例子1:下载源码,它依赖与sails公共库:git clone --recursive https://github.com/sails/saf.git2:执行编辑脚本:./build.sh3:编译测试样例:cd example ./build_test.sh4:运行测试,比如运行echo_sync:./src/server ./example/echo_sync/client5:增加子模块,配置conf/sails.json: 在modules里增加一行,name是子模块名,path是子模块动态库的路径性能测试一笔记本: T6400 @ 2.00GHz, cpu num:1, cpu cores:2 服务端和客户端都运行在这台电脑上| server handle threads | client call threads | earch threads call num | run time  | |----------------------- --------------------- ------------------------ -----------| |                     1 |                   1 |                 100000 | 0m14.674s | |                     1 |                   5 |                 100000 | 0m30.896s | |                     1 |                  10 |                 100000 | 1m0.848s  | |                     2 |                   1 |                 100000 | 0m14.409s | |                     2 |                   5 |                 100000 | 0m27.911s | |                     2 |                  10 |                 100000 | 0m50.760s |2w tps.因为客户端和服务器在同一台电脑上,所以测试结果会比实际更低.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值