全栈大师兄
码龄9年
关注
提问 私信
  • 博客:134,233
    134,233
    总访问量
  • 173
    原创
  • 1,224,700
    排名
  • 323
    粉丝
  • 30
    铁粉
  • 学习成就

个人简介:让学习成为一种习惯

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2015-10-21
博客简介:

全栈大师兄

博客描述:
https://codeteenager.github.io/
查看详细资料
  • 原力等级
    成就
    当前等级
    3
    当前总分
    414
    当月
    10
个人成就
  • 获得98次点赞
  • 内容获得12次评论
  • 获得186次收藏
  • 代码片获得146次分享
创作历程
  • 15篇
    2023年
  • 8篇
    2022年
  • 1篇
    2021年
  • 6篇
    2019年
  • 5篇
    2018年
  • 79篇
    2017年
  • 58篇
    2016年
  • 2篇
    2015年
成就勋章
TA的专栏
  • VSCode
    1篇
  • 前端
    7篇
  • Eclipse Theia
    3篇
  • IDE
    1篇
  • android
    103篇
  • cocos2d-x
  • php
    8篇
  • java web
    1篇
  • nodejs
  • java
    1篇
  • java
    1篇
  • mac
    2篇
  • ios
    22篇
  • kotlin
    1篇
  • 英语
    1篇
  • jenkins
    1篇
  • 事件分发
    1篇
  • 测试
    2篇
  • 测试
  • 文档
    2篇
  • react-native
    3篇
  • tablayout
    1篇
  • 人工智能
    1篇
  • 工具
    1篇
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Docker助力前端开发,轻松打造高效应用

注意,docker RUN echo 输入的文本内容是在镜像中的目录,而非宿主机中,创建容器后会出现在容器中,要通过容器目录挂载到宿主机中才能在宿主机中操作。在使用Docker进行应用开发和部署的过程中,我们常常需要将本地构建好的镜像推送到远程仓库,以便于其他开发者或者服务器可以获取并使用这些镜像。我们可以通过docker tag命令来对已有镜像进行标记,修改镜像的名称以及tag,修改的镜像要有镜像仓库地址/项目名/自定义名:版本。要删除不再需要的Docker镜像,可以使用docker rmi命令。
原创
发布博客 2023.12.14 ·
1114 阅读 ·
26 点赞 ·
0 评论 ·
19 收藏

探索Vue小程序框架的底层原理

最近晚上有时间复盘之前研究小程序框架的相关内容,总结文章记录一下。本篇文章主要介绍百度19年开源的Mars小程序开发框架,和Taro、mpvue、uniapp类似,都是编译型小程序框架,都是通过将 Vue 或 React 源码直接编译为小程序源码,实现小程序快速开发。我们来介绍一下其设计思路与原理。
原创
发布博客 2023.12.07 ·
1547 阅读 ·
19 点赞 ·
0 评论 ·
12 收藏

解放你的项目!depcheck:清理无用依赖,让代码更精致

depcheck 是一款用于检测项目中未使用依赖项的工具。在软件开发中,我们经常引入各种依赖以支持项目功能,但这些依赖可能随着时间的推移变得多余或被遗忘。depcheck 通过扫描项目文件,帮助你找出未被引用的依赖,从而优化项目结构。
原创
发布博客 2023.11.17 ·
266 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JS数组原理探究!

我们可以通过 arguments 这个例子定义一个函数来连接字符串。这个函数唯一正式声明了的参数是一个字符串,该参数指定一个字符作为衔接点来连接字符串。该函数定义如下。myConcat(";lion;snake"这段代码说明了,你可以传递任意数量的参数到该函数,并使用每个参数作为列表中的项创建列表进行拼接。从这个例子中也可以看出,我们可以在日常编码中采用这样的代码抽象方式,把需要解决的这一类问题,都抽象成通用的方法,来提升代码的可复用性。
原创
发布博客 2023.08.31 ·
252 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

教你实现一个深浅拷贝!

从上面的样例代码中可以看到,利用 object.assign 也可以拷贝 Symbol 类型的对象,但是如果到了对象的第二层属性 obj1.a.b 这里的时候,前者值的改变也会影响后者的第二层属性的值,说明其中依旧存在着访问共同堆内存的问题,也就是说这种方法还不能进一步复制,而只是完成了浅拷贝的功能。当然,如果你在考虑到循环引用的问题之后,还能用 WeakMap 来很好地解决,并且向面试官解释这样做的目的,那么你所展示的代码,以及你对问题思考的全面性,在面试官眼中应该算是合格的了。
原创
发布博客 2023.08.30 ·
231 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

apply&call&bind原理介绍

call、apply 和 bind 是挂在 Function 对象上的三个方法,调用这三个方法的必须是一个函数。其中 func 是要调用的函数,thisArg 一般为 this 所指向的对象,后面的 param1、2 为函数 func 的多个参数,如果 func 不需要参数,则后面的 param1、2 可以不写。这三个方法共有的、比较明显的作用就是,都可以改变函数 func 的 this 指向。call 和 apply 的区别在于,传参的写法不同:apply 的第 2 个参数为数组;
原创
发布博客 2023.08.29 ·
167 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

一文详解JS 闭包!

JavaScript 的作用域通俗来讲,就是指变量能够被访问到的范围,在 JavaScript 中作用域也分为好几种,ES5 之前只有全局作用域和函数作用域两种。ES6 出现之后,又新增了块级作用域,下面我们就来看下这三种作用域的概念,为闭包的学习打好基础。先来看下红宝书上和 MDN 上给出的闭包的概念。:::tip红宝书闭包的定义:闭包是指有权访问另外一个函数作用域中的变量的函数。MDN:一个函数和对其周围状态的引用捆绑在一起(或者说函数被引用包围),这样的组合就是闭包(closure)。
原创
发布博客 2023.08.28 ·
117 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JS 常见的 6 种继承方式

原型链继承是比较常见的继承方式之一,其中涉及的构造函数、原型和实例,三者之间存在着一定的关系,即每一个构造函数都有一个原型对象,原型对象又包含一个指向构造函数的指针,而实例则包含一个原型对象的指针。从最后的输出结果中可以看到,person5 通过 clone 的方法,增加了 getFriends 的方法,从而使 person5 这个普通对象在继承过程中又增加了一个方法,这样的继承方式就是寄生式继承。从上面编译完成的源码中可以看到,它采用的也是寄生组合继承方式,因此也证明了这种方式是较优的解决继承的方式。
原创
发布博客 2023.08.27 ·
475 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

前端工程化之规范化

EsLint是目前最为主流的JavaScript Lint工具,专门用于检测JS代码质量,通过ESLint很容易统一开发者的编码风格,例如:缩进、换行、分号以及空格之类的使用。不仅如此,EsLint还能帮助我们找到代码中不合理的地方,例如我们定义了一个从未使用的变量,或者在变量使用之后才去做声明等等,而这些不合理的操作就是代码中潜在的问题,通过EsLint能有效避免这些问题,从而提高代码的质量。对于 JavaScript 这种动态、宽松类型的语言来说,开发者更容易犯错。
原创
发布博客 2023.08.25 ·
529 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

前端工程化之模块化

前端工程化是使用软件工程的技术和方法来进行前端的开发流程、技术、工具、经验等规范化、标准化,其主要目的为了提高效率和降低成本,即提高开发过程中的开发效率,减少不必要的重复工作时间,而前端工程本质上是软件工程的一种,前端工程是指将工程方法系统化地应用到前端开发中,以系统、严谨、可量化的方法开发、运营、维护前端应用程序,目的是降本提效。在实际开发的过程中,一个完整的迭代周期需要依次经过开发、测试、部署、发布这几个环节,并且在产品上线之后,我们还需要对产品进行稳定性保障也就是实时的监控和报警系统,避免产品宕机。
原创
发布博客 2023.08.24 ·
553 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

前端工程化概述

前端工程化是使用软件工程的技术和方法来进行前端的开发流程、技术、工具、经验等规范化、标准化,其主要目的为了提高效率和降低成本,即提高开发过程中的开发效率,减少不必要的重复工作时间,而前端工程本质上是软件工程的一种,前端工程是指将工程方法系统化地应用到前端开发中,以系统、严谨、可量化的方法开发、运营、维护前端应用程序,目的是降本提效。在实际开发的过程中,一个完整的迭代周期需要依次经过开发、测试、部署、发布这几个环节,并且在产品上线之后,我们还需要对产品进行稳定性保障也就是实时的监控和报警系统,避免产品宕机。
原创
发布博客 2023.08.23 ·
273 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

webpack 从入门到放弃!

Loader 作为 Webpack 的核心机制,内部的工作原理却非常简单。接下来我们一起来开发一个自己的 Loader,通过这个开发过程再来深入了解 Loader 的工作原理。这里我的需求是开发一个可以加载 markdown 文件的加载器,以便可以在代码中直接导入 md 文件。
原创
发布博客 2023.08.16 ·
785 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

React组件性能优化实践

在上面的代码中,当渲染条件发生变化时,React 内部在做 Virtual DOM 比对时发现,刚刚第一个组件是 AdminHeader,现在第一个组件是 Header,刚刚第二个组件是 Header,现在第二个组件是 Content,组件发生了变化,React 就会卸载 AdminHeader、Header、Content,重新挂载 Header 和 Content,这种挂载和卸载就是没有必要的。频繁的挂载和卸载组件是一项耗性能的操作,为了确保应用程序的性能,应该减少组件挂载和卸载的次数。
原创
发布博客 2023.08.08 ·
434 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

聊聊JavaScript性能优化!

GC就是垃圾回收机制的简写,当GC工作的时候可以找到内存中的垃圾对象,然后对对象空间进行释放和回收,方便后续代码进行使用。那么GC中的垃圾是什么呢?程序中不再需要使用的对象//当函数调用完后,不再需要使用name${//当函数调用完后,不再需要使用name//当函数调用完后,不再需要使用name程序中不能再访问到的对象//当函数调用完后,外部空间访问不到name了${//当函数调用完后,外部空间访问不到name了//当函数调用完后,外部空间访问不到name了。
原创
发布博客 2023.05.04 ·
594 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

关于微前端,你想知道的都在这!

微前端官网:https://micro-frontends.org/问题:如何实现多个应用之间的资源共享?之前比较多的处理方式是npm包形式抽离和引用,比如多个应用项目之间,可能有某业务逻辑模块或其他是可复用的,便抽离出来以npm包的形式进行管理和使用。发布效率低下:如果需要迭代npm包内的逻辑业务,需要先发布npm包之后,再每个使用了该npm包的应用都更新一次npm包版本,再各自构建发布一次,过程繁琐。如果涉及到的应用更多的话,花费的人力和精力就更多了。
原创
发布博客 2023.02.22 ·
1460 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

你不知道的npm

npm解决的核心问题是模块管理问题,npm包含cli脚手架、模块仓库、官网(https://www.npmjs.com/)三大部分。关于npm的相关信息可以查阅:https://docs.npmjs.com/about-npm。
原创
发布博客 2022.11.30 ·
2977 阅读 ·
2 点赞 ·
0 评论 ·
5 收藏

Eclipse Theia技术揭秘——自定义布局

以上介绍了ApplicationShell的组成和布局,那么我们要扩展一个toolbar或者simulator也就简单了,只需重写ApplicationShell的createLayout方法,添加自己定义的视图,然后使用inversify重新绑定即可。其实官方提供了一个@theia/toolbar的模块,也是按上述的方法去重写的。效果如图:});});} });};
原创
发布博客 2022.09.26 ·
1014 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Eclipse Theia技术揭秘——脚手架源码分析

首先我们在Github中下载Theia的源码。源码目录中我们主要关注dev-packages和packages两个包,dev-packages是开发工具包,packages下是Theia的核心依赖包,我们重点看一下dev-packages下的内容。然后我们重点看一下cli这个库。在package.json中可以看到bin字段注册的theia命令。然后我们看一下目录看一下bin/theia的内容。他引用了编译后lib下的theia,也就是编译前src下的theia.ts。我们具体看一下theia.ts
原创
发布博客 2022.09.26 ·
806 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Eclipse Theia技术揭秘——构建桌面IDE

首先我们先介绍一下Eclipse Theia Blueprint这套模板,它是用于构建基于 Eclipse Theia 平台的基于桌面的产品,以及展示 Eclipse Theia 功能。它由现有 Eclipse Theia 功能和扩展的子集组成,可以轻松下载并安装在所有主要操作系统平台上。大家可以去下载体验一下,它也是开源的,可以在Github上参考其代码。我们可以基于这套模板去定制我们的IDE产品。
原创
发布博客 2022.09.23 ·
468 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

企业级npm仓库搭建

之前写过一篇前端物料平台的搭建,其中涉及到使用私有npm仓库来管理前端物料,为此写一下企业的npm仓库搭建。那么企业为什么要搭建私有的npm仓库呢,我们平时大部分使用的是npm官方仓库的一些依赖库,但是针对企业级,企业需要开发自己的一些组件库和工具库,这些库需要在组织内部进行管理和共享,不能够上传npm公有仓库中,因此我们需要搭建企业私有仓库来解决这种问题。同时搭建私有仓库,能够提升npm包的安装下载速度和源的稳定性,比如淘宝镜像,本质上也是私有仓库。接下来我们介绍一下常用npm私有仓库框架。
原创
发布博客 2022.09.21 ·
1657 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏
加载更多