<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[lkitlike的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/lkitlike</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; lkitlike]]></copyright><item><title><![CDATA[职场新手引导-Golang后端开发流程演示]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/105165158</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/105165158</guid><author>lkitlike</author><pubDate>Sat, 28 Mar 2020 17:43:46 +0800</pubDate><description><![CDATA[对于职场新手来说，进入一家新公司，除了要搭建一下开发环境，还需要了解一下项目组的开发流程。只有在了解了开发流程后，才能真正参与到项目的开发中，那么接下来我就介绍一下常见的开发流程，并用Github仓库来一步步演示如何开发。首先介绍一下开发流程的10个步骤：
开发流程


接受需求任务


创建需求分支


编写需求代码


编写测试代码


Push需求分支


提交Pull Request


...]]></description><category></category></item><item><title><![CDATA[新手引导 — Golang后端开发环境搭建]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/104960387</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/104960387</guid><author>lkitlike</author><pubDate>Thu, 19 Mar 2020 09:37:28 +0800</pubDate><description><![CDATA[入职引导
作为一名新入职的Golang后端开发，坐到工位的第一件事肯定是安装开发环境。每个公司的项目都有可能不一样，但基本软件都是要安装的。下面我来介绍一下，有哪些软件需要安装？
1. 编译软件
如果要运行Golang代码，肯定需要安装Golang编译器，一般我们都会下载最  新版本，但是公司可能会指定版本，避免因版本的不一样造成BUG。
2. 编辑软件
在Golang代码能运行后，我们还需要有个...]]></description><category></category></item><item><title><![CDATA[JS中实现浅拷贝和深拷贝]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/90901854</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/90901854</guid><author>lkitlike</author><pubDate>Wed, 05 Jun 2019 14:28:01 +0800</pubDate><description><![CDATA[（一）JS中基本类型和引用类型
JavaScript的变量中包含两种类型的值：基本类型值 和 引用类型值，在内存中的表现形式在于：前者是存储在栈中的一些简单的数据段，后者则是保存在堆内存中的一个对象。

基本类型值

在JavaScript中基本数据类型有String，Number，Undefined，Null，Boolean，在ES6中，又定义了一种新的基本数据类型Symbol，所以一共有6种。...]]></description><category></category></item><item><title><![CDATA[41-撩课大前端-面试宝典-第四十一篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/86548793</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/86548793</guid><author>lkitlike</author><pubDate>Sat, 19 Jan 2019 09:24:23 +0800</pubDate><description><![CDATA[1.DNS解析过程？若是新申请的域名如何查找DNS?
DNS是应用层协议，
事实上他是为其他应用层协议工作的，
包括不限于HTTP和SMTP以及FTP，
用于将用户提供的主机名解析为ip地址。

具体过程如下：
(1)浏览器缓存: 
当用户通过浏览器访问某域名时，
浏览器首先会在自己的缓存中查找是否
有该域名对应的IP地址（若曾经访问过
该域名且没有清空缓存便存在)；

(2)系统缓存：
 当浏览...]]></description><category></category></item><item><title><![CDATA[40-撩课大前端-面试宝典-第四十篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/86518865</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/86518865</guid><author>lkitlike</author><pubDate>Thu, 17 Jan 2019 10:05:43 +0800</pubDate><description><![CDATA[1.git fetch和git pull的区别?
git pull：相当于是从远程获取最新版本并merge到本地
 
git fetch：相当于是从远程获取最新版本到本地，不会自动merge

2.说说网络分层里七层模型是哪七层?
应用层：
应用层、表示层、会话层（从上往下）（HTTP、FTP、SMTP、DNS）

传输层（TCP和UDP）

网络层（IP）

物理和数据链路层（以太网）

每一层...]]></description><category></category></item><item><title><![CDATA[39-撩课大前端-面试宝典-第三十九篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/86487537</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/86487537</guid><author>lkitlike</author><pubDate>Tue, 15 Jan 2019 09:49:43 +0800</pubDate><description><![CDATA[1.谈谈你对webpack的看法?

WebPack&amp;nbsp;是一个模块打包工具，
你可以使用WebPack管理你的模块依赖，
并编绎输出模块们所需的静态文件。
它能够很好地管理、
打包Web开发中所用到的`HTML、javaScript、CSS 
以及各种静态文件（图片、字体等），
让开发过程更加高效。
对于不同类型的资源，webpack 有对应的模块加载器。
webpack 模块打包器会分析...]]></description><category></category></item><item><title><![CDATA[38-撩课大前端-面试宝典-第三十八篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/86468312</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/86468312</guid><author>lkitlike</author><pubDate>Mon, 14 Jan 2019 09:56:45 +0800</pubDate><description><![CDATA[1.JavaScript实现二分法查找?

二分法查找，也称折半查找，是一种在有序数组中查找特定元素的搜索算法。
查找过程可以分为以下步骤：
（1）首先，从有序数组的中间的元素开始搜索，
  如果该元素正好是目标元素（即要查找的元素），则搜索过程结束，否则进行下一步。
（2）如果目标元素大于或者小于中间元素，
  则在数组大于或小于中间元素的那一半区域查找，然后重复第一步的操作。
（3）如果某一步...]]></description><category></category></item><item><title><![CDATA[37-撩课大前端-面试宝典-第三十七篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/86346218</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/86346218</guid><author>lkitlike</author><pubDate>Sat, 12 Jan 2019 09:04:35 +0800</pubDate><description><![CDATA[1.JavaScript实现二分法查找?

二分法查找，也称折半查找，是一种在有序数组中查找特定元素的搜索算法。
查找过程可以分为以下步骤：
（1）首先，从有序数组的中间的元素开始搜索，
  如果该元素正好是目标元素（即要查找的元素），则搜索过程结束，否则进行下一步。
（2）如果目标元素大于或者小于中间元素，
  则在数组大于或小于中间元素的那一半区域查找，然后重复第一步的操作。
（3）如果某一步...]]></description><category></category></item><item><title><![CDATA[36-撩课大前端-面试宝典-第三十六篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/86213137</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/86213137</guid><author>lkitlike</author><pubDate>Thu, 10 Jan 2019 09:13:55 +0800</pubDate><description><![CDATA[1.介绍一下你对浏览器内核的理解？
主要分成两部分：渲染引擎(layout engineer或Rendering Engine)和JS引擎。
渲染引擎：负责取得网页的内容（HTML、XML、图像等等）、
整理讯息（例如加入CSS等），以及计算网页的显示方式，然后会输出至显示器或打印机。

浏览器的内核的不同对于网页的语法解释会有不同，所以渲染的效果也不相同。
所有网页浏览器、电子邮件客户端以及其它...]]></description><category></category></item><item><title><![CDATA[35-撩课大前端-面试宝典-第三十五篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/86130997</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/86130997</guid><author>lkitlike</author><pubDate>Wed, 09 Jan 2019 09:14:51 +0800</pubDate><description><![CDATA[1.React 中 refs 的作用是什么？

Refs 是 React 提供给我们的安全访问 DOM 元素或者某个组件实例的句柄。
我们可以为元素添加 ref 属性然后在回调函数中接受该元素在 DOM 树中的句柄，
该值会作为回调函数的第一个参数返回：

class CustomForm extends Component {
  handleSubmit = () =&amp;gt; {
    co...]]></description><category></category></item><item><title><![CDATA[34-撩课大前端-面试宝典-第三十四篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/86062097</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/86062097</guid><author>lkitlike</author><pubDate>Tue, 08 Jan 2019 09:22:04 +0800</pubDate><description><![CDATA[1.React 中 keys 的作用是什么？

Keys 是 React 用于追踪哪些列表中元素被修改、被添加或者被移除的辅助标识。

render () {
  return (
    &amp;lt;ul&amp;gt;
      {this.state.todoItems.map(({item, key}) =&amp;gt; {
        return &amp;lt;li key={key}&amp;gt;{item...]]></description><category></category></item><item><title><![CDATA[33-撩课大前端-面试宝典-第三十三篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/85983745</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/85983745</guid><author>lkitlike</author><pubDate>Mon, 07 Jan 2019 08:59:59 +0800</pubDate><description><![CDATA[1.CommonJS 中的 require/exports 和 ES6 中的 import/export 区别？

CommonJS 模块的重要特性是加载时执行，
即脚本代码在 require 的时候，就会全部执行。
一旦出现某个模块被”循环加载”，
就只输出已经执行的部分，
还未执行的部分不会输出。

ES6 模块是动态引用，
如果使用 import 从一个模块加载变量，
那些变量不会被缓存，
...]]></description><category></category></item><item><title><![CDATA[32-撩课大前端-面试宝典-第三十二篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/85834286</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/85834286</guid><author>lkitlike</author><pubDate>Sat, 05 Jan 2019 09:19:07 +0800</pubDate><description><![CDATA[1.module、export、import是什么，有什么作用？

module、export、import是ES6用来统一前端模块化方案的设计思路和实现方案。
export、import的出现统一了前端模块化的实现方案，
整合规范了浏览器/服务端的模块化方法，
用来取代传统的AMD/CMD、requireJS、seaJS、commondJS
等等一系列前端模块不同的实现方案，使前端模块化更加统一...]]></description><category></category></item><item><title><![CDATA[31-撩课大前端-面试宝典-第三十一篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/85755370</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/85755370</guid><author>lkitlike</author><pubDate>Fri, 04 Jan 2019 09:02:24 +0800</pubDate><description><![CDATA[1.web storage和cookie的区别?

Web Storage的概念和cookie相似，
区别是它是为了更大容量存储设计的。
Cookie的大小是受限的，
并且每次你请求一个新的页面的时候Cookie都会被发送过去，
这样无形中浪费了带宽，
另外cookie还需要指定作用域，
不可以跨域调用
除此之外，
WebStorage拥有setItem,getItem,removeItem,cl...]]></description><category></category></item><item><title><![CDATA[30-撩课大前端-面试宝典-第三十篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/85676924</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/85676924</guid><author>lkitlike</author><pubDate>Thu, 03 Jan 2019 09:31:39 +0800</pubDate><description><![CDATA[1.什么叫优雅降级和渐进增强？

优雅降级：
Web站点在所有新式浏览器中都能正常工作，
如果用户使用的是老式浏览器，
则代码会针对旧版本的IE进行降级处理了,
使之在旧式浏览器上以某种形式降级体验却不至于完全不能用。
如：border-shadow

渐进增强：
从被所有浏览器支持的基本功能开始，
逐步地添加那些只有新版本浏览器才支持的功能,
向页面增加不影响基础浏览器的额外样式和功能的。
当浏...]]></description><category></category></item><item><title><![CDATA[29-撩课大前端-面试宝典-第二十九篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/85595739</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/85595739</guid><author>lkitlike</author><pubDate>Wed, 02 Jan 2019 09:05:45 +0800</pubDate><description><![CDATA[1.https协议的优点?

使用HTTPS协议可认证用户和服务器，
确保数据发送到正确的客户机和服务器；
HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、
身份认证的网络协议，要比http协议安全，
可防止数据在传输过程中不被窃取、改变，确保数据的完整性。
HTTPS是现行架构下最安全的解决方案，
虽然不是绝对安全，但它大幅增加了中间人攻击的成本。
谷歌曾在2014年8月份调整搜索引...]]></description><category></category></item><item><title><![CDATA[28-撩课大前端-面试宝典-第二十八篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/85525733</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/85525733</guid><author>lkitlike</author><pubDate>Tue, 01 Jan 2019 10:43:23 +0800</pubDate><description><![CDATA[1.用setTimeout()方法来模拟setInterval()与setInterval()之间的什么区别？

首先来看setInterval的缺陷，使用setInterval()创建的定时器确保了定时器代码规则地插入队列中。
这个问题在于：
如果定时器代码在代码再次添加到队列之前还没完成执行，
结果就会导致定时器代码连续运行好几次。
而之间没有间隔。

不过幸运的是：
javascript引擎...]]></description><category></category></item><item><title><![CDATA[27-撩课大前端-面试宝典-第二十七篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/85449841</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/85449841</guid><author>lkitlike</author><pubDate>Mon, 31 Dec 2018 10:15:51 +0800</pubDate><description><![CDATA[1.浏览器缓存?

浏览器缓存分为强缓存和协商缓存。当客户端请求某个资源时，获取缓存的流程如下：

先根据这个资源的一些 http header 判断它是否命中强缓存，
如果命中，则直接从本地获取缓存资源，不会发请求到服务器；

当强缓存没有命中时，客户端会发送请求到服务器，
服务器通过另一些request header验证这个资源是否命中协商缓存，称为http再验证，
如果命中，服务器将请求返回...]]></description><category></category></item><item><title><![CDATA[26-撩课大前端-面试宝典-第二十六篇]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/85374395</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/85374395</guid><author>lkitlike</author><pubDate>Sun, 30 Dec 2018 10:57:57 +0800</pubDate><description><![CDATA[1.vuejs与angularjs以及react的区别？

1.与AngularJS的区别
相同点：
都支持指令：内置指令和自定义指令。
都支持过滤器：内置过滤器和自定义过滤器。
都支持双向数据绑定。
都不支持低端浏览器。

不同点：
1.AngularJS的学习成本高，比如增加了Dependency Injection特性，而Vue.js本身提供的API都比较简单、直观。
2.在性能上，Angu...]]></description><category></category></item><item><title><![CDATA[撩课-Java-Intellij Idea热部署项目与导入Eclipse项目]]></title><link>https://blog.youkuaiyun.com/lkitlike/article/details/85374331</link><guid>https://blog.youkuaiyun.com/lkitlike/article/details/85374331</guid><author>lkitlike</author><pubDate>Sun, 30 Dec 2018 10:56:59 +0800</pubDate><description><![CDATA[热部署项目
什么是热部署
代码发生变化时， 不需要重新启动服务器

安装jrebel插件
让项目支持jrebel

导入Eclipse项目
1.把Eclipse项目复制一份，放到自己指定的位置

2.打开Idea,在进入工程前选择，inmport Project

注意事项:
config当中要把JavaEE的插件都给先安装好

3.在弹出的对象话框中选择，刚才复制的eclise项目位置,点击确定...]]></description><category></category></item></channel></rss>