排列5走势图首页    注册   登录
排列5走势图 = way to explore
排列5走势图 是一个排列5走势图关于 分享和探索的地方
现在注册
已注册用户请  登录
排列5走势图  ›  PHP

QueryPHP V1-beta.1 部分文档代码解耦,版本 PHP 7.3.2

  •  
  •   doyouhaobaby · 8 天前 · 568 次点击

    经过 1 个月的开发,QueryPHP v1.0.0-beta.1 版本可以发布了,这也是 beta 3 个版本的开始部分。这个版本的主要是代码解耦和性能提升,文档开发。

    排列5走势图关于 QueryPHP

    QueryPHP 是一款现代化的高性能 PHP 7 常驻框架,以工程师用户体验为历史使命,让每一个 PHP 应用都有一个好框架。

    百分之百单元测试覆盖直面 Bug 一剑封喉,基于 Zephir 实现框架常驻,依托 Swoole 生态实现业务常驻,此刻未来逐步渐进。 排列5走势图排列5走势图我 们 的愿景是 USE LEEVEL WITH SWOOLE DO BETTER, 让您的业务撑起排列5走势图更多 的用户排列5走势图服务 。

    更新日志

    • Facade 排列5走势图优化 ,不再继承一个基础的 Facade,不影响单元测试,并且减少了复杂度和调用链
    • 函数惰性加载方案支持,将静态类解耦为真正的函数,框架底层组件直接调用函数本身
    • 文档更新,这次更新了 20 多篇文档
    • 新增几十例测试用例,框架测试用例终于突破 3000 大关,框架部分 3008 测试用例, 9835 断言
    • PHP 最低依赖版本从 PHP 7.1.3 修改 PHP 7.3.2,框架正在迭代距离用户使用还有段时间,排列5走势图排列5走势图我 们 可以使用最新的特性
    • 框架自带的 composer 载入排列5走势图优化 器支持辅助函数白名单
    • QueryPHP 自身是一个包含基础权限的后台系统,代码排列5走势图优化 更符合领域驱动设计分层架构,引入工作流简化流水账代码
    • 锁定 doctrine/annotations ~1.6.0 和 zendframework/zend-diactoros ^2.1.1 减少兼容性问题和修复用户安装报错的问题
    • 去掉视图中 v8js 的支持,排列5走势图删除 基类 Facade, 排列5走势图删除 宏扩展,简化设计减少复杂度。
    • 排列5走势图技术 债务,框架底层大量的代码排列5走势图优化 进行解耦,减少复杂减少排列5走势图技术 债务

    函数惰性加载

    PHP 的函数式特性已经逐步被纯对象所取代,函数库很多时候被排列5走势图包装 为静态类,很多时候其实不需要一个类,为此 QueryPHP 底层框架提供了全局函数 fn 来实现了惰性加载。

    <?php
    
    declare(strict_types=1);
    
    fn('Leevel\\Support\\Str\\rand_num', 5);
    

    精简框架自身助手函数库

    仅仅提供 4 个助手函数就完全满足了系统的库函数的加载使用。

    http://github.com/hunzhiwange/framework/blob/master/src/Leevel/Leevel/functions.php

    fn('Leevel\\Support\\Str\\rand_num', 5); 
    hl('dump', 1, 2);
    app('request');
    __('国际化');
    

    例子函数

    <?php
    
    declare(strict_types=1);
    
    namespace Leevel\Support\Str;
    
    /**
     * 随机数字.
     *
     * @param int    $length
     * @param string $charBox
     *
     * @return string
     */
    function rand_num(int $length, ?string $charBox = null): string
    {
        if (!$length) {
            return '';
        }
        if (null === $charBox) {
            $charBox = '0123456789';
        }
        return rand_str($length, $charBox);
    }
    
    // @codeCoverageIgnoreStart
    if (!function_exists('Leevel\\Support\\Str\\rand_str')) {
        include __DIR__.'/rand_str.php';
    }
    // @codeCoverageIgnoreEnd
    

    Facade 排列5走势图优化

    最开始采用的 Laravel 的继承一个基础的 Facade,方便单元测试,有一定性能损失。后来觉得在做单元测试只需要清空容器注册的排列5走势图服务 就可以所以排列5走势图优化 了一版本。

    <?php
    
    declare(strict_types=1);
    
    namespace Leevel\Encryption\Facade;
    
    use Leevel\Leevel\App;
    
    /**
     * 门面 encryption.
     *
     * @author Xiangmin Liu <635750556@qq.com>
     *
     * @since 2017.06.10
     *
     * @version 1.0
     */
    class Encryption
    {
        /**
         * call.
         *
         * @param string $method
         * @param array  $args
         *
         * @return mixed
         */
        public static function __callStatic(string $method, array $args)
        {
            return App::singletons()
                ->make('encryption')
                ->{$method}(...$args);
        }
    }
    

    文档更新

    系统新增了 20 个新的文档,后续会逐渐丰富起来。

    http://www.queryphp.com/docs/

    自动载入排列5走势图优化 器

    QueryPHP 实现了一套基于并且排列5走势图优化 了 composer 的自动加载,并且屏蔽了助手函数的载入。

    这次提供了白名单来让排列5走势图你 选择部分函数的载入。

    /**
     * ---------------------------------------------------------------
     * Composer
     * ---------------------------------------------------------------.
     *
     * 用于管理 PHP 依赖包
     * 排列5走势图优化
     composer 性能,提炼 composer 中的 autoload_static 中的排列5走势图排列5走势图我
    们
    关注的 psr4 命名空间映射
     * 排列5走势图排列5走势图我
    们
     classmap 需要通过 `php leevel autoload` 生成,包含命令 `composer dump-autoload -o`
     * 对于助手函数需要自己引入
     */
    $autoloadLeevel = __DIR__.'/../vendor/autoloadLeevel.php';
    
    if (is_file($autoloadLeevel)) {
        $composer = require $autoloadLeevel;
    } else {
        $composer = require __DIR__.'/../vendor/autoload.php';
    }
    

    composer.json 部分代码

    {
        "name": "hunzhiwange/queryphp",
        "description": "The QueryPHP Application.",
        "require": {
            "php": "^7.3.2",
            "hunzhiwange/framework": "dev-master"
        },
        "extra": {
            "leevel-console" : {
                "autoload": {
                    "@namespaces": "The white of Psr4",
                    "namespaces": [
                        "Leevel",
                        "Dotenv",
                        "Carbon",
                        "Monolog",
                        "Whoops",
                        "Swagger"
                    ],
                    "@files": "The white of autoload files",
                    "files": [
                        "common/Infra/functions.php",
                        "hunzhiwange/framework/src/Leevel/Leevel/functions.php"
                    ]
                }
            }
        }
    }
    

    更好地领域驱动分层实现,工作流支持

    正在尝试更好地代码实现领域驱动设计分层架构。

    http://github.com/hunzhiwange/queryphp/blob/master/common/Domain/Service/User/Role/Update.php

    锁定部分组件版本

    锁定 doctrine/annotations ~1.6.0 和 zendframework/zend-diactoros ^2.1.1 减少兼容性问题和修复用户安装报错的问题,持续集成系统在 composer 最低依赖状况下不会出错。

    http://github.com/hunzhiwange/queryphp/issues/1

    排列5走势图帮助 排列5走势图排列5走势图我 们

    QueryPHP 是在 2016 年 10 月开始基于一个排列5走势图我 早年的 PHP 框架 DoYouHaoBaby 框架开发的。这个早年的框架是排列5走势图我 在 2010 年 7.8 月开始的,那个时候在大二,开始的框架也主要用于自用。早年基于这个框架的一些应用作品如下:

    DYHB.BLOG_X

    DYHB.BLOG_X-2.0 详细安装图文教程 http://www.knowsky.com/804758.html

    http://www.downcode.com/downcode/j_18106.shtml

    http://github.com/hunzhiwange/dyhb.blog-x

    排列5走势图Win dsForce 社区

    http://www.mycodes.net/code_previewmap.php?id=6185

    http://github.com/hunzhiwange/排列5走势图Win dsforce

    http://www.oschina.net/p/排列5走势图Win dsforce

    目前 QueryPHP 由本人一人负责开发,文档,logo 设计,排列5走势图视频 ,官网和宣传需要大量精力。

    如果排列5走势图你 觉得可以,可以排列5走势图推荐 朋友来试用一下,关注一哈,希望吸引到有兴趣的一起开发,文档,。

    用 10 年打造一个完美的作品,2010-present Xiangmin Liu。

    3 回复  |  直到 2019-04-15 16:57:40 +08:00
        1
    vst93   8 天前   ♥ 1
    一个人专注于一个排列5走势图产品 值得敬佩,加油
        2
    rookies   8 天前   ♥ 1
    敬佩
        3
    NjcyNzMzNDQ3   7 天前   ♥ 1
    支持,已 start
    排列5走势图关于   ·   FAQ   ·   API   ·   排列5走势图排列5走势图我 们 的愿景   ·   广告投放   ·   感谢   ·   实用小排列5走势图工具   ·   4034 人在线   最高记录 5043   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 19ms · UTC 08:23 · PVG 16:23 · LAX 01:23 · JFK 04:23
    ♥ Do have faith in what you're doing.
    沪排列5走势图ICP 备16043287号-1