如果不是为了路由,我才不想要框架。
优雅,代码一眼就能看懂。不拐弯。 灵活,不硬改原来文件,就能实现热修复。 可控,不依赖第三方代码。 简洁,很容易就找到入口。
调试方便,定位错误方便,debug_print_backtrace(2) 一看就懂。
没有全局函数, 全局函数我可以自己包装,框架写死了全局函数,和其他人冲突就没救了。
////
不需要模板,模板不是框架的必需部分。 不需要数据库,我有自己的数据库类。 这两者框架可以提供,我也可以不用。
////现在的框架都是全站的,我只想做一个目录下的系统,不做全站 //// 我希望 swoole 的 web 代码,和 fpm 的通用,不需要专门切换。(已经阅读 swoole 编程注意事项。
/////
某个框架, --no-dev 方式下 47 个依赖,34M,我 hello world 都没写呢。 而这 47 个依赖,都不在作者掌控之下,真的不担心有其他 Bug 么。
那么,什么框架能满足上面要求呢
![]() | 1 lowman 2019-07-20 11:07:10 +08:00 python 万岁, golang 万岁, C 语言万岁 |
![]() | 2 jellybool 2019-07-20 11:13:49 +08:00 > 优雅,代码一眼就能看懂。不拐弯。 就这个,普天之下,没有哪个框架符合。毕竟优不优雅,能不能一眼看懂,都是 使用者 自己的主观感受。 |
3 jourdon 2019-07-20 11:31:03 +08:00 框架的开发是为了适应大部分人,所以框架内包含的东西是比较全的,而你不需要这些东西,显示框架不适合你, |
![]() | 4 NilXuan 2019-07-20 11:39:46 +08:00 拿来就用;约定优于配置并且约定明确、配置方便;功能点可拔插,可定制,并且学习成本低;总而言之,代码规范,文档详细,示例简明; |
![]() | 5 ipwx 2019-07-20 11:43:55 +08:00 Python Flask |
6 wnh3yang 2019-07-20 11:48:28 +08:00 via Android slim |
![]() | 7 hahaayaoyaoyao 2019-07-20 11:48:36 +08:00 难道不是自动写代码的框架? |
![]() | 8 jlkm2010 2019-07-20 11:49:51 +08:00 go 的很多框架做的不错 |
![]() | 9 dvaknheo OP 迁移方便。 我不希望我代码和框架有太多耦合。 混用方便, 即 其他框架嵌入我的框架很容易。或我的框架嵌入其他框架也很容易 |
![]() | 11 manhere 2019-07-20 12:12:48 +08:00 via Android PHP 那只能是 slimframework 了 |
![]() | 12 jowan 2019-07-20 12:12:58 +08:00 via iPhone symfony 不就是的?你想要什么自己去拿啊 讲真 只需要路由直接 composer 拉下来就行了 哪来那么多事 |
![]() | 13 dvaknheo OP @wnh3yang slim 用了下面几个组件 container-interop pimple 处理 DI monolog 做 Log 处理 fast-route 做 路由。 psr container http-message log // 这一堆现在的 PHP 框架都等着进官方扩展的。 slim /phpview 做模板,不用也可以 |
![]() | 14 GG668v26Fd55CP5W 2019-07-20 13:08:51 +08:00 感觉 slim 写着写着就成 laraval 了。。。 |
![]() | 15 zjsxwc 2019-07-20 13:32:46 +08:00 symfony 4 呗 |
![]() | 16 Varobjs 2019-07-20 13:49:49 +08:00 via Android 现在很多框架都是大很全,比如 laraval phalcon 等,如果想简单可以看看 yaf,或者自己实现个吧,又不难。我自己实现了玩玩就很开心 |
![]() | 17 chenxinqun 2019-07-20 14:05:25 +08:00 自己按需写一个, 用着才是最顺手的 |
![]() | 18 starsriver 2019-07-20 15:27:59 +08:00 via Android 你是要转行拍黄片吗? |
![]() | 19 des 2019-07-20 15:44:16 +08:00 via Android sql 生成代码,最好不用写代码( |
![]() | 20 lvqingan 2019-07-20 16:01:42 +08:00 一个快速的路由+一个好用的容器,整合 Doctrine2 和 PHPUnit 进去,应该就够了 |
21 dremy 2019-07-20 16:14:59 +08:00 via iPhone 47 个依赖就担心了,瞧瞧人家前端全家桶,几百几千个依赖都没啥大事 |
![]() | 22 iscraft 2019-07-20 17:01:58 +08:00 |
23 DovaKeen 2019-07-20 17:04:19 +08:00 一个成熟的框架,不用人写就能自己生成代码 |
24 way2create 2019-07-20 18:37:45 +08:00 框架,无所谓,代码不会看着或者写起来恶心,用着方便就行,至于选择 看项目需求了 |
![]() | 25 TangMonk 2019-07-20 18:39:15 +08:00 Symfony 一样的框架,最好性能再快点 |
![]() | 26 linpf 2019-07-20 18:40:23 +08:00 感觉你只需要一个路由 |
![]() | 27 otakustay 2019-07-20 21:19:22 +08:00 区区 47 个,我大 JS 框架没个 470 依赖都不好跳出来…… |
![]() | 28 32556188w 2019-07-20 22:30:52 +08:00 via iPhone 能赚钱的框架 |
![]() | 29 Felldeadbird 2019-07-21 20:57:36 +08:00 我觉得最好就是:我只需要学习 如何操作 DB 就行了。 路由,控制器,模板完全没有太大的学习成本。等于开箱即用。 |
30 vincel 2019-07-22 09:50:31 +08:00 难道开源世界最重要的一条法则不就是“不要重复造轮子”么,同样的功能已经有很优秀的实现为什么不使用呢,这样作者就可以把时间花在核心代码上。你的意思是每个项目都要去重复实现一遍 xml 解析和 json 这些基建代码来解除依赖? 还有你的很多说法就是自相矛盾的,简洁优美是主观体验,规模一上来再简洁你也不可能半天看明白别人几年开发的东西。至于可插拔和松耦合,框架必然也是模块化,这样各种设计模式一上来你又要说它重度架构了。。。 |
31 ben1024 2019-07-22 10:17:04 +08:00 大而全的框架舒服, slim 满足你的需求 |
![]() | 32 dvaknheo OP @vincel PHP 必须解析 XML 才能开工? 那么 PHP 快速开发的趋势在哪。 有名的东西,并不见得优秀,Smarty 祸害了多少年? 问题是很多框架让作者把时间花在框架的理解上而不是核心代码上。 这就是我为什么提到的 优秀的框架, 和框架耦合的代码越少越好。 规模大,是因为额外需求多才大。不要想着用户要有那么多非核心需求先。 比如数据库,就不应该是框架的核心。 比如 .env 的解析这也不应该是框架的核心。 核心+扩展组件,扩展组件可以单独用,这才是最好的方式。 |
33 Bzero 2019-08-02 10:14:18 +08:00 我觉得自己写一个只带路由的轻框架即可。 |
34 lp7631010 2019-09-19 15:12:56 +08:00 via iPhone 我只希望少一点框架 都统一维护某一个 tmd 学得累啊 |