西维蜀黍

【C#】Visual Studio 2017 一边Debug,一边修改代码

好久没写C#了,最近在学习著名科学上网工具 shadowsocks-windows 的源代码,想着可以边断点调试,边加上一些注释以方便理解,stackoverflow 和 msdn 随便翻了一下,竟发现了Debug新世界

  ...


【Git】Git之忽略文件(gitignore)

今天分享一下Git中一个非常重要的文件.gitignore,这个文件用来定义哪些文件或文件夹,Git不需要跟踪,从而也不需要将这些文件添加到版本管理中。

  ...


【Engineering】持续集成(Continuous integration)

这两天在TeamCity(一个Continuous integration 系统)上配置自己负责的一个Project,mark一下对**持续集成(Continuous integration)**的理解。

在传统软件开发过程中,集成通常发生在每个 developer 都完成了各自的代码开发工作之后。在项目尾声阶段,通常集成还要痛苦的花费数周或者数月的时间来完成。如今,更强调敏捷开发快速迭代的概念。持续集成满足了这一需求,是指将集成提前至开发的过程中的一种实践方式,让构建、测试和集成代码更经常反复地发生。

  ...


【Data Format】JSON

JSON 定义

JSON (JavaScript Object Notation) is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of attribute–value pairs and arrays (or other serializable values).

It is a common data format with a diverse range of functionality in data interchange including communication of web applications with servers.

JSON is a language-independent data format. It was derived from JavaScript, but many modern programming languages include code to generate and parse JSON-format data. JSON filenames use the extension .json.

JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.

  ...


【JavaScript】JavaScript 定时器深入解析

JavaScript提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()setInterval()这两个函数来完成。它们向任务队列添加定时任务。

  ...


【HTTP】URL总结

我每天都在使用URL,每天和他打交道。但是,在阅读《HTTP权威指南》后,才发现我对URL的理解是不全面的、碎片化的。

  ...


【VMware】VMware 16 安装 macOS

Build ISO Mirrnor

参考 https://swsmile.info/post/make-macos-install-usb-stick/

VMware中安装.iso

允许在VMware中安装MacOS

Download macOS Unlocker V3.0 for VMware Workstation: https://github.com/paolo-projects/unlocker

编辑.vmx文件

安装完unlocker208,新建虚拟机,一步一步往下走,在新建虚拟机的操作系统列表中,就能看到Apple Mac OS X,继续疯狂下一步。

启动虚拟机,在首次运行时,还会报错。

这时,需要虚拟机所在目录,找到xxx.vmx文件,右键用记事本方式打开,添加下面内容,再启动虚拟机,就可以愉快的安装啦。

smc.version = “0”
cpuid.0.eax = “0000:0000:0000:0000:0000:0000:0000:1011”
cpuid.0.ebx = “0111:0101:0110:1110:0110:0101:0100:0111”
cpuid.0.ecx = “0110:1100:0110:0101:0111:0100:0110:1110”
cpuid.0.edx = “0100:1001:0110:0101:0110:1110:0110:1001″
cpuid.1.eax = “0000:0000:0000:0001:0000:0110:1010:0101”
cpuid.1.ebx = “0000:0010:0000:0001:0000:1000:0000:0000”
cpuid.1.ecx = “1000:0010:1001:1000:0010:0010:0000:0011”
cpuid.1.edx = “0000:0111:1000:1011:1111:1011:1111:1111”
featureCompat.enable = “TRUE”

有可能需要将virtualHW 版本改到 10:

virtualHW.version = "10"

如果你进到了下图所示这里,恭喜你!表明我们自己做的镜像没有问题。

系统分区

选好语言后,我们要给我们的系统分区啦,使用“Disk Utility”这个官方工具,如下图。

依次点击“Erase”(步骤1),选择我们要操作的分区(步骤2),命名(步骤3),选择磁盘文件系统为Mac OS Extended(Journaled)(步骤4),模式为GUID(步骤5)。

对整个磁盘建立分区(左侧选择物理磁盘后,点击“Partition”)。具体分几个分区,分多大,你们自己决定吧。

  ...


【SQL】SQL 通配符(wildcard character)使用

1 SQL 通配符(wildcard character)

通配符可用于替代字符串中的任何字符。在 SQL 中,通配符与 SQL LIKE 操作符一起使用。

通配符 描述
% 替代一个多个字符
_ 仅替代一个字符
[charlist] 字符列的任何单一字符
[^charlist]或者[!charlist] 不在字符列中的任何单一字符
  ...


【Node.js】Node.js与NPM入门

引入

近两年来,Node.js渐火。还有大厂用Node.js来做前后端分离,把更偏展示逻辑的C端(常见的Web框架中MVC架构)用Node.js重构,而让后端更专注于业务开发(详细可参考 Web 研发模式的演变)。

  ...


【Browser】浏览器中的缓存机制

Background

浏览器中的缓存机制,其实就相当于HTTP协议定义的缓存机制,因为浏览器为我们实现了它。一般情况下我们会想到HTTP响应头中的 Pragma,Expires,Cache-Control,Last-Modified,If-Modified-Since,Etag ,因为这些域与缓存相关。

  ...