电商网站前端架构 学习笔记(全是干货),高级前端晋升之View渲染机制

该博客围绕前端架构展开,强调数据分析和优化是做前端架构的必要前提。介绍了前端架构组织方式,包括目录、页面、功能层面,还讲解了组件化和设计模式层面的知识,如JS中的继承和Extend。此外,提及前端基础的HTML、CSS和JavaScript的学习内容。

交互设计图.PNG


4:数据分析和优化

数据分析和优化是做前端架构的必要前提,因为前端页面的数据对于我们前端工程师来说是非常重要的,比如可以根据数据波动去发现页面中的bug等等;最终的目的是提高产品的整体的体验和质量

大家以一个比较全局的观点去考虑这个问题的时候,不要以技术的观点去想,而要以产品的规划和产品怎么为用户服务的理念去想


5:前端架构组织方式和目录组织

架构组织的维度分以下几个方面

目录层面

利用操作系统与生俱来的目录结构,合理规划目录结构,是好的架构实现的基础

页面层面

页面层面,通常用来组织视图( HTML )

功能层面

最简单的网站,单个文件通常是一个或多个相关功能的聚合

组件化和设计模式层面

当一个逻辑需要多次被使用时,我们就开始组件化和抽象


1 :目录层面的组织

  • 目录系统在前端架构中所充当的作用:

  • 更高效的组织开发目录: 好的组织方式,甚至可以代替那些复杂的代码组织框架

  • CSS,JS 和图片要分开存放:分开存放,往往不是出于技术的考量,而是从团队协作和迭代管理层面触发

举例: js目录结构,根据以下三层,分门别类的放置文件

1: Model: 数据层,存放与服务器打交道的代码

2: UI: 控制视图业务逻辑的代码

3: Controller: 控制层

2: 页面层面的组织

  • 由于页面中有不同的代码,所以不能用相同的方式进行组织架构的划分,在我们页面中有 js(逻辑性代码)html(结构性代码);css 描述性代码

  • 重用:一般页面与页面之间经常会有公共的部分,我们把公共的部分抽象出来,存放到一个文件夹,然后将里面的文件作为公用部分.

同常来讲,页面与页面之间之间 不太存在逻辑之间的关系,而是包含与被包含的关系,比如一个页面包含某个子结构.

3: 功能层面

  • 最简单的网站,单个文件通常是一个或多个相关功能的聚合

6: 组件化和设计模式层面(详细讲解,单独作为一节)

  • JS中的继承和Extend

继承和拷贝是JS中抽象的基础,因为JS不像其它面对对象语言,与生俱来就有这些功能,所以呢,要自己写

  • 浅拷贝简单例子

var a = {};

var b = {c:100, d:200};

//想让 a 具有 b 的属性,就用到浅拷贝; 其实用到的就是for in 方法

var i;

for (i in b){

a[i] = b[i]

}

a; // {c: 100, d: 200}

//封装函数

function extend(sub,sup) {

var i ;

for (i in sub) {

sub[i] = sup[i]

}

}

  • JS继承继承方式:原型链

偷懒继承方式:

//people

var people = function(){

this.name = ‘jiangdeng’

}

people.prototype.getName = function() {

return this.name

}

//man

var man = function() {

this.sex = ‘male’;

people.call(this); //将man函数的this指向 people对象

}

//继承

//想要man获取people对象上的属性

//最简单的方式,也是偷懒的方式

man.prototype = people.prototype;

var Man = new man();

Man.getName()

偷懒方式的问题: man 的 prototype 中的 constructor 属性指向的是 people 的构造函数,当 people 的 getName 方法 被重写后,man再调用 getName 方法也会被重写

修改后的继承方式

//peopel

var people = function() {

this.name = ‘jiangdeng’

}

people.prototype.getName = function() {

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
img

基础学习:

前端最基础的就是 HTML , CSS 和 JavaScript 。

网页设计:HTML和CSS基础知识的学习

HTML是网页内容的载体。内容就是网页制作者放在页面上想要让用户浏览的信息,可以包含文字、图片、视频等。

CodeChina开源项目:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

CSS样式是表现。就像网页的外衣。比如,标题字体、颜色变化,或为标题加入背景图片、边框等。所有这些用来改变内容外观的东西称之为表现。

动态交互:JavaScript基础的学习

JavaScript是用来实现网页上的特效效果。如:鼠标滑过弹出下拉菜单。或鼠标滑过表格的背景颜色改变。还有焦点新闻(新闻图片)的轮换。可以这么理解,有动画的,有交互的一般都是用JavaScript来实现的。

TFSosfHu-1711871385056)]

CSS样式是表现。就像网页的外衣。比如,标题字体、颜色变化,或为标题加入背景图片、边框等。所有这些用来改变内容外观的东西称之为表现。

[外链图片转存中…(img-7MRQ1prp-1711871385057)]

动态交互:JavaScript基础的学习

JavaScript是用来实现网页上的特效效果。如:鼠标滑过弹出下拉菜单。或鼠标滑过表格的背景颜色改变。还有焦点新闻(新闻图片)的轮换。可以这么理解,有动画的,有交互的一般都是用JavaScript来实现的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值