su开发rubyapi源码(ruby开发教程)
本文目录一览:
- 1、如何在ruby控制台控制sketchup的物品运动
- 2、Revit 和 SketchUp 软件各有哪些优劣
- 3、草图大师,安装插件,跳出这样提醒,ruby 控制台?怎么解决?
- 4、ruby开发的软件,怎么避免源代码泄漏
- 5、linux下安装ruby方法!
如何在ruby控制台控制sketchup的物品运动
在正式学习之前,推荐大家安装sketchup建筑草图大师 V5.0 汉化版。
第一章sketchup教程我们主要是讨论文本,变量,常量和数组。在第三章sketchup教程我们会讨论SketchUp的模型,但是在我们必须要学习这些基础知识,在会跑之前肯定是要学会走路的,对吧!
1.1 Ruby控制台窗口
首先,我们在SketchUp的窗口菜单中选择Ruby控制台选项。Ruby控制台允许我们输入和执行一行代码。或者使用Sketchup Ruby代码编辑器
来写代码执行,不过先熟悉控制台是比较好的选择,在本章的最后我们也会讨论如何编辑多行命令的。
Ruby控制台的使用是非常简单的,在文本框中输入代码然后按下回车就会自动执行代码。显示结果出现在命令上面,如下图:
我们在文本框中输入了下面的命令:
2 + 2
按下回车键,将会出现结果
这是一个有效的Ruby命令,他相当于一个算术表达式。
1.2 数值和数值运算符
在我们使用SketchUp建模时,其中一个常用做的工作就是使用点来画线条和表面。每个点都是由3个数值坐标组成。所以理解Ruby如何捕获数值是非常重要的,我们这节主要讨论数值形式,数值运算符和常见操作。
Revit 和 SketchUp 软件各有哪些优劣
SketchUp和比Revit比 优缺点显而易见
sketchup需要ruby二次开发的支持才会强大,强大程度取决于你的开发能力
revit在bim领域一家独大,软件操作繁琐,学习成本高,不符合中国国情
草图大师,安装插件,跳出这样提醒,ruby 控制台?怎么解决?
不知道你软件是不是有安装过其他版本,如果是有其他版本,应该是卸载没完全导致,建议你可以清理注册表然后进行重装,推荐使用下面的版本,网页链接
ruby开发的软件,怎么避免源代码泄漏
在Ruby中,一切皆是对象。下面举一个例子来更直观地说明Ruby语言的这一特点。
在Java中,求一个数的绝对值的代码如下。
int c = Math.abs(-20);
而在Ruby语言中,一切皆是对象,也就是说“-20”这个数也是一个对象,因此,求一个数绝对值的Ruby代码形式如下。
c = -20.abs 这样的代码编写方式是不是更形象一些呢?
Rails 框架是一个更符合实际需要而且更高效的Web开发框架,Rails结合了PHP体系的优点(快速开发)和Java体系的优点(程序规整)。
Rails是一个全栈式的MVC框架,换句话说,通过Rails可以实现MVC模式中的各个层次,并使它们无缝地协同运转起来。
在实际开发一个MVC模式的Web应用项目时,如果使用Java开发,需要用到Struts、Hibernate和Spring等框架,而且需要额外整合3个框架开发出的内容。而使用Ruby语言开发相同的项目时,只需要用到Rails框架就可以完成。
RoR的效率肯定要比Java高一个数量级,这确实是事实,比PHP至少也要高好几倍,这也是事实,这一点在这篇文章中不展开了,但是为什么开发效率这么高,我也想谈谈我的看法,当然还很不成熟的看法:
一、主要原因是ruby语言的语法非常强大我记得庄表伟说过一个观点:“框架是强化的语法”,意思就是说语法比较弱,所以才需要n多框架,如果语法很强,框架就很少。这一点在Java和ruby身上得到了验证。
1、ruby的open class VS Java的AOP,反射、动态代理,字节码增强等技术JDK1.3开始引入反射,就已经打开了Java这种静态类型语言通往动态类型语法的潘多拉魔盒。随后的动态代理技术,字节码增强技术,静态和动态的AOP技术开始层出不穷,为什么呢?就是需要在程序运行期动态改变对象的行为。但是对于ruby来说是open class的,语法级别上就支持程序运行期修改对象行为,所以Java需要很复杂技术才能实现的功能对于ruby来说就是非常简单的搞定了。
2、ruby的duck typing VS Java的IoC,泛型Java的IoC不用说了,泛型在库级别也开始广泛使用。IoC就是根据对象行为来进行对象组装,泛型就是在不确定对象行为的情况下确定对象的交互。但是ruby的对象行为是在运行期才确定的,天然就是泛型的,行为不是静态的,所以不需要IoC。
3、ruby的block,closure VS Java的匿名内部类大家对spring的Template肯定印象很深刻,但是这是ruby标准的用法,所以各种资源释放,异常处理在语法级别上就支持的很好,做起来很简单。
4、ruby的Meta programming VS Java缺乏method_missing机制大家耳熟能详了,Java没有这么强的Meta programming,很多ruby magic耍不出来。
5、脚本语言 VS 编译语言这也是一个很大的优势,脚本编程速度确实快。
二、rails框架确实做的很棒
1、full-stackrails是一个概念一致的fullstack框架,不知道为什么,在Java世界目前只有Rife这一个可以和RoR相提并论的fullstack框架,但是Rife的实现并不好(作者从PHP转过来的,和DHH爆发过口水战)。不过因为底层语法支持的不同,用Java是做不出来RoR框架的。因此也有人用Groovy做Grails,不过这帮人不太争气。
2、CoC这个不用说了,现在很多Java框架开始吸收这一点。
3、为web开发良身打造web开发需要用到各种技术全部提供,绝对的贴心,如果用Java,这些东西都需要自己集成或者自己实现,省了一大堆麻烦事。
4、开发测试部署快速这个不说了,Java劣势太明显了
关于“效率提高的来源”问题,我的理解就是次要复杂性被ROR降低到了极致。说的难听一点,不是ROR太聪明,而是我们以前做得蠢事太多了。各种各样的xml, taglib,单元测试困难 ... ...
做过项目的人都知道这些次要复杂性很多情况下真的是要命的。ROR没有降低软件的内在复杂性,也就是业务问题。但是它把复杂性降低到无限趋近于业务复杂性,也有人称ROR是Web开发的DSL。而解决业务问题正是人发挥聪明才智的地方,ROR不能代替人,但是它把人从次要复杂性的泥潭之中解救了出来。
参考资料:南京赛威信息科技
linux下安装ruby方法!
linux下ruby编程环境su开发rubyapi源码的安装和配置su开发rubyapi源码,方法如下su开发rubyapi源码:
1、去ruby官方下载安装包,下载地址:
2、解压缩下载的ruby-1.9-stable.tar.gz安装包,进入目录。
su
#./configure -prefix=/usr/local/ruby-1.9
#make
#make install
此时可能出现的错误:
echo executable host ruby is required. use --with-baseruby option.;
false ./tool/generic_erb.rb -c -o known_errors.inc
./template/known_errors.inc.tmpl ./defs/known_errors.def
executable host ruby is required. use --with-baseruby option.
make: *** [known_errors.inc] Error 1
出现此问题的原因在于1.9版本的ruby编译需要系统默认安装旧版本的ruby,而ubuntu中默认没有安装。
3、解决方法:
sudo apt-get install ruby
#默认ubuntu10.10会自行安装ruby 1.8,之后再编译1.9就没问题su开发rubyapi源码了。
下载1.8.7版本源码编译安装,并设置临时环境变量 ,进入1.8源码目录
su
#./configure -prefix=/usr/local/ruby-1.8
#make make install
export PATH=/usr/local/ruby-1.8/bin:$PATH
#此时使用ruby -v验证版本为1.8
4、在刚才安装配置ruby1.8的终端中继续重新进行1.9的编译安装,进入1.9源码目录:
#解压文件
tar vfxz ruby-1.9.1-p0.tar.gz
#进入解压后的文件夹
cd ruby-1.9.1-p0/
#编译源码,编译之前,应该先对/usr/local/ruby-1.9.1文件夹设置权限.
./configure --prefix=/usr/local/ruby-1.9.1
#大名鼎鼎的 make 和 install
make make install
#设置PATH路径,把安装的ruby放在系统PATH前面,避免调用操作系统自带的ruby
export PATH=/usr/local/ruby-1.9.1/bin:$PATH
#在 ~/.profile 文件中增加了这样的代码:
if [ -d "/usr/local/ruby-1.9.1/bin" ] ; then
PATH="/usr/local/ruby-1.9.1/bin:$PATH"
fi
然后 注销 再登陆一次.
#如无意外
ruby -v
#ruby 1.9.1p0 (2009-01-30 revision 21907) [i686-linux]
#ruby 1.9.1安装成功了.
注意:之前安装了1.8版本ruby,可以直接通过rm -rf /usr/local/ruby-1.8删除即可。