系统性的前端知识

简介: 系统性的前端知识

最近因为项目需求,大量面了一批前端的岗位,不过很不理想,我更是想说几句吧。究竟前端最基本的要求是什么样子的。

先说我最近面试碰到的问题吧。大量看简历与面试时,我发现一个普遍的现象,那就是从事前端的人,有很大部分是非计算机专业转过来的,而且又有大量的大专。这种现象在后端里要少一点儿。为什么会有这样的现象?它是好还是不好,或者说是不是能完成我们期望的日常的工作呢?

后来通过交流与思考我发现,转到计算机过来的,最直接的原因是:前端的开发直观,所见既所得;学习曲线并不是那么的陡峭,初中期无论是学习基础的HTML,还是VUE一类的框架都是很顺畅的;社会上还存在大量的前端速成班,大概两三个月,就能培养出一个不错的初级工,再加上面试考典,还是很容易做到前端就业的。

但是带来的问题是什么呢? 由于缺少对于知识的整体认知,再加上相对繁重的重复性工作,个人的提高很难,或者说即使有提高的意愿,也并不是容易找到方向。这样下去,在三十岁以后的工作就可以见到的难一点儿吧。

所以,有时感慨,我就把自己的前端了解,简单写一下,期望能有一点帮助吧。

首先,应该认识到 HTML, CSS, JavaScript三者是一体的。它们共同完成了我们所有要做的前端工作。但是,是什么把这三者结合到了一起呢? 我问过好多前端,能够非常清晰的回答的,很少。 是DOM:DOM (Document Object Model) 译为文档对象模型.

image.png

image.png'

尽管简单,但是这一段描述特别值得反复回味:

image.png

也就是在DOM上有HTML与CSS数据,同时JavaScript的事件处理是关联到DOM结点上的。由此三者真正结合在了一起,成为了前端的三个技术的有机结合。

然后就是前端的重点在那儿?如果在HTML,CSS与JavaScript三者之间选?我肯定选JavaScript。原因很简单,因为HTML与CSS所以完成的工作是有限的,同时它们的知识点也是很集中的。HTML完成了前端的数据定义,CSS完成了显示的式样。只有JavaScript完成了动态内容。而动态、交互差不多是现在整个前端的工作最集中的部分,不像HTML、CSS刚出现的时候,那时只注重单纯的内容显示。现在是一个交互的时代。

唯一遗憾的是,现在很多转行过来从事前端的工作时,最容易忽略的就是JavaScript是一门完整、成熟的计算机语言。不要把它当成跟HTML,CSS那样学。更不要把前端学成一个框架,比如学会了VUE的基本用法就当成自己学会了。要有愿意去探究底层的兴趣与行动。

实际上,由于 JavaScript在出生时,是为了浏览器面存在的,它要比其它的全功能型语言更难,在我看来。因为你要一上来就有一个局限,好在现在NodeJS的出现,让JavaScript的应用场景更丰富了。但是,由于它的随性的语法写作风格,并不是阅读友好型的。所以,学起来真是有点。。。

但是,我要说,除了基本的JavaScript语法,大量的JavaScript API函数外。现在前端技术已经发展得很成熟了。一个合格的前端工程师,对于面向对象、设计模式 、JavaScript语言特有的语法特性的缘由,在现在的主流框架中的应用,要有一个清晰的认知才对。

举个例子吧。下面的 data,为什么返回 的是 function呢?实际上,它是JavaScript的语法:闭包的典型应用。

 Vue.component('counter', { 
   template: '#tmpl',
    data: function () { 
       return { count: 0 }
    },

再有一个VUE的双向数据绑定,无数人都回答了下面的答案 :

image.png

但是为什么Object的defineProperty()会劫持所有的对象的setter, getter呢?能回答上来的非CS出身的,少之又少。因为Object是JavaScript的所有类的根类啊。

只有不断的思考这其中的应用,你才算是真正的入门了前端,变成了一个真正的合格的开发人员。而不是一个前端搬砖的。

最后,列几本书吧。 基本大家能看看,有一些收获。

2345_image_file_copy_1.jpg

官网 JavaScript权威指南 原书第7版 犀牛书 新版升级

京东

image.png

2345_image_file_copy_2.jpg

image.png


2345_image_file_copy_3.jpg

image.png

2345_image_file_copy_4.jpg

JavaScript高级程序设计 第4版(图灵出品)

¥103.00

image.png

在这个基础上,再去研究一下计算机网络,后端开发的基本知识 。这样才能保证自己是一个掌握了系统性知识的合格程序员了。

文档对象模型 (DOM) - Web API 接口参考 | MDN (mozilla.org)

目录
相关文章
|
23天前
|
人工智能 前端开发 小程序
2024年12月30日蜻蜓蜻蜓AI工具系统v1.0.0发布-优雅草科技本产品前端源代码已对外开源可免费商用-优雅草老八
2024年12月30日蜻蜓蜻蜓AI工具系统v1.0.0发布-优雅草科技本产品前端源代码已对外开源可免费商用-优雅草老八
2024年12月30日蜻蜓蜻蜓AI工具系统v1.0.0发布-优雅草科技本产品前端源代码已对外开源可免费商用-优雅草老八
|
5月前
|
JavaScript 前端开发 开发者
Vue.js 框架大揭秘:响应式系统、组件化与路由管理,震撼你的前端世界!
【8月更文挑战第27天】Vue.js是一款备受欢迎的前端JavaScript框架,以简洁、灵活和高效著称。本文将从三个方面深入探讨Vue.js:响应式系统、组件化及路由管理。响应式系统为Vue.js的核心特性,能自动追踪数据变动并更新视图。例如,通过简单示例代码展示其响应式特性:`{{ message }}`,当`message`值改变,页面随之自动更新。此外,Vue.js支持组件化设计,允许将复杂界面拆分为独立且可复用的组件,提高代码可维护性和扩展性。如创建一个包含标题与内容的简单组件,并在其他页面中重复利用。
100 3
|
5月前
|
机器学习/深度学习 数据采集 数据可视化
基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台
本文介绍了一个基于Python Django框架和Bootstrap前端技术,集成了机器学习算法和数据可视化的招聘数据分析与可视化系统,该系统通过爬虫技术获取职位信息,并使用多种机器学习模型进行薪资预测、职位匹配和趋势分析,提供了一个直观的可视化大屏和后台管理系统,以优化招聘策略并提升决策质量。
288 4
|
1月前
|
机器学习/深度学习 前端开发 算法
婚恋交友系统平台 相亲交友平台系统 婚恋交友系统APP 婚恋系统源码 婚恋交友平台开发流程 婚恋交友系统架构设计 婚恋交友系统前端/后端开发 婚恋交友系统匹配推荐算法优化
婚恋交友系统平台通过线上互动帮助单身男女找到合适伴侣,提供用户注册、个人资料填写、匹配推荐、实时聊天、社区互动等功能。开发流程包括需求分析、技术选型、系统架构设计、功能实现、测试优化和上线运维。匹配推荐算法优化是核心,通过用户行为数据分析和机器学习提高匹配准确性。
105 3
|
1月前
|
前端开发 搜索推荐 安全
陪玩系统架构设计陪玩系统前后端开发,陪玩前端设计是如何让人眼前一亮的?
陪玩系统的架构设计、前后端开发及前端设计是构建吸引用户、功能完善的平台关键。架构需考虑用户需求、技术选型、安全性等,确保稳定性和扩展性。前端可选用React、Vue或Uniapp,后端用Spring Boot或Django,数据库结合MySQL和MongoDB。功能涵盖用户管理、陪玩者管理、订单处理、智能匹配与通讯。安全性方面采用SSL加密和定期漏洞扫描。前端设计注重美观、易用及个性化推荐,提升用户体验和平台粘性。
67 0
|
1月前
|
人工智能 自然语言处理 前端开发
【AI系统】LLVM 前端和优化层
本文介绍了 LLVM 编译器的核心概念——LLVM IR,并详细讲解了 LLVM 的前端 Clang 如何将 C、C++ 等高级语言代码转换为 LLVM IR。文章还探讨了编译过程中的词法分析、语法分析和语义分析三个关键步骤,以及 LLVM 优化层的 Pass 机制,包括分析 Pass 和转换 Pass 的作用及依赖关系。
48 3
|
3月前
|
监控 JavaScript 前端开发
前端的混合之路Meteor篇(六):发布订阅示例代码及如何将Meteor的响应数据映射到vue3的reactive系统
本文介绍了 Meteor 3.0 中的发布-订阅模型,详细讲解了如何在服务器端通过 `Meteor.publish` 发布数据,包括简单发布和自定义发布。客户端则通过 `Meteor.subscribe` 订阅数据,并使用 MiniMongo 实现实时数据同步。此外,还展示了如何在 Vue 3 中将 MiniMongo 的 `cursor` 转化为响应式数组,实现数据的自动更新。
|
3月前
|
前端开发 安全 API
前端全栈之路Deno篇(三):一次性搞懂和学会用Deno 2.0 的权限系统详解和多种权限配置权限声明方式
本文深入解析了 Deno 2.0 的权限系统,涵盖主包和第三方包的权限控制机制,探讨了通过命令行参数、权限 API 和配置文件等多种权限授予方式,并提供了代码示例和运行指导,帮助开发者有效管理权限,提升应用安全性。
|
3月前
|
JavaScript 前端开发
前端js,vue系统使用iframe嵌入第三方系统的父子系统的通信
前端js,vue系统使用iframe嵌入第三方系统的父子系统的通信
|
4月前
|
移动开发 缓存 前端开发
构建高效的前端路由系统:从原理到实践
在现代Web开发中,前端路由系统已成为构建单页面应用(SPA)不可或缺的核心技术之一。不同于传统服务器渲染的多页面应用,SPA通过前端路由技术实现了页面的局部刷新与无缝导航,极大地提升了用户体验。本文将深入剖析前端路由的工作原理,包括Hash模式与History模式的实现差异,并通过实战演示如何在Vue.js框架中构建一个高效、可维护的前端路由系统。我们还将探讨如何优化路由加载性能,确保应用在不同网络环境下的流畅运行。本文不仅适合前端开发者深入了解前端路由的奥秘,也为后端转前端或初学者提供了从零到一的实战指南。

热门文章

最新文章