<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[godkun的博客]]></title><description><![CDATA[爱编程]]></description><link>https://blog.youkuaiyun.com/AndyNikolas</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; AndyNikolas]]></copyright><item><title><![CDATA[掌握设计原则，你就是光（25个问题，你会几个）]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/115575036</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/115575036</guid><author>AndyNikolas</author><pubDate>Sat, 10 Apr 2021 14:45:38 +0800</pubDate><description><![CDATA[25个问题，你会几个如何理解单一职责原则？如何判断职责是否足够单一？职责是否设计得越单一越好？什么是开闭原则？修改代码就一定意味着违反开闭原则吗？怎样的代码改动才被定义为扩展或者说是修改？如何做到对扩展开放、修改关闭？如何在项目中灵活运用开闭原则？什么是依赖反转(倒置)原则 ？高层模块和低层模块是啥意识?如何理解反转两个字？什么依赖被反转了？什么是控制反转 IOC ( Inversion Of Control )?什么是依赖注入 DI ( Dependency Injection )?IOC 和 DI 有什]]></description><category></category></item><item><title><![CDATA[彻底解决hexo s 启动服务后 打开localhost:4000 无响应的问题]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/80247317</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/80247317</guid><author>AndyNikolas</author><pubDate>Tue, 08 May 2018 23:09:39 +0800</pubDate><description><![CDATA[欢迎关注我的github: https://github.com/godkun/blog
问题：
使用 hexo s  命令启动服务后，打开浏览器localhost:4000 地址发现没有反应，出错。页面显示不出来。
解决
用 管理员身份 打开dos命令窗口输入一下命令
netstat -o -n -a | findstr :4000


查看一下4000端口的详细情况。
如下图所示:

发现40...]]></description><category></category></item><item><title><![CDATA[子网掩码最简单通俗的解释]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/80076134</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/80076134</guid><author>AndyNikolas</author><pubDate>Wed, 25 Apr 2018 10:54:42 +0800</pubDate><description><![CDATA[参考我在知乎写的答案：


  https://www.zhihu.com/question/56895036/answer/342336722
]]></description><category></category></item><item><title><![CDATA[玩转GIT之终结git-flow中分支冲突系列问题]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906202</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906202</guid><author>AndyNikolas</author><pubDate>Thu, 12 Apr 2018 02:16:55 +0800</pubDate><description><![CDATA[第一种处理方法

开发要求： 
不能丢弃本地修改，因为其中的某些内容的确是我们需要的，此时需要对unmerged的文件进行手动修改，删掉其中冲突的部分。



情景再现： 
 比如你在A分支上commit了，然后PR了，这时你的PR没有冲突的提示，可以合并。但是之后有人在你PR的目标上的相同位置做了修改，这个时候，你的PR就有冲突的提示了，不可以合并，怎么办？

解决方法： 
需要先获取远程最新的...]]></description><category></category></item><item><title><![CDATA[玩转GIT之git-flow中容易忘记的git命令]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906190</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906190</guid><author>AndyNikolas</author><pubDate>Thu, 12 Apr 2018 02:00:30 +0800</pubDate><description><![CDATA[1：git 回到上一个版本，如果git pull以后发现版本不对，要回退到上一个版本用下面命令

git reset --hard HEAD

2：git remote add origin git@github.com:stormzhang/test.git 
将本地的已有项目关联到github上的新的项目上，在github上新建一个仓库。



增加一个本地版本库到现有的 Git 项目

可以...]]></description><category></category></item><item><title><![CDATA[玩转GIT之在工作中要用的高级用法]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906162</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906162</guid><author>AndyNikolas</author><pubDate>Thu, 12 Apr 2018 01:45:04 +0800</pubDate><description><![CDATA[学会在命令行中查看差异

每当你进行了更新以后，都会生成一个commitID hash值，当别人改完代码或者你改完后，你要看修改了哪些代码后，你需要用git log查看commit值，然后git show commit-hash值。

这个git log 可以加参数，比如 git log -2 是查看最近两个的commit信息。



git tag



本地打标签：
git tag tagNa...]]></description><category></category></item><item><title><![CDATA[一招解决 npm i 安装 node-sass 出现错误]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906149</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906149</guid><author>AndyNikolas</author><pubDate>Thu, 12 Apr 2018 01:33:22 +0800</pubDate><description><![CDATA[问题： 
npm i安装出现错误，显示安装node-sass出现错误。



错误显示如下：

无法从https://github.com/sass/nodesass/releases/download/v4.7.1/win32-x64-57_binding.node下载二进制文件无法下载https://github.com/sass/node-sass/releases/download/v4....]]></description><category></category></item><item><title><![CDATA[玩转GIT之看清 git stash 的本质]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906132</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906132</guid><author>AndyNikolas</author><pubDate>Thu, 12 Apr 2018 01:24:50 +0800</pubDate><description><![CDATA[开发经验

1：当你新建文件修改了代码，如果没有git add 那么你用 git stash 是不能保存修改到暂存区的，但是如果你没有新建文件，只是在原有文件里进行修改，那么是可以在没有git add 的情况下保存到修改到暂存区的。



2：不论做什么样的修改，当你git add 之后，你都可以使用git stash 进行保存，然后再用git stash apply 进行恢复。

3：注意，gi...]]></description><category></category></item><item><title><![CDATA[玩转GIT之git个人快捷键设置和方法【极大提高git-flow开发效率】]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906105</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79906105</guid><author>AndyNikolas</author><pubDate>Thu, 12 Apr 2018 01:10:47 +0800</pubDate><description><![CDATA[秘诀

我使用的是git bash，环境是windows，一般是没有.bashrc文件的用cd ~进入用户目录，后在此目录下创建 .bashrc文件，命令如下：



touch .bashrc

然后



vim .bashrc

然后按下 i 进入编辑模式，这就可以编写进行设置快捷键



alias gc='git clone'
alias gst='git status'
alias g...]]></description><category></category></item><item><title><![CDATA[webpack4.0命令行模式下【不用配置文件】打包教程【傻瓜教程】]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79846856</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79846856</guid><author>AndyNikolas</author><pubDate>Sun, 08 Apr 2018 02:50:36 +0800</pubDate><description><![CDATA[解决问题

解决webpack4.0默认是从src目录下寻找index.js然后输出到dist目录中的main.js。很多同学用命令行在这里会踩很多坑。今天我来彻底解决这个问题。很简单。



初始化


新建一个目录




mkdir wpdemo


进入目录，然后新建入口文件和依赖文件




touch app.js
touch sum.js


  上面我用的是linux命令生成目录和...]]></description><category></category></item><item><title><![CDATA[浏览器中输入URL的各种情况带 / 号和不带 / 号的区别]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79503810</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79503810</guid><author>AndyNikolas</author><pubDate>Fri, 09 Mar 2018 22:17:11 +0800</pubDate><description><![CDATA[URL以 / 结尾

第一种情况：

http://www.example.com/dir/


  这种可以这样理解：以/结尾代表/dir/后面本来应该有的文件名被省略了。



为什么要省略呢？ 
因为这样输入更简洁快速，减少字节传输。
那么问题来了，没有文件名，服务器怎么知道要访问哪个文件呢? 
其实真相是：服务器上会事先设置好文件名省略时要访问的默认文件名。比如通常是index.html之...]]></description><category></category></item><item><title><![CDATA[如何在链接右边添加一个示意图标来达到对用户更友好的交互]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79471657</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79471657</guid><author>AndyNikolas</author><pubDate>Wed, 07 Mar 2018 15:15:49 +0800</pubDate><description><![CDATA[&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;
    &amp;lt;title&amp;gt;&amp;lt;/title&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;style&amp;gt;
  a[href $='.pdf'] {
    padding-right: 20px;
    background: transparent url(http://www.ico]]></description><category></category></item><item><title><![CDATA[程序语言原理基本介绍]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79465697</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79465697</guid><author>AndyNikolas</author><pubDate>Wed, 07 Mar 2018 01:10:43 +0800</pubDate><description><![CDATA[影响语言设计的两大要素


计算机体系结构
程序设计方法学






程序语言评价标准


可读性
可写性
可靠性
总成本
正交性


  正交性好久意味着相对较小的基本结构集合，能够以较少的组合方式来构成语言的控制结构和数据结构。但是，基本结构的任何一种可能组合都是合法且有意义的。如果某一个组合不合法，那就是正交性不够好。说通俗点就是如果一个语言的特例较多，那它的正交性就不好。

类型检查是否...]]></description><category></category></item><item><title><![CDATA[如何巧妙的在使用markdown的时候上传或者插入图片]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79450173</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79450173</guid><author>AndyNikolas</author><pubDate>Mon, 05 Mar 2018 19:55:20 +0800</pubDate><description><![CDATA[在使用有道云笔记或者直接书写markdown语法的时候，如何插入图片是一个比较麻烦的事情。问题在于：


  使用本地的图片地址的话，如果以后电脑存放图片地址变了或者不小心删掉了，那么笔记里的图片也就没了。


一个非常酷的解决方法是：


  可以用优快云博客来解决，你可以先将需要插入笔记里的图片上传到优快云博客上，并且设置为私密就可以了，然后在有道笔记上就使用优快云博客上的图片的url地...]]></description><category></category></item><item><title><![CDATA[markdown转pdf最简单的方法]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79450109</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79450109</guid><author>AndyNikolas</author><pubDate>Mon, 05 Mar 2018 19:48:51 +0800</pubDate><description><![CDATA[
使用chrome浏览器
使用有道云笔记编写markdown文件
到应用中心下载Markdown Preview Plus 插件


  下载地址： Markdown Preview Plus

在扩展程序中设置允许访问文件地址
然后将md文件拖到浏览器中预览，然后右击打印，然后选中保存为pdf就可以了。


完美解决使用有道云笔记时，没有将md文件另存为pdf的问题。

这样就不用再使用为知笔记...]]></description><category></category></item><item><title><![CDATA[对Node的深刻认知]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79330849</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79330849</guid><author>AndyNikolas</author><pubDate>Fri, 16 Feb 2018 20:36:51 +0800</pubDate><description><![CDATA[node.js是JavaScript的运行环境，或者说是web开发的runtime。



总的介绍


事件驱动
非阻塞I/O
基于Chrome V8引擎
单线程
使用 JavaScript 开发后端代码




优点


事件驱动
非阻塞I/O
前端开发工程师偏爱




Node适合干什么


  适合I/O密集场景




CPU 密集和  I/O密集的区别


CPU密集：压缩、解压、加...]]></description><category></category></item><item><title><![CDATA[进程和线程最直白的解释]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79330802</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79330802</guid><author>AndyNikolas</author><pubDate>Fri, 16 Feb 2018 20:18:28 +0800</pubDate><description><![CDATA[进程


  是计算机中的程序关于某数据集合上的一次运行活动，是系统进行资源分配和调度的基本单位。


通俗的说：电脑桌面上的程序，比如播放器，点击图标运行程序，那么程序就被加载到了内存中，那么这个运行中的播放器程序就叫进程。


  但是单核cpu怎么也可以同时执行很多程序呢？主要是因为计算机做了一个很聪明的事情，它用很快的时间轮换执行多个程序，比如1ns执行这个程序的语句，另一个ns执行那个程...]]></description><category></category></item><item><title><![CDATA[在 JavaScript 中， 究竟什么是 事件，事件 是指什么？]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79279297</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79279297</guid><author>AndyNikolas</author><pubDate>Wed, 07 Feb 2018 13:53:58 +0800</pubDate><description><![CDATA[定义


  事件是指被程序发现的行为或发生的事情，而且它可能会被程序处理。




MV*框架通常区分两种事件：


用户事件：通常在view中处理，程序允许用户通过触发和处理事件的形式沟通，比如单击一个按钮，滚动屏幕，提交一个表单。
程序事件：应用自身也可以触发和处理一些事件，比如渲染后触发onRender事件等。]]></description><category></category></item><item><title><![CDATA[SPA和AJAX两者最本质的区别]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79279089</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79279089</guid><author>AndyNikolas</author><pubDate>Wed, 07 Feb 2018 13:31:20 +0800</pubDate><description><![CDATA[主要区别：


AJAX是直接以 HTML 的形式加载应用的一部分，通过 ajax 直接将 html 嵌入到 dom 中。





SPA是以模板形式去显示 html，不直接加载html，先加载 JSON 数据，然后经过模板编译后变成 html 形式。]]></description><category></category></item><item><title><![CDATA[在jquery中，$('.a  .b')和$('.a.b')的区别]]></title><link>https://blog.youkuaiyun.com/AndyNikolas/article/details/79276374</link><guid>https://blog.youkuaiyun.com/AndyNikolas/article/details/79276374</guid><author>AndyNikolas</author><pubDate>Wed, 07 Feb 2018 09:09:44 +0800</pubDate><description><![CDATA[没有空格的，就是平行关系的，如下所示：


div class="a">
    div class="b">div>
div>


有空格就是所属关系，如下所示：


div class="a b">div>]]></description><category></category></item></channel></rss>