Web 开发真的还需要框架吗?

2019-09-04 10:47:33 +08:00
 zjsxwc
Web 开发真的还需要框架吗?我觉得现在已经没有必要了


关于请求
java 只用 servlet
golang 只用 net.http
php 只写原生脚本

关于返回
全部都返回 json,而不返回 html,因为前端 React、Angular、Vue 已经很成熟了,静态资源全走 CDN


关于业务
全部都用语言写与框架无关的 Service 对象来处理业务,无非就是纯粹的面向对象模拟现实业务而已。还有业务中涉及数据库操作的,不管是用 builder 模式拼 sql、还是用 sql 模板引擎拼 sql、亦或者用 ORM 把数据实体化操作 sql、甚至直接徒手写 raw sql 等都无所谓了。
17219 次点击
所在节点    程序员
154 条回复
T3RRY
2019-09-05 08:20:14 +08:00
@a11214214 hhhh,来了老弟
tianyu94
2019-09-05 08:20:40 +08:00
@zjsxwc 那我上了几年班,公司技术领导都是傻子还让我用框架🐶
speedofstephen
2019-09-05 08:23:13 +08:00
部分同意, 但是 SpringIOC 那种对象管理自己实现感觉坑很多啊
kevindu
2019-09-05 08:30:56 +08:00
我最近在用 Rails,觉得真 tm 好用,全是现成的轮子,虽然有的根本用不上,但是想要用的都集成进来了,比 Python 的 Flask 好用不知道多少倍
a11214214
2019-09-05 08:31:05 +08:00
@T3RRY 对啊老哥 哈哈
aa6563679
2019-09-05 08:38:31 +08:00
事务怎么办?事务传播怎么办
saltedFish666
2019-09-05 08:43:20 +08:00
框架这个本来就是为了更快的开发,既然没有多少效率提高,那用于不用没有什么特别的区别,可以选择用
wweir
2019-09-05 08:51:09 +08:00
公司人员实力够的话,没必要用框架了。
但如果一堆刚毕业及能力与之相近的人,不用框架,怕是代码风格都能恶心死人,更别说很多边边角角需要注意的地方了
LuckyKoala
2019-09-05 09:18:12 +08:00
个人项目可以随意折腾,公司项目不会给时间自己摸索着实现基础功能的,一般会选择在成熟框架之上接着开发。
annielong
2019-09-05 09:20:56 +08:00
看项目的复杂度了,简单的用不用都行,如果是大型的一般还是会用框架的
zjttfs
2019-09-05 09:21:02 +08:00
如果 web 站不做 seo 搜录么? 那 json 就不行了. 还是得后端渲染,所以说了那么多 没用...
ilaipi
2019-09-05 09:23:53 +08:00
当初 Spring 解决的是什么问题呢?

你真的想回到自己到处 new 各种 instance 的操作吗?配置参数都自己去通过 Properties 去加载?
encro
2019-09-05 09:27:29 +08:00
React、Angular、Vue 也是框架

就拿 session 来说,框架可以让你改一个配置,实现将 session 存放位置在数据库,文件,内存,redis 等切换,你不用实现自己的 session handler

gin 框架那么多中间件,很多都非常有用,哪怕一个简单的 c.JSON()都让你代码节省很多,理解更加容易很多。

框架是一种约定,有了这个约定大家行为一致,代码编写和理解浏览效率提升,这时候框架如同法律,想象下,没有法律的世界,最终会乱成什么样?

框架是一组已经测试好的工具,放弃框架就等于让农民放弃机械化使用手工作业,使用联合收割机的农名一天可以收割几百亩田地,使用镰刀的农名一天辛辛苦苦收割半亩田地。
chen2019
2019-09-05 09:29:23 +08:00
你公司就你一个开发就想干啥就干啥吧,框架当然可以不用.
但是基于你的问题,我只是不明白 前端为啥要用 React、Angular、Vue 用原生的不就好了吗??
nnnToTnnn
2019-09-05 09:30:08 +08:00
大佬,React、Angular、Vue 也属于框架啊,而且还有很多,我觉得你对框架是否有很大的误解?
wellR
2019-09-05 09:33:07 +08:00
你可以不用现下流行的框架,最终你自己集合第三方库整的那套就是框架
chen2019
2019-09-05 09:34:14 +08:00
补充下
其实就算是 java golang php 从本质上说也可以理解为是 C 的一个框架,那么你为啥不直接用 C 呢,而 C 从本质上说可以说是二进制码的框架,那直接用二进制码不是更好?
Tlin
2019-09-05 09:44:47 +08:00
@chen2019 哈哈 框架 就是一层套一层
nnnToTnnn
2019-09-05 09:44:53 +08:00
回答你第一个问题
```
关于返回
全部都返回 json,而不返回 html,因为前端 React、Angular、Vue 已经很成熟了,静态资源全走 CDN
```

> 我从来不知道哪个 web 是可以不用返回 HTML 的? 就算是 Adobe 的 Flash 也需要 html 来进行加载,你说的 React、Angular、Vue 更加不同谈,完全就是 html+js+css ( PS: 不了解你去看看 webpack 的说明)


第二个问题

```
数据库操作?这个和框架无关,不用框架也能拿来用
```

> 来来来,你写一个 jdbc 试试? 如果是 java 你用的 jdbc 来操作数据库,jdbc 本来就是一个框架,如果不用框架,你得自己去通过对每个数据库的协议来进行开发,这个工作量远远大于你开发项目的工作量


第三个问题

```
用户鉴权以及 session 相关?很简单就是个 key-value 读写
```

> 那单点登入? 或者说你用户鉴权的安全性如何考虑? 和 csdn 一样明文存储密码? 直接采用序列号生成 SESSION ? 如果你这个项目能上互联网,算我输,渗透测试就把你打回去了



框架:

软件框架,是软件开发过程中提取软件的共性部分形成的体系结构。框架不是现成可用的应用系统,而是一个半成品,是一个提供了诸多服务,供开发人员进行二次开发,实现具体功能的程序实体。

组件:

组件是封装了一个或多个程序模块的实体。组件强调的是封装,利用接口进行交互。组件也称为构建。插件是组件的一个子类,就是将组件中具有某些特点的组件归为插件。

-----------------------------------------------------------------------------------------------------------
PS


让我猜猜

楼主估计只是工作一两年的萌新,估计连 React、Angular、Vue 等前端的基础理念都没搞清楚,也没搞清楚框架 /组件的区别。

更加别谈后台的分布式事务,微服务,线程池,并发,等等这些概念了。


当然,你们公司只是做一个 github page,那当我没说



----------------------------------------------------------------------------------------------------------------


不会就要学,没有接触过,深度了解过,没有资格去发表自己的评判,一个不了解 React 和框架 /组件概念的人
去评判是否能够用,怎么我觉得很可笑
shawshi
2019-09-05 09:45:06 +08:00
除了 Servlet,Filter 要么?

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

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

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

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

© 2021 V2EX