DuckPhp 1.2.6 发布(Service =>Business)

2020-09-16 11:43:40 +08:00
 dvaknheo
项目地址: https://github.com/dvaknheo/duckphp
作者 QQ: 85811616
官方 QQ 群: 714610448

支持 windows 。作为一个对初学者友好的框架,这是重要而难度不大的。

最大变更是架构更新。

原先的 Service 重命名为 Business 。
MVC 缺的这个层,之前称呼为 Service 。 现在发现 Service 被叫混乱了。
第三方的东西,以及部分完成 业务逻辑 的也被称呼为 Service 了。
请大声回答, 业务 的英文单词是什么。
Business! 所以就叫 Business 。

这导致了模板文件目录的变更
Service 目录改名 business 了。
Base 也是 B 开始的,所以换成 System 目录, 里面还是 Base 开始的。
--
不管这些怎么变,我们的业务代码也基本不用变。哦,变的是
DB_R ,DB_W 这样混乱的写法,重新整成 DbForRead DbForWrite 了。
我们规范函数名字里的缩写词,统一用大写开头全小写形式。

添加了事件系统,而且是一对多的,这回可以到处飞事件了。

有了部分的自动文档脚本。 模板文件里有中文注释了。和文档的注释是统一的。
说不定哪天,我们需要英化呢。

也带有了 api 服务器的功能 可以看相关例子,要优化好用就下个版本的事情了。

不到 50 行的演示例子。template/public/full/api.php
```php
<?php declare(strict_types=1);
/**
* DuckPhp
* From this time, you never be alone~
*/
require_once(__DIR__.'/../../autoload.php'); // @DUCKPHP_HEADFILE
use DuckPhp\DuckPhp;

class BaseApi
{
//use \DuckPhp\SingletonEx\SingletonEx;
}

$options = [
'is_debug' => true,
'skip_setting_file' => true,
'override_class' => '',
'ext' => [
'DuckPhp\\Ext\\RouteHookApiServer' => true,
],
'api_class_base' => 'BaseApi',
'api_class_prefix' => 'Api_',
];

DuckPhp::RunQuickly($options);
////
/// 后面是业务代码
// 这里自己加 api
class API_test extends BaseApi
{
public function foo()
{
return DATE(DATE_ATOM);
}
public function foo2($a, $b)
{
return [$a + $b, DATE(DATE_ATOM)];
}
}
////////////////
// 访问方式 http://duckphp.demo.dev/api.php/test.foo2?a=1&b=2
// 访问方式 http://duckphp.demo.dev/api.php/test.foo

//
```
--
从 6 月 22 日发布 1.2.5 到 9 月 16 日发布 1.2.6 。 本来是想做一些小调整后一个月发布的。
第一个月懒,没什么改,然后 8 月初想到了大改动。 所以延迟到现在。

这个版本应该能作为 1.3 的基底了吧。能转入其他杀手级应用的开发来带动了吧。
我曾经在 4 月底的时候,用 1.2.3 重写了 yii3 的 demo
定个要求就是下个版本上 techempower 对比一下。加油!

--
尝试贴图一下
这是除了事件和异常之外的应用架构图
![DuckPhp]( https://raw.githubusercontent.com/dvaknheo/duckphp/master/doc/arch_all.gv.svg)

框架系统架构图,可以和其他框架对比着看
![DuckPhp]( https://raw.githubusercontent.com/dvaknheo/duckphp/master/doc/duckphp.gv.svg)
1627 次点击
所在节点    PHP
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/707500

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX