文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

漫谈:从全栈开发到技术架构

2024-12-02 23:44

关注

前端、客户端主要是负责构建和用户打交道的界面,也就是 UI(user interface),而构建 UI 需要在不同的位置显示文字、图片、视频等等,要分成不同的区块和页面,为了简化构建 UI 的过程,前端、客户端都提供了相应的布局方案,甚至还提供了 DSL 来简化布局的描述,比如前端的 html、css,安卓的 xml 都是用来简化 UI 描述的 DSL。

基于这些布局方案,我们可以快速构建出应用的界面,但是有的时候这些布局方案不适用,就需要自己绘制,这时候就要通过 canvas、webgl 的方式来绘制更灵活的 2d、3d 视图。安卓、ios等也提供了 canvas 的 api。

绘制界面整体上就分为这两种,一种是基于各平台的布局方案的,一种是自己绘制,前者常用来做应用开发,后者常用来做游戏开发和一些可视化。这两种构建UI 的方式区别还是挺大的,应用开发、游戏(可视化)开发是两条不同的路。

基于浏览器的 dom 和 css 的布局方案的,也就是基于 dom 的,可以使用一系列 dom api 来操作 dom,然后重新布局和绘制,通过这种方式来做各种交互。

而不基于 dom 的绘制方案,也会维护一套对象体系,比如 stage、sprite 等,然后在修改了对象的属性之后,重新绘制到 canvas。

绘制时需要各种资源还有数据,而提供这些资源和数据的就是后端,后端通过 http、websocket 等方式来传输绘制需要的资源和数据,资源存在静态服务器,托管在 CDN,数据都存在数据库里,根据不同的请求参数来进行资源的 CDN 的查找和数据的 CRUD,然后提供给前端。

随着应用规模的上升,后端的提供数据的服务器和提供资源的 CDN 都会做分布式,通过部署在不同地区的多台机器来保证效率和稳定。

这就是 web 应用运行的基本流程。

从开发到部署运行是有个过程的,这个过程就是软件工程的生命周期,从一次开发完所有功能的瀑布,到快速迭代的敏捷,从手动执行构建和部署,到完全自动化的 devops,工程效率是越来越高的,这是一个必然的趋势。

作为 web 应用的开发者,要掌握前端的两种绘制界面的方式,掌握后端的数据库和 CRUD 以及提供接口给前端,掌握 CDN 的部署、后端服务的部署,如果应用规模大了以后还要掌握各种中间件和分布式的技术。此外,还要掌握 devops 的自动化的工具链。这些技能掌握之后,就是一个全栈开发者了。

在完成功能的基础上,对于比较复杂的场景,需要做代码的设计,也就是架构,保证随着迭代代码复杂度不会失控。相对来说,后端的复杂场景多一些,前端相对较少,所以后端谈架构比较多,但前端也有一些复杂场景需要架构设计,比如微前端,比如 vscode 的 ioc、service、多进程划分等。

从能够完成基本功能的全栈开发,到能处理复杂场景的技术架构,就是web开发程序员的成长路径了。

【编辑推荐】

  1. 鸿蒙官方战略合作共建——HarmonyOS技术社区
  2. 云中的容器:你有哪些选择?
  3. 5G消息全力迈入发展期
  4. 什么是域名劫持?遇到域名劫持要怎么处理
  5. 自学编程,到底先选什么语言?
  6. 一文看完网络爬虫发展史

 

来源:神光的编程秘籍内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯