Comments (18)
#328 相似,希望新版本可以下优化组件+应用 结构 😂
from webman.
之前版本是不重复的,helpers.php,start.php, windows.php,bootstrap.php只放在应用目录里,但是升级会遇到麻烦。
用户更新了webman-framework,但是没办法更新应用里的 helpers.php,start.php, windows.php,bootstrap.php,导致无法启动。
后面将这四个文件放到了webman-framework,更新后脚本会自动替换应用目录里对应的4个文件,达到webman-framework 和 应用里的文件同步更新。
from webman.
之前版本是不重复的,helpers.php,start.php, windows.php,bootstrap.php只放在应用目录里,但是升级会遇到麻烦。 用户更新了webman-framework,但是没办法更新应用里的 helpers.php,start.php, windows.php,bootstrap.php,导致无法启动。
后面将这四个文件放到了webman-framework,更新后脚本会自动替换应用目录里对应的4个文件,达到webman-framework 和 应用里的文件同步更新。
表示理解了,能否将这些非必需加载的文件放置到其他目录,并不以 .php 后缀结束。IDE 提示代码大量重复。
from webman.
什么编辑器?哪里提示代码重复请截图下
from webman.
from webman.
from webman.
from webman.
感谢反馈,后面版本里加一个删除就好了
from webman.
删除可以解决IDE解析提示,但直接阅读核心源代码还是容易误导,上面是我提的建议 😁。
准备从 ThinkPHP 转 Webman,期望有点高,希望大佬不要见怪哈。
from webman.
如果换后缀了,IDE没办法智能提示,查看及编码也不方便,可能还有人会问为啥有个xx后缀的文件,为什么不用php后缀。。。太难了
from webman.
众口难调,积累了这么久了,要不发个大版本吧 !
from webman.
你是说哪个特性需要发大版本?
from webman.
- 启动入口脚本及核心函数组件化,由 composer 管理+初始化配置,其他配置及自定义扩展由应用目录管理。
- 核心注释 DOC 标准化,更友好的支持 IDE 提示,目前源码大部没有方法注释描述。
- 使用 php 强类型,为后续高版本php标准做准备,提升代码执行效率,标准化形参类型。
- 更新框架核心时不影响应用目录,简化应用配置+减轻部署成本。
- 增加服务或中间键 composer 注入,实现 composer 组件插件化。(目前代码有做检测依赖 class 是否存在,如 env 配置)
from webman.
234好理解,1 5 具体是什么意思?
from webman.
- 目前应用框架的启动脚本及常用函数是放置于 app 同级目录,用户可随意修改。核心升级管理这些零散的文件不方便,如果用户对其进行了修改,则可能会替换掉。建议核心脚本及核心函数放置于 composer 内部管理,用户需要增加函数,可以自行扩展。
- 使用 composer 进行安装或下载组件时,可根据 组件的 composer.json 配置进行自动配置,并存放于 vendor/*.php 或其他目录,比如我的组件有一个中间件,只需要在 composer.json 定义的中间键入口,通过 composer 安装时,会自动生成配置,应用启动时加载对应配置并启用。
from webman.
通常核心部分是不允许用户修改的,用户只需要 配置+扩展+业务!
from webman.
启动脚本可以进行封装,如果用户需要扩展或修改,可以继承类再调用初始化。
如:start.php 只需要 include 进来,再调 start.
from webman.
通过 composer 安装时,会自动生成配置,应用启动时加载对应配置并启用
这个目前是支持的,基础插件安装就是这么做的。
启动脚本可以按照你的思路优化下。非常感谢你的建议。
from webman.
Related Issues (20)
- 我要集成gRPC服务
- 我发现Request获取get和post的格式不一致 HOT 1
- support\Request不支持依赖注入 HOT 2
- 依赖注入,适配symfony的依赖组入组件吗? HOT 1
- 关于单元测试的功能实现,phpunit HOT 1
- webman 启动时报错:Segmentation fault ,请问除了gdb,还有什么调试方案么?
- webman 使用php8.3.1, workerman v5 bate7 , 安装了swow扩展后读取配置文件一直报错 HOT 2
- 关于 Timer::add 的bug
- MongoDb的驱动能否修改最新的? HOT 2
- [bug] $request->action在控制器中不存在方法时该值始终返回小写 HOT 3
- [question] What do you use to generate these docstrings?
- Difficulty Deploying on Shared Hosting Without SSH or Shell Access
- 如何修改请求参数 HOT 1
- 如何做才可以不提示webman的启动参数 HOT 1
- Redis Prefix caused multiple deletion failed HOT 2
- webman 上传文件报错 HOT 1
- How to set plugin route to load before dynamic route?
- 模型注释 查询语句加where IDE没有依赖注入 HOT 4
- webman start 和 start.php start 对 env 的表现不一致
- 路由列表获取 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from webman.