下面的写法与直接 使用静态方法而言,可读性、可维护性更强是不是有DSL的感觉.... 当然enum反编译后,的确就是静态方法。 感谢刘光聪在简书上的分享 ...
分类:
编程语言 时间:
2016-08-03 23:38:44
阅读次数:
188
本周的主要内容介绍Gradle,NDK,管理依赖和Git等一、GradleGradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。
面向Java应用为主。当前其支持的语言限于Java、Groovy和Scala,计划未来将支持更多的语言。 Coding只是...
分类:
其他好文 时间:
2016-07-25 07:05:10
阅读次数:
263
毕业十年了,我就是靠路由器养活的,所以对路由器有很深的感情。先是在一家公司玩家庭终端,就是DSL路由器、路由器,这家公司虽然也有其他产品,但是基本不赚钱,所以也就不值一提。现在换了家公司,也还是玩路由器,只是体积变大了,原来公司的路由器一本书那么大,现在公司的..
分类:
其他好文 时间:
2016-07-24 21:03:25
阅读次数:
243
此前做过一个c++版的网络层dsl:http://www.cnblogs.com/qianqians/p/4255034.html 现在给这个dsl加入c#的支持,并且对代码的结构做了优化,将语法解析和代码生成做了解耦 语法解析部分 解析采用状态机机制,逐字符读取代码在读取到关键字符则跳转状态,并且 ...
为了将我们的应用部署到服务器上,我们需要为其配置一个运行环境。从底层到顶层有这样的运行环境及容器:
隔离硬件:虚拟机
隔离操作系统:容器虚拟化
隔离底层:Servlet容器
隔离依赖版本:虚拟环境
隔离运行环境:语言虚拟机
隔离语言:DSL
实现上这是一个请求的处理过程,一个HTTP请求会先到达你的主机。如果你的主机上运行着...
分类:
其他好文 时间:
2016-06-30 11:00:19
阅读次数:
158
Gradle DSL method not found: 'Android()' 错误原因: android studio 引进项目时,自动查找本机是否有项目设置的SDK版本,若发现没有,我们会在project structure修改成自己的SDK。然而,修改后,AS会自动在项目下的build.gr ...
分类:
移动开发 时间:
2016-06-04 22:03:49
阅读次数:
137
到这里词法分析模块就接近尾声了, 下面对词法分析模块进行总结 : 递归下降本质上也算是自顶向下的分析算法, 适合手工编码, 它相对来说更加灵活, 能够对于特定的DSL进行更加灵活的处理优化, 但是相对来说比较慢.而自动生成器则恰好相反, 接下来是一个LR(1)语法生成器的实例 -- YACC. 首先 ...
分类:
其他好文 时间:
2016-05-27 18:19:03
阅读次数:
181
将Android Studio升级至最新版(1.0 RC 4)之后,运行项目时出现问题: Gradle DSL method not found: 'runProguard()' 从字面就能看出来,出现这个问题的原因是找不到runProguard()这个方法了(调用这个方法的地方在每个Module对 ...
分类:
移动开发 时间:
2016-05-26 18:51:09
阅读次数:
239
前言 现在,搞APP开发居多,编译/打包等问题立即就成痛点了。一个APP有多个版本,Release版、Debug版、Test版。甚至针对不同APP Store都有不同的版本。在以前ROM的环境下,虽然可以配置Android.mk,但是需要依赖整个Android源码,而且还不能完全做到满足条件,很多事 ...
分类:
移动开发 时间:
2016-05-26 18:35:28
阅读次数:
274
第四十七章. Build Init 插件
Build Init 插件目前仍然是孵化状态。请务必注意,在以后的 Gradle 版本中,相关的 DSL 和其他配置可能会有所改变。
Gradle Build Init 插件可以用于引导创建一个新的 Gradle 构建的过程。它支持创建不同类型的全新项目,以及将现有的构建 (如 Apache Maven 构建) 转换成 Gradle 构建。
Gradle 插件通常需要被应用于 project 中才可以使用(见第 21.1节,"应用插件")。 Build Init...
分类:
其他好文 时间:
2016-05-26 10:25:54
阅读次数:
205