`
ribishuangba
  • 浏览: 291459 次
文章分类
社区版块
存档分类
最新评论
文章列表
先来一个简单的例子: module testContainer; import std.stdio; import std.container; void main(){ SList!int myList; foreach(i;0..10){ myList.insert(i); } foreach(element;myList){ writeln(element); } }编译后运行结果为输出10行数字。 foreach的语法和Java有点像,C++里面的iterator已经没有了,也不需要for_each加function object的组合 ...
muse发布pdf的时候需要安装几个必须的文件 apt-get install latex-cjk-allapt-get install texlive-latex-recommendedapt-get install texlive-latex-extra muse编写html的时候可以指定CSS文件, 在.emacs上可以配置一下默认的CSS文件: (setq muse-html-style-sheet "<link rel=\"stylesheet\" type=\"text/css\" ...
编写main.d,内容如下: import arsd.cgi; void yourFunction(Cgi cgi) { cgi.write("Hello, world!"); } mixin GenericMain!yourFunction;从下面的网站下载cgi.d文件,放在main.d同一个目录下 https://github.com/adamdruppe/misc-stuff-including-D-programming-language-web-stuff 用命令编译程序,得到可执行程序main dmd main.d cgi.d 直接运行main ...
GDB7.2后开始支持对D语言的调试,前提是必须用DMD编译时打开一个开关。 接着上例,编译命令修改为: dmd -gc -debug hello.d 然后就可以用正常的gdb命令调试了: gdb hello b hello.d:5 run 在Emacs里面用gdb模式调试,和C++一样方便了。
本文学习自下面的一篇文章,但是做了修改。 http://www.shejidaren.com/examples/css3-target/css3-target.html 将Tab按钮变成了两个,并且移动到了上方。为了移动到上方,增加了一个<div id=tabbody>包含了两个tab内容,两个tab内容采用绝对定位,而tabbody采用了相对定位,这样刚好位于和两个tab按钮之下。 html代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...
一个很简单的程序,Hello,world 1.下载d-mode.el http://prowiki.org/wiki4d/wiki.cgi?EditorSupport/EmacsDMode 2.放到自己的目录下,比如我的/opt/emacs_plugins目录, 然后在.emacs文件中配置一下: (load-file (expand-file-name "/opt/emacs_plugins/d-mode.el")) 需要重新启动emacs 3.下载Ubuntu下的安装包 http://dlang.org/download.html 双击就可安装。 4.在emac ...
一个wp7应用引用了Facebook csharp sdk的dll, 传给FacebookClient的方法中使用了一个匿名类型,结果抛出MethodAccessException 使用匿名类型: fb.PostAsync("oauth/access_token",new { client_id=AppId, client_secret=AppSecret, redirect_uri=RedirectUri, code=oauthResult.Code });异常代码: foreach(varpropertyInfoinparameters.GetType().GetPro ...
高内聚是有极限的. 当代码在一个维度上高度内聚的时候, 在其它维度上是发散的. -- 代码内聚设计的不确定性原理 大家都知道量子力学的不确定性原理: 在微观世界里, 有几对物理量不能同时精确的测定, 包括速度与位置, 以及能量与时间. 比如当我们精确的测定一个粒子的速度使其误差很小的时候, 我们对其位置的测量误差从0到正无穷都有可能, 换句话说, 此时粒子可能位于宇宙的任何地方, 这里的极限就是二者误差的乘积总是大于一个被称为普朗克常数的数. 代码的设计有时会感到同样的张力: 无法做到完全的内聚. 当代码在一个维度上高度内聚的时候, 在其它维度上是发散的或耦合的. 无论是逻辑设计还是物理设 ...
估算是软件开发中还没有很好的解决的一个问题, 因此争论也很多, 水平也参差不齐. 我无法给出更好的估算技术, 只是想抛出几个问题和观点 1. 单一职责和问题优先 让我们从几个常见的问题开始: 估实际工作量(人天)还是相对 ...
Herb Sutter 曾经有一个观点, 就是一个组件的接口, 不只包括这个组件本身定义的方法, 还包括使用这个组件的客户代码, 比如以这个组件为参数的那些方法. 扩展方法是对Herb Sutter这个观点所做的语法上的支持: 把以这个组件为参数 ...
1.应用Aggregation管理多个子项目 Maven中有一个Aggregation(聚合),可以将多个项目作为模块添加到一个pom.xml中,然后告诉Jenkins这个顶层pom.xml,就可以自动从Git中拿出这些项目的源代码,并build所有的子项目和运行相应的测试程序。我这里使用的是TestNG。 比如我有两个maven项目client和email_sender,我希望一次编译并测试,在这两个项目文件夹之上的目录上添加一个pom.xml,内容如下: <project xmlns="http://maven.apache.org/POM/4.0.0" xmln ...
Jenkins有一些专用术语,请参考下面的连接: https://wiki.jenkins-ci.org/display/JENKINS/Terminology 1.通过Jenkins web页面添加Git plugin Manage Jenkins->Manage Plugins->Available中选择Git Plugin安装, 注意要填写user name和 email地址,否则日后会碰到git ...
在Ubuntu上安装Jenkins很简单,请参考http://pkg.jenkins-ci.org/debian/ 这里要说明一点的是,默认会安装OpenJDK的运行库。如果你想使用Oracle的JDK的话,需要安装完成后在localhost:8080的页面下找到安装JDK的选项,并输入你在Oracle注册的的帐号,选择要安装需要的JDK版本,并设置为默认的。 不过OpenJDK已经是很成熟,自从Oracle吞并Sun之后,MySQL,JDK,OpenOffice等很多著名软件都发展出自己的开源版本,逃离Oracle。我也决定开始使用OpenJDK. Jenkins安装好后,会在/etc/ini ...
1.首先进入http://S1:8081/nexus/index.html 登录后,进入repositories页面。 2.点击Add按钮创建一个hosted repository,id为sheismylife,name为chenshu repository,点save按钮。创建成功。 3.如果有一个项目要发布,可以手动在网页上upload,也可通过mvn deploy命令部署。如果是后者: 修改pom.xml文件 <distributionManagement> <repository> <id>sheismylife</i ...
通过Internet直接从Maven公用仓库获取依赖包是默认配置。不过对于中国软件公司来讲,访问这些公用仓库通常较慢,对于一些管理严格的不能直接上网的软件公司来讲,这更加是不可能的。Maven项目可以配置成仅从Maven私服上获取依赖。 上一篇已经讲述了如何安装Nexus为Maven私服。下面就假定使用S1服务器上的Nexus服务。可以参考官方文档: http://www.sonatype.com/books/nexus-book/reference/config-sect-intro.html 在开发机器上有Maven项目,首先编辑~/.m2/settings.xml. <settin ...
Global site tag (gtag.js) - Google Analytics