12行配置从Android Studio + Gradle构建体系迁移到facebook的BUCK构建体系,且保持两者同时兼容使用,编码使用AS,享受安卓最强大IDE的功能,打包、安装、测试用BUCK,享受安卓最快构建系统的畅快淋漓,两者互不干扰。从此妈妈再也不用担心我在编译安卓工程时睡着了,而且真的只要12行!
继续阅读 »
编程语言都有某种方法,来向编译器告知一块数据是恒定不变的。有时数据的恒定不变是很有用的,比如:
一个永不改变的编译时常量。
一个在运行时被初始化的值,而你不希望它被改变。
final数据
对于基本类型final数值恒定不变的;而用于对象引用,final使引用恒定不变。一旦引用被初始化指向一个对象,就无法再把它改为指向另一个对象。而对象其本身却是可以被修改的。
继续阅读 »
最近由于兴趣开始学习Go语言。对于编译型语言,最早接触的是Java,写了三年多,然而自从接触了异常灵活的脚本后就对它再也喜欢不起来。对于C系语言也一直没感觉。后来偶然看了一些Go相关的资料,也接触了一些基于Go编写的开源项目,觉得挺有意思,就学了一些,总的来说,还是比较喜欢Go的。
相比于Java,Go中没有了诸多繁琐的OO概念,接口的设计也非常简洁和解耦合。语法上,介于静态语言和动态语言之间,对于喜欢脚本的人来说,还是比较容易接受。
然后就是不得不提的goroutine,足够轻量和简单易用,比起其他语言中啰啰嗦嗦的一大堆多线程代码,确实更加让人喜欢。
基于Go,实现了一个HTTP请求模块ok。
学习资料
A Tour o
继续阅读 »
xmake master上最新版本已经支持vs2008工程文件的生成,通过project插件的方式提供,例如:
创建vs2008工程文件:
bash
$ xmake project -k vs2008
默认输出目录是在当前工程的下面,会生成一个vs2008的工程文件夹,打开解决方案编译后,默认的输出文件路径跟xmake.lua描述的是完全一致的,一般都是在build目录下
除非你手动指定其他的构建目录,例如:xmake f -o /tmp/build
创建vs2008工程文件,并且创建工程文件到指定目录:
bash
$ xmake project -k vs2008 f:\vsproject
目前这个插件也是刚刚跑
继续阅读 »
问题来源
一般来说,一个大型的项目都会有一些依赖的JAR包(Java归档,英语:Java ARchive),而在将项目部署到服务器的过程中,如果没有持续集成环境的话,也就是说服务器不支持在线编译及打包,那么需要自己上传依赖的JAR包,然而可能服务器上已经存在了该项目所依赖的JAR包(比如项目修复BUG,重新打包上传,而依赖不变或者版本升级,修改方法等),无需再次上传所依赖的JAR包,此时只需将该项目单独打包,在运行的时候指定CLASSPATH即可。
在将JAR包部署到服务器上之后,设置CLASSPATH环境变量,运行java -jar ...命令出现ClassNotFoundException异常。之后又试用了诸多其它参数设置C
继续阅读 »
上一篇文章简单介绍了 Source Map,接下来我们来看看如何利用各种工具来生成 Source Map。
什么是 Source Map?
Source Map 提供了一个与语言无关的方式,来将生产环境中的代码映射回开发环境中的原始代码。
在现代的开发流程中,我们的开发环境和实际线上环境的代码通常都不一样。在应用上线部署前,我们通常都要对我们的代码进行编译、合并、压缩或者其他方面的优化,这使得我们非常困难来准确定位会原始代码。但是,在生成过程中,Source Map 文件储存了这些位置信息,因此,当我们查找一行中的某个位置时,Source Map 文件可以准确定位到原始文件中的位置。这使得我们线上环境中的代码变得可读,甚至可调
继续阅读 »
xmake master上最新版本已经支持vs2002-vs2015工程文件的生成,通过project插件的方式提供,例如:
创建vs2013工程文件:
bash
$ xmake project -k vs2013
默认输出目录是在当前工程的下面,会生成一个vs2008的工程文件夹,打开解决方案编译后,默认的输出文件路径跟xmake.lua描述的是完全一致的,一般都是在build目录下
除非你手动指定其他的构建目录,例如:xmake f -o /tmp/build
创建vs2008工程文件,并且创建工程文件到指定目录:
bash
$ xmake project -k vs2008 f:\vsproject
继续阅读 »
xmake的工程描述文件xmake.lua虽然基于lua语法,但是为了使得更加方便简洁得编写项目构建逻辑,xmake对其进行了一层封装,使得编写xmake.lua不会像些makefile那样繁琐
基本上写个简单的工程构建描述,只需三行就能搞定,例如:
lua
target("test")
set_kind("binary")
add_files("src/*.c")
然后只需要执行编译并且运行它:
bash
$ xmake run test
这对于想要临时写些测试代码来讲,极大地提升了开发效率。。
作用域与工程描述语法
xmake的描述语法是按作用域划分的,主要分为:
外部作用域
内部作用域
继续阅读 »
最近换了公司 !!!
重新用上了高大上的 win7 系统,还是熟悉的画面,然后又装上了 WebStorm,准备开始我的性福人生。
但天有不测风云,在使用一个基于 webpack 构建的项目中,每次修改代码之后,webpack-dev-server 总是不能够自动重新编译,很烦!!!
这可急坏了宝宝!!!
但是我非常冷静的分析了一下原因,可能是因为webstorm有自动保存的机制, 是不是很机智,一下子就命中了要害(但其实这中间的过程可复杂了)
如上图, 在 File -> Settings -> Appearance & Behavior -> System Settings 里面,取消勾选上面红框的两项。
每次修改
继续阅读 »
为了UED前端团队更好的协作开发同时提高项目编码质量,我们需要将Web前端使用工程化方式构建;
目前需要一些简单的功能:
1. 版本控制
6. 编译SASS
2. 检查JS
3. 图片合并
4. 压缩CSS
5. 压缩JS
继续阅读 »