首页   注册   登录
 OSF2E 最近的时间轴更新
OSF2E

OSF2E

V2EX 第 317961 号会员,加入于 2018-05-23 03:19:26 +08:00
开源(真、大)前端工程师,专注跨端跨平台的交互体验与数据可视化产品研发
[技术清单] 本团队专注(真、大)前端,但并非只能做前端
  •  2   
    外包  •  OSF2E  •  2018-08-29 19:19:26 PM  •  最后回复来自 OSF2E
    2
    [承接外包] 专注真、大前端的技术团队
  •  2   
    外包  •  OSF2E  •  2018-08-23 17:23:49 PM  •  最后回复来自 OSF2E
    7
    OSF2E 最近回复了
    52 天前
    回复了 suirh96 创建的主题 程序员 数据中心可视化方案提供商推荐!
    建议附上资质要求。
    53 天前
    回复了 fxjson 创建的主题 Node.js 阿里 egg.js 香不香?
    @shuangya

    对,“一把梭”的前端技术时代已经过去了,算法向、视觉向、交互向、数据向、架构向、编译器向的前端工种以及前端产品以后会划分的越来越清晰。
    53 天前
    回复了 fxjson 创建的主题 Node.js 阿里 egg.js 香不香?
    @shuangya #51

    @Hanggi #56

    事先声明,以下内容仅代表个人见解,为方便表述使用了一些可能会存在歧义的名词或者概念。

    事先声明,一直对 vue 的创始人以及使用 vue 的技术群体充满了敬畏之情,万一说错了什么,敬请谅解。

    JQuery/Vue/React/Angular 属于基于浏览器端 DOM/BOM 接口的“交互向”或者“视觉向”的前端应用开发框架,这四者可以作比较。

    EggJS/NestJS 可以放在一起作比较,主要是在用来开发服务器端 NodeJS 环境下业务系统,统称为“数据向”的前端框架。

    Redux 只能算是针对 React 某一部分功能的加强或者扩展,同样与 JQuery/Vue/React/Angular 不是一类产品。

    如果把 JQuery/Vue/React/Angular 比作战斗机的话,egg/nestjs 就可以比作坦克,毕竟两者的战场完全不一样。

    总之,不是一类的东西放在一起比较没有意义。

    先比较 JQuery/Vue/React/Angular 四个框架之间的差异。

    每一代浏览器端前端框架都解决了至少一个核心技术难点,就好比每一代战机都会在至少一个核心技术方面有重大突破一样,可能是发动机、隐身、雷达、武器等方面中的任何一种或者多种。

    话题回到浏览器端前端框架的问题,这里说的“分代”,不是指的产品,而是指的产品背后的技术思想。

    JQuery 所代表的的三代技术思想主要解决的是垮浏览器端 DOM 接口的兼容性问题。

    Backbone 属于三代半,在 jq 的思想基础之上,实现了基于数据绑定思想的 MV*架构。

    判定四代的标准是不依赖 jq 操作 DOM (但仍然要操作 DOM,也就是所谓的虚拟 DOM ),同时实现了基于数据绑定思想的各种 MV*架构。

    发展初期的 Vue/React/Angular 站在同一起跑线上,均属于四代,但由于种种原因早已渐行渐远了。

    Vue 核心思想就是速成,快速上手、高速开发。

    Angular 在三四代技术思想之上,核心发展思想是创建规范化的前端工程开发流程,写出尽可能优秀的代码。换句话说就是开发前端应用的时候要有开发系统软件、桌面软件、服务器端业务系统一样的“硬姿势”,导致的结果就是开发工作颗粒度太细,开发效率低,学习曲线陡等问题,导致大多数开发者在潜移默化中把开发出良好用户体验的前端应用的目标调整成了写出符合 ng 标准的代码,代码质量确实提高了,但开发出来的东西用户不买账,或者开发出用户满意的东西工期太长。

    可以看出 Angular 和 Vue 在某些层面是站在绝对的对立面的。

    Angular 后续版本重点解决的是自身的性能问题,比如 ng8 引入,ng9 扶正的 Ivy 引擎,对于 API 用户来说没有思想上的改变。

    Vue 的后续版本则是类似于 IE6789 风格的升级。

    v16 之前的 react 核心技术思想是单向数据流,还有 JSX 勉强也算,redux 则不是 react 官方的东西。

    为什么说 v16+的 React 属于五代技术思想?

    v16 之后有三个很重要的东西,Fiber/Hook/Concurrent,网上有很多优秀的分析文章,这里不再赘述。

    React 把近十几年优秀的前端开发思想集成到了一起,而非通过打包工具、第三方库、语法糖、接口等方式把这些思想层面简单粗暴的堆到一起,毕竟前端开发是门手艺活儿,手艺人需要的是灵活发挥的空间,以及齐全趁手的工具。

    再就是与浏览器端 JS 开发的层叠样式设计开发、交互动画设计开发等方面的技术问题,开发流程、代码架构等思想上应该是统一的,React 实现了这一点。

    这里扩展说一下,CSS 的布局思想由 BFC 发展到 FFC 再发展到 GFC,与 React 的单向数据流思想不谋而合。

    更进一步说,UI 设计,布局设计,动画设计,交互设计,以及状态管理策略设计,应遵循单向数据流风格的开发流程,React 可以保证这一类型的开发流程的顺利递进,而 Vue/Angular 不行,它们只关心怎么写 JS/TS 代码。
    54 天前
    回复了 fxjson 创建的主题 Node.js 阿里 egg.js 香不香?
    @shuangya 前端技术发展各个阶段不是独立的,就好比战斗机是在一代二代基础之上发展出三代四代五代的,每一代技术都有至少一个代表性产品,现阶段的 react 大概属于五代前端技术、理念、思想的产物,jq 属于三代,ng 处于四代……所谓“站队”,一定程度上代表了前端从业者目前对前端技术的认知所处的水平,而非简单的“粉”某个产品。

    以上言论仅代表个人见解,且篇幅有限,可能存在较大歧义。
    65 天前
    回复了 sunshinev 创建的主题 程序员 Vue 还是 React? 如何选择
    专职前端,建议以 react/typescript/nodejs 为基础,稳步构建私有技术栈,毕竟前端的终极目标是差异化的用户体验。
    非专职,直接上 vue 全家桶,大量复用第三方库或者插件,保证开发效率,功能界面或者用户体验是否雷同无关紧要。
    71 天前
    回复了 revalue 创建的主题 React 哪有一个好用的控制 modal 组件的 hooks?
    有浏览器兼容性要求吗?

    没有的话,推荐使用 CSS-Grid-Layout,所有层可以同时挂载在容器组件上,通过设置 zIndex 属性控制层叠状态,通过 opacity/transform/visibility/display 等属性来控制各层的视觉可见性,而不用频繁修改元素树结构,同时方便添加 transition 或者 animiation 动效。

    有兼容性要求,通过 CSS-Block-Layout 外加 position 等属性,降级实现。
    221 天前
    回复了 xsen 创建的主题 职场话题 哪些值钱的经验,可让你免于中年后被优化
    信息不对称
    可能你的关注点在于“良好的开发体验”上吧……如果把关注点提升为把控完整的开发流程……你会发现 hook 更优秀……

    类比一下,你目前关心相当于是“茴”字的几种写法,而不是如何用汉字创作一篇完整的文章……如果觉得类比的不恰当请勿责怪
    前端按需发起请求,毕竟显示设备单次能够显示的内容有限。
    后端根据前端请求,尽可能提高数据查询效率,这才是 b/s 层面交互体验该考虑的问题。

    UI 层面的用户体验,不是后端应该考虑的问题,除非你同时负责视觉设计、交互设计、前端实现、后端实现等一系列工作,当今世界,能同时把这几方面做同样的高水准的人怕是没有多少。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1436 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 67ms · UTC 17:55 · PVG 01:55 · LAX 10:55 · JFK 13:55
    ♥ Do have faith in what you're doing.