`
robbin
  • 浏览: 4821973 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
377a9ecd-1ea1-34ac-9530-9daa53bb2a7b
robbin谈管理
浏览量:137099
社区版块
存档分类
最新评论

JavaEye3.0开发手记之一 - 我的开发环境

    博客分类:
  • Ruby
阅读更多
JavaEye3.0的开发计划都喊了好久了,现在还刚刚开始,只完成了很少的一部分。为了3.0能够早日上线,我从这周开始把自己的大部分时间投入了编码工作。借这个机会,我准备边开发JavaEye3.0,边写写心得体会,与大家交流和分享使用RoR开发一个互联网web2.0网站的点点滴滴。

好了,开工!第一步就是搭建一个趁手的开发环境。我没有MacBook电脑,只有一台三年前买的IBM T40,跑MacOSX很勉强,还是在WindowsXP上面做开发吧。既然在WindowsXP上面开发,那IDE选什么呢?我选netbeans Ruby IDE:

一、 RoR IDE

http://deadlock.netbeans.org/hudson/job/ruby/

你可以从这个地方下载Ruby IDE专用版本的netbeans,只有30MB大小,速度比RadRails还快!netbeans的RoR支持很强大,但也要注意两点:
1) 一定要用JDK6.0,否则netbeans会很慢
2) 一定要修改JDK的字体文件,否则中文显示乱码(参考JavaEye论坛的dcaoyuan的帖子)
看我的截图:


netbeans Ruby IDE有很多很棒的快捷键,例如:

快速打开ruby类(包括系统类库) - Ctrl + O
快速打开当前项目文件 - Alt + Shift + O
在controller和view直接跳转 - Ctrl + Shift + A
在controller/model和test/spec之间跳转 - Ctrl + Shift + T
直接跳转到类和方法的源代码 - Ctrl + B
自动补齐 - Ctrl + \
方法参数提示 - Ctrl + P
快速修复提示 - Alt + Enter
上下文帮助 - Ctrl + Shift + Enter
重命名重构 - Ctrl + R

还有很多很多,可以参考这里:
http://wiki.netbeans.org/wiki/view/RubyShortcuts

netbeans用熟了以后,开发效率很高,大家慢慢体会。

然后就是console控制台了

二、命令行窗口

WindowsXP的命令行窗口实在太难用了,有没有好一点的解决办法呢?有!我用的是cygwin

常用Unix Shell工具一应俱全,连vim也装上了,实在是方便阿!

从截图里面大家可以看到Unix独有的tail -f log/development.log,可以动态观测开发日志的输出,这个东西实在很有用。 Windows平台也有很多tail的实现工具,但是无一例外不能按照Unix格式正常显示输出,只有cygwin和Radrails的tail是正常的。

唯一不爽的是在cygwin下面敲命令要带后缀,例如rake.bat stats, mongrel_rails.cmd start诸如此类。不过解决起来容易的很,我修改.bash_profile把$HOME/bin加入$PATH最前面,然后把这些命令统统在我的$HOME/bin下面建立符号连接,搞定!

三、rails plugin
罗列一下吧:
1) rspec, rspec_on_rails 这个用来取代test的,为什么要用rspec,是因为spec更加需求化,符合BDD编程的思路(行为驱动编程),而且rspec本身比rails的test功能支持更强大一些

2) ferret, acts_as_ferret, multilingual_ferret_tools 这个是用来做全文检索的,不用多说了吧,至于怎么更好的组织全文检索,我还没有来得及好好设计,慢慢来吧

3) attachment_fu 这个是用来保存附件的,本身使用了AR的多态关联

4) cache_fu 用来做对象缓存和查询缓存的

5) bbcodeizer 这个就是ruby版的bbocde解析器了,当然功能不算完整,要自己修改

6) acts_as_taggable 顾名思义,用来保存和操作用户自定义tag的

7) will_paginate 是rails内置paginate的绝好替代


四、文档帮助

1) fastri 你还在用ri来查文档吗?那你一定会抱怨ri实在太慢了,没关系,开命令窗口:
gem install fastri
按照快速ri这个gem包,然后
fastri-server -b
建立索引,然后你再使用qri查文档,速度是不是快了n倍?

2) rails文档活字典 看看这个网站:

http://www.railsbrain.com/api/rails-1.2.3/doc/index.html

怎么样?方便吧,赶快下载离线版rails帮助吧。我的FireFox一定要开两个tab,一个就是这个帮助,另外一个才是测试网页的。

五、调试器

别看ruby是动态语言,其实调试器功能并不比Java差,开命令窗口:
gem install ruby-debug-ide -y

然后开你的netbeans,打开调试器功能,以debug方式启动rails项目,哈哈,和Eclipse一样强大,在断点可以跟踪堆栈,watch变量,单步执行等等:

六、测试覆盖率

想知道项目的测试覆盖率吗?开命令窗口:
gem install rcov
然后配置一下rake tasks,执行就可以获得整个项目的测试覆盖率,不错吧?

分享到:
评论
26 楼 glchengang 2007-08-23  
我装了fcitx,在netbeans中输入中文的问题解决了,但编辑器锁死无法输入字符的问题还是存在.   当你在编辑器里调用一下右键快捷菜单的某项,再回到编辑器后,即被锁死.

25 楼 glamey 2007-08-23  
不知道有没有RUBY入门的中文文档.现在急需,希望ROBBIN大哥帮我找下。
24 楼 lgn21st 2007-08-23  
glchengang 写道
yananay 写道
我安装了jdk1.4 和 jdk6,我已经在path里设置了使用jdk6的bin目录,为什么一运行却提示我:没有安装jdk5?


光path没用,应该还要设置 JAVA_HOME吧。



我在ubuntu里试用了一下,好象有两个BUG:
(1)编辑器经常被锁住,键盘打字不上去。只能关掉文件,再打开才行。
(2)中文输入法在netbeans里无效,中文输入不了。


楼上用什么输入法?
如果是scim的确有这个问题,换用fcitx,至少这些问题在我的电脑上全部消失.

我的一个问题:
在ubuntu7.04下,默认字体实在是难看
我所有的开发环境使用的字体都设置成等宽字体:Bitstream Vera Sans Mono
如果用NetBeans的默认字体,显示和输入中文都没有问题,但是换用自定义字体,则输入,显示中文字符都是小方块
我也尝试过在/usr/lib/jvm/jre/lib/fonts下建立一个fallback目录,放一个中文字体在里面,没有效果.
23 楼 glchengang 2007-08-23  
yananay 写道
我安装了jdk1.4 和 jdk6,我已经在path里设置了使用jdk6的bin目录,为什么一运行却提示我:没有安装jdk5?


光path没用,应该还要设置 JAVA_HOME吧。



我在ubuntu里试用了一下,好象有两个BUG:
(1)编辑器经常被锁住,键盘打字不上去。只能关掉文件,再打开才行。
(2)中文输入法在netbeans里无效,中文输入不了。
22 楼 glchengang 2007-08-23  
在ubuntu 7.04下打开netbeans Ruby IDE是一片空白。

解决:
sudo gedit /etc/environment
加一句
AWT_TOOLKIT="MToolkit"
然后重启计算机。
21 楼 glchengang 2007-08-21  
Ruby的调试,以前我在radrails试用过,速度慢极。不知道netbean的调试器的速度如何。
20 楼 iamasnail 2007-08-20  
谢谢robbin这么慷慨的分享自己的经验,我想对每一个RoR爱好者都有帮助。
19 楼 yananay 2007-08-20  
我安装了jdk1.4 和 jdk6,我已经在path里设置了使用jdk6的bin目录,为什么一运行却提示我:没有安装jdk5?
18 楼 warren 2007-08-20  
不错,不过netbeans总是用不惯,快捷键知道的太少,还的多学啊.
17 楼 onlykwx 2007-08-20  
来学习了!!!
16 楼 stworthy 2007-08-20  
用Dreamweaver编辑RHTML文件会更方便些。
15 楼 SteveGY 2007-08-18  
tail -f 这种功能,用C随手写一个,Windows有监视文件系统的基本API,很容易做的

不过,我一直是直接开着EditPlus之类的,Open这个需要监视的文件,当文件内容变化的时候EditPlus可以直接提示或加载文件变化的内容的。
14 楼 hlxiong 2007-08-17  
robbin诲人不倦,衷心赞扬!
13 楼 kris_xu 2007-08-17  
学习中。
12 楼 pig345 2007-08-17  
robbin为什么不用suse了

另外,我看到你的nbrubyide是070810的,我下的070809以后的版本里面rails debug都是有问题的,总提示无法连接server,难道win下没问题?(我是 opensuse10.2 gnome jdk1.6.0 ruby1.8.6 rails1.2.3 ruby-debug-base0.9.3 ruby-debug-ide0.1.8)
11 楼 xxj 2007-08-17  
robbin回复的真快,多谢了

我修改了base下的properties,但是依然无效,x-ruby目录下的properties也有该值,value为true,似乎覆盖了base的值,我删除了该行才生效...
10 楼 fkpwolf 2007-08-17  
问以下:netbeans的rails开发不是供jruby开发用的么?
btw:Thoughtworks好像有个新的产品,mingle啥的,用来管理agile开发的,它就是基于jruby的,跑在tocmat上,相当的cutting edge
9 楼 robbin 2007-08-17  
xxj 写道
在Netbeans 中多个丑陋的线 

他太短了,习惯了IDEA,他应该是80个字符左右,但是在NETBEANS中似乎间距太短了,不知到怎么去掉,或者变大...


在系统的高级设置里面可以修改,不过要每种文件类型一一修改,比较麻烦,我的办法是直接改配置文件,一劳永逸。寻找该目录(是隐藏目录): C:\Documents and Settings\robbin\Application Data\.nbrubyide\dev\config\Editors\text\base

上述的\robbin\要改成你的用户名,编辑\base目录下面的properties.xml文件,加入:

<property class="java.lang.Boolean" name="text-limit-line-visible" value="false"/>
8 楼 leondu 2007-08-17  
robbin 写道

1) 一定要用JDK6.0,否则netbeans会很慢
2) 一定要修改JDK的字体文件,否则中文显示乱码(参考JavaEye论坛的dcaoyuan的帖子)


补充一下
1)修改\nbrubyide\etc\nbrubyide\nbrubyide.conf文件
将#jdkhome="/path/to/jdk" 修改为你的jdk路径
2)dcaoyuan的帖子链接是:
http://dcaoyuan.iteye.com/blog/55085
关于字体我是直接设置为微软雅黑就没有乱码的问题了。

另外:这个ruby ide的下载很慢,x k/s,不知道大家的下载速度怎么样?
7 楼 xxj 2007-08-17  
在Netbeans 中多个丑陋的线 

他太短了,习惯了IDEA,他应该是80个字符左右,但是在NETBEANS中似乎间距太短了,不知到怎么去掉,或者变大...

相关推荐

    JavaEye3.0开发手记

    ### JavaEye3.0开发手记之开发环境搭建详解 #### 一、开发环境搭建概述 随着JavaEye3.0开发计划的启动,本篇文章将详细介绍如何为该项目搭建高效的开发环境。开发过程中不仅需要考虑软件的选择,还需要针对操作...

    基于JavaEye-API实现的Gerry-聊天Dos版v1.0-lib库

    NULL 博文链接:https://ago520.iteye.com/blog/814571

    基于JavaEye-API实现的Gerry-聊天QQ版v1.0 (全)

    NULL 博文链接:https://ago520.iteye.com/blog/754087

    JavaEye论坛热点_-_2008年11月_-_总第6期

    【JavaEye论坛热点 - 2008年11月 - 总第6期】是2008年11月JavaEye论坛上讨论的热点话题汇总,包含了多个关于Java和软件开发领域的讨论主题。以下将对部分主题进行详细解释: 1. **领域模型的价值与困境** - 领域...

    Java学习网站---API手册下载---开发工具---项目源码---学习资料汇总

    Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。为了深入学习Java,了解并掌握其API(应用程序接口)以及使用高效的开发工具是至关重要的。下面,我们将详细探讨Java学习网站、API手册、...

    javaEye论坛热点09年1月-09年10月

    9. **移动开发**:随着Android的崛起,Java在移动开发领域的应用也可能是热点话题之一。 10. **面试与职业发展**:Java程序员的面试技巧、职场经验分享、职业规划等内容,对于求职者和开发者都有参考价值。 通过...

    JavaEye新闻月刊_-_2009年3月_-_总第13期

    JavaEye新闻月刊2009年3月第13期内容涉及了当时软件开发领域内的一系列重要话题,包括IBM拟收购Sun Microsystems公司的新闻报道、Java社区对此的看法以及各种编程语言、开发工具和技术的新动态。 首先,新闻月刊...

    JavaEye论坛热点推荐_-_2009年09月_-_总第16期.pdf

    【JavaEye论坛热点推荐 - 2009年09月 - 总第16期】 这期JavaEye论坛的热点推荐涵盖了多个Java相关的技术话题,包括JDK7的新特性、HTTP缓存、Android开发、Java编程面试问题、Hibernate缓存、网页数据存储设计、热...

    Jsp-Servlet复习笔记-----第3章 Servlet技术 - 堕落天使 - JavaEye技术网站.mht

    Jsp-Servlet复习笔记-----第3章 Servlet技术 - 堕落天使 - JavaEye技术网站.mhtJsp-Servlet复习笔记-----第3章 Servlet技术 - 堕落天使 - JavaEye技术网站.mht

    JavaEye新闻月刊 - 2009年2月 - 总第12期.pdf

    【JavaEye新闻月刊 - 2009年2月 - 总第12期】是一本专注于软件行业的专业杂志,主要关注Java及其相关领域的最新动态和技术进展。该月刊从JavaEye新闻频道的海量新闻中精选出精华内容,帮助读者把握国内外软件行业的...

    JavaEye+技术架构

    以上就是对JavaEye+技术架构中可能包含的一些核心技术和工具的解析,这些技术和工具共同构成了一个高效、灵活且易于维护的开发环境。具体到每个文件,可能涵盖了上述技术的配置文件、源代码、文档说明等内容,通过...

    JavaEye新闻月刊 - 2009年09月 - 总第19期.pdf

    【Java编程】 1. **Google核心Java类库开源** 在2009年9月,Google宣布其核心Java类库开源,这个类库被称为Guava。Guava项目最初是建立在google ...这些信息对于理解当时的Java开发环境和技术趋势具有重要价值。

Global site tag (gtag.js) - Google Analytics