mac版unity3d使用vscode编辑器

参考:http://blog.csdn.net/pz789as/article/details/53504724

由于在Mac上,使用unity自带的Mono并不好用,特别是无法切换输入法,让人很纠结。

但是还好微软推出了vscode,用起来挺不错的!

首先去官网下载最新的vscode,解压后把包拖入launchpad里面去;

Read More

Share Comments

MySQL索引原理及慢查询优化

原文出处: 美团技术博客

MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理”等要求。我们知道一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,所以查询语句的优化显然是重中之重。
本人从13年7月份起,一直在美团核心业务系统部做慢查询的优化工作,共计十余个系统,累计解决和积累了上百个慢查询案例。随着业务的复杂性提升,遇到的问题千奇百怪,五花八门,匪夷所思。本文旨在以开发工程师的角度来解释数据库索引的原理和如何优化慢查询。

一个慢查询引发的思考

1
2
3
4
5
6
7
8
9
10
select
count(*)
from
task
where
status=2
and operator_id=20839
and operate_time>1371169729
and operate_time<1371174603
and type=2;

Read More

Share Comments

C/C++ 静态链接库(.a) 与 动态链接库(.so)

平时我们写程序都必须 include 很多头文件,因为可以避免重复造轮子,软件大厦可不是单靠一个人就能完成的。但是你是否知道引用的那些头文件中的函数是怎么被执行的呢?这就要牵扯到链接库了!

库有两种,一种是 静态链接库,一种是 动态链接库,不管是哪一种库,要使用它们,都要在程序中包含相应的 include 头文件。我们先来回顾一下程序编译的过程。如下图:

我们结合gcc指令来看一下每个阶段生成的文件:

Read More

Share Comments

react-native 频繁打印 __nw_connection_get_connected_socket_block_invoke Connection has no connected handler

解决办法是:

  1. Xcode menu -> Product -> Scheme -> Edit Scheme…
  2. Arguments -> Environment Variables -> Add -> Name: “OS_ACTIVITY_MODE”, Value:”disable”
Share Comments

iPhone尺寸 iPad尺寸

iPhone尺寸

iPhone设备 尺寸 分辨率
iPhone 3和3s 3.5 (320×480) 320×480
iPhone 4和4s 3.5 (640×960) 320×480
iPhone 5和5s 4.0 (640×1136) 320×568
iPhone 6 4.7 (750×1334) 375×667
iPhone6Plus 5.5 (1080×1920) 414x736

iPad尺寸

iPad设备 尺寸 分辨率
iPad1和2 9.7 (768x1024) (768x1024)
iPad3和4 9.7 (1536x2048) (768x1024)
iPad air 9.7 (1536x2048) (768x1024)
iPad mini 7.9 (768x1024) (768x1024)
iPad mini2 7.9 (1536x2048) (768x1024)
iPad pro 12,9 (2732*2048) (1366x1024)
Share Comments

yarn-快速 安全 可靠的javascripe包管理器

yarn

仅仅一夜,却也是无数个日夜,FaceBook 开源了 yarn 这个新的 JavaScript 包管理工具,
这个和 Exponent, Google, 以及 Tilde 合作完成的项目。
官网 | Github Repo

亮点

  1. 极致的快速—会缓存已经下载过的包,避免重复下载~ 这特性比npm好多了,不用每次都请求下载

    • 离线模式 — 之前下载过的包,可以离线再次安装
  2. 安全 — 下载前会检查签名及包的完整性

  3. 可靠可确定性

    • 保证各平台依赖的一致性
  4. 网络优化 — 力求网络资源最大利用化,让资源下载完美队列执行,避免大量的无用请求,下载失败会自动请求,避免整个安装失败

  5. 扁平化模式 — 对于不匹配的依赖版本的包创立一个独立的包,避免创建重复的。

Read More

Share Comments

tmux安装与使用

tmux

为什么要用tmux

tmux是什么?tmux是linux中一种管理窗口的程序。那么问题来了:Mac自带的Iterm2很好用啊。既支持多标签,也支持窗体内部Panel的分割,为什么还要用tmux?其实,多标签和分割窗体只是tmux的部分功能。用tmux的主要原因是它提供了一个窗体组随时存储和恢复的功能。看看以下的使用场景是否适合你:

  • 公司台式机开了一堆vim和log打印窗口下班了。到家后灵感突发,想要继续coding,登陆VPN,SSH连上台式后发现又要重新打开各种窗口,瞬间没心情了。。。FML!这个时候你就可以在你的公司台式机上装个tmux。同一组工作环境,在多处共享。
  • 公司服务器上调试程序,开了一堆窗口。出去吃了个饭,发现SSH超时了,broken pipe。重头开始。。。FML!如果你之前使用了tmux就不会有这样的问题,attach就能找回原来打开的那些窗口。

Read More

Share Comments

适配iOS10 的相关权限设置

解决办法(fix method):
在info.plist —Source Code中添加
UsageDescription相关的key, 描述字符串自己随意填写就可以,但是一定要填写,不然会引发包无效的问题,导致上传打包后构建版本一直不显示。

Read More

Share Comments

gem install json失败

1
2
3
4
5
6
7
8
9
10
11
12
# gem install json -v '1.8.3'  
Building native extensions. This could take a while...
ERROR: Error installing json:
ERROR: Failed to build gem native extension.

/usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from extconf.rb:1:in `&lt;main&gt;'

Gem files will remain installed in /var/lib/gems/1.9.1/gems/json-1.8.3 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/json-1.8.3/ext/json/ext/generator/gem_make.out

ubuntu:
sudo apt-get install ruby-dev

centos:

yum install ruby-devel

Share Comments

在Linux中增加swap空间

在安装Linux的时候,不知道swap空间分配多少比较好,所以会随便分配一个,在真正使用的时候,比如安装Oracle10g会要求很大的swap空间,发现swap空间不够,那应该怎么增加swap空间大小呢。

Read More

Share Comments