现代前端技术体系,你怎么看

本贴最后更新于 1784 天前,其中的信息可能已经时移世易

前端技术发展太快了,是良性发展么?

一个是 Tom MacWright 对现代前端的二次思考,吐槽框架给当代前端带来的一些问题

https://macwright.org/2020/05/10/spa-fatigue.html

一个是捍卫现代前端技术体系

https://dev.to/richharris/in-defense-of-the-modern-web-2nia

有的人认为当代前端技术体系,比如 Vue、React 等框架,带来的困惑就是工具或构建过程的复杂程度越来越高了,不像以前直接谢谢 HTML、CSS、JS,再加上一个 nginx,基本上完成了网页开发。(表达的意思就是目前开发者更要关注构建、配置等)

我个人理解目前的三大框架都是非常休息的,基本上隐藏了配置构建复杂性

但因为我不是构建专家,所以当我需要定制化配置的时候,就需要了解构建工具,包括 Babel 转化等等,我不是专家,所以当我需要了解的时候,我会话很多时间,并且很头疼~trollface

image.png


很好奇,大家对于当代前端技术体系有什么想法么?

当代前端技术发展走错了路么

单选 公开 永不结束 27 票
错误
7% 2 票
没错
37% 10 票
看不清
55% 15 票

  • 前端

    前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。

    245 引用 • 1338 回帖 • 1 关注
  • 思考
    29 引用 • 120 回帖
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    9515 引用 • 43336 回帖 • 108 关注
1 操作
Rabbitzzc 在 2020-05-21 09:58:35 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • lanesun via Linux

    个人观点

    前端的发展速度是很快,但大概没有楼主想像的那么快,一个行业的发展速度,是由行业标准和准标准的事物决定的。那么对于前端来说,它的发展其实取决于前端各个技术的标准以及 jQuery、Vue 这一类的流行框架,如果以 2010 年左右作为前端兴起的开始时间来算的话,其实并没有网络上所说的那么快速,虽然相比而言还是很快的。

    对于楼主所问的“前端有没有走错路”,个人的回答是暂时还没有。因为目前来看,构建网页所使用的技术还是完全可以自己决定的,就算不使用大框架自己构建也是完全可以的,同时各个技术标准也维持在良好的状态。所以现在的前端拥有很多种类的技术并且没有限制程序员使用哪一种,并没有走错路,反而是一个比较好的状态。

    对于楼主所引用的二次思考那篇文章我也是认同的(另一篇感觉好偏激没有去看),那一篇文章从两个角度说明了当下几个大型框架的缺陷,同时对现代程序员的滥用行为作了批判。但是,如你所看到的,他并没有提及前端走错了方向。当下的前端依然是兼容并包的,出现问题不是前端,甚至本身有缺陷的大型库们也没有错,毕竟没有哪种库是开发出来应对所有情况的。那么最终的问题在于大多数程序员/行业的使用方式,公司及个人不加任何思考就使用大型框架作为开发基础才是应该纠正的地方,这一现象在国内尤其明显。

    就如玩游戏上瘾的人固然有责任,但开发游戏的公司如果刻意去引导成瘾的话也是不对的一样。有些框架也许促成了当下的一些行为,比如 Vue——Vue 跨越的领域太多了,导致用户产生了“用它的话什么都可以做”的错觉,可以做和适合做是不一样的,个人认为,特别是这些大型框架的贡献者们,在拓展它们的适用领域的时候应该好好考虑一下。

    最后对楼主所引用的文章做一下补充,文章中所提到大型框架的影响分为技术方面和习惯方面,技术方面不作补充了,虽说有很多,但并不是我的专长而且也列举不来。习惯方面的话,和楼主所说的一样,大型框架普遍屏蔽了实现方面的细节,让使用者方便地进行开发,结果就是——对于不成熟的开发者,阻断了其对于底层和程序架构的学习动力,这也是如之前所说的为什么前端的开发人员数量巨大但是发展速度却没有预想的那么快速的原因:大多数人并没有促成前端的发展,只是在利用已有的前端技术完成任务而以;另外,即使对于大多数成熟的开发者来说,过多地使用大型框架也会阻断其对于新架构的创造力,就如同大家习惯了对象型编程后就很难想到其他编程模式一样。

  • 其他回帖
  • zhangle1

    长久来说,我们都死了trollface 。谁管后人呢,先自己玩爽了再说。

  • someone9891 1 1 赞同 via macOS

    请问洗衣机的发展错了吗?

    以前洗衣服都去河边,要么搓衣板、要么棒子捶,现在多复杂,甚至有些智能的光操作都得学几天,还要用店,对家里的装修、水路、地漏都有一定的要求,请问洗衣机的发展是良性的吗?

  • Vanessa 1 8 评论 via macOS

    楼主想说的应该是当代前端框架吧,个人一直的观点就是自己需要长期维护的项目尽量不要使用。

    当代前端的发展从原生 JavaScript 规范,浏览器特性,electron,node.js 方面来说应该是非常不错了,相信以后会更好。

    当前三大框架的缺点,也是 Svelte 框架想要解决的问题,不过感觉前路漫漫
    Rabbitzzc
    长期维护的项目不要使用前端框架,而是使用自己写的原生代码吗?
    someone1764
    @mymoshou 是啊,十年以后这些框架不流行了怎么办?
    Vanessa 1
    @Vanessa 你有没有考虑过 html 、js、css 十年后不流行了怎么办?
    someone9891
    @Vanessa 不流行了是不是得选择重构或者迁移呢?
    Rabbitzzc
    @gitors 十年后发现这个世界都是虚幻的怎么办?
    Vanessa
    @Rabbitzzc 十年的系统已经千疮百孔,修修补补吧
    Vanessa
    @gitors 这个不现实,网站的根基 root,分支任你走,根基跑不了
    Rabbitzzc
  • 查看全部回帖

推荐标签 标签

  • 快应用

    快应用 是基于手机硬件平台的新型应用形态;标准是由主流手机厂商组成的快应用联盟联合制定;快应用标准的诞生将在研发接口、能力接入、开发者服务等层面建设标准平台;以平台化的生态模式对个人开发者和企业开发者全品类开放。

    15 引用 • 127 回帖 • 1 关注
  • 服务

    提供一个服务绝不仅仅是简单的把硬件和软件累加在一起,它包括了服务的可靠性、服务的标准化、以及对服务的监控、维护、技术支持等。

    41 引用 • 24 回帖 • 4 关注
  • 持续集成

    持续集成(Continuous Integration)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

    15 引用 • 7 回帖
  • Dubbo

    Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,是 [阿里巴巴] SOA 服务化治理方案的核心框架,每天为 2,000+ 个服务提供 3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。

    60 引用 • 82 回帖 • 613 关注
  • Spark

    Spark 是 UC Berkeley AMP lab 所开源的类 Hadoop MapReduce 的通用并行框架。Spark 拥有 Hadoop MapReduce 所具有的优点;但不同于 MapReduce 的是 Job 中间输出结果可以保存在内存中,从而不再需要读写 HDFS,因此 Spark 能更好地适用于数据挖掘与机器学习等需要迭代的 MapReduce 的算法。

    74 引用 • 46 回帖 • 569 关注
  • Markdown

    Markdown 是一种轻量级标记语言,用户可使用纯文本编辑器来排版文档,最终通过 Markdown 引擎将文档转换为所需格式(比如 HTML、PDF 等)。

    169 引用 • 1527 回帖
  • FFmpeg

    FFmpeg 是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

    23 引用 • 32 回帖 • 2 关注
  • 负能量

    上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)

    89 引用 • 1243 回帖 • 414 关注
  • 资讯

    资讯是用户因为及时地获得它并利用它而能够在相对短的时间内给自己带来价值的信息,资讯有时效性和地域性。

    56 引用 • 85 回帖
  • 生活

    生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。

    230 引用 • 1454 回帖
  • 职场

    找到自己的位置,萌新烦恼少。

    127 引用 • 1708 回帖
  • gRpc
    11 引用 • 9 回帖 • 92 关注
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    556 引用 • 675 回帖
  • 代码片段

    代码片段分为 CSS 与 JS 两种代码,添加在 [设置 - 外观 - 代码片段] 中,这些代码会在思源笔记加载时自动执行,用于改善笔记的样式或功能。

    用户在该标签下分享代码片段时需在帖子标题前添加 [css] [js] 用于区分代码片段类型。

    137 引用 • 917 回帖
  • 外包

    有空闲时间是接外包好呢还是学习好呢?

    26 引用 • 233 回帖 • 2 关注
  • CSDN

    CSDN (Chinese Software Developer Network) 创立于 1999 年,是中国的 IT 社区和服务平台,为中国的软件开发者和 IT 从业者提供知识传播、职业发展、软件开发等全生命周期服务,满足他们在职业发展中学习及共享知识和信息、建立职业发展社交圈、通过软件开发实现技术商业化等刚性需求。

    14 引用 • 155 回帖 • 1 关注
  • OpenShift

    红帽提供的 PaaS 云,支持多种编程语言,为开发人员提供了更为灵活的框架、存储选择。

    14 引用 • 20 回帖 • 655 关注
  • Outlook
    1 引用 • 5 回帖 • 1 关注
  • 锤子科技

    锤子科技(Smartisan)成立于 2012 年 5 月,是一家制造移动互联网终端设备的公司,公司的使命是用完美主义的工匠精神,打造用户体验一流的数码消费类产品(智能手机为主),改善人们的生活质量。

    4 引用 • 31 回帖 • 3 关注
  • Anytype
    3 引用 • 31 回帖 • 17 关注
  • 新人

    让我们欢迎这对新人。哦,不好意思说错了,让我们欢迎这位新人!
    新手上路,请谨慎驾驶!

    52 引用 • 228 回帖
  • Log4j

    Log4j 是 Apache 开源的一款使用广泛的 Java 日志组件。

    20 引用 • 18 回帖 • 32 关注
  • webpack

    webpack 是一个用于前端开发的模块加载器和打包工具,它能把各种资源,例如 JS、CSS(less/sass)、图片等都作为模块来使用和处理。

    41 引用 • 130 回帖 • 250 关注
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    315 引用 • 547 回帖
  • 禅道

    禅道是一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法 scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。

    6 引用 • 15 回帖 • 31 关注
  • Openfire

    Openfire 是开源的、基于可拓展通讯和表示协议 (XMPP)、采用 Java 编程语言开发的实时协作服务器。Openfire 的效率很高,单台服务器可支持上万并发用户。

    6 引用 • 7 回帖 • 102 关注
  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1063 引用 • 3455 回帖 • 165 关注