草庐IT

2022-10-15-整洁代码的注释与格式

全部标签

ruby-on-rails - 如何从现有的Ruby代码生成UML图?

有人能为ruby和rubyonrails推荐一些好的uml/建模工具吗?从UML图生成代码和从现有代码生成图都是很好的。 最佳答案 检查“UMLtoolsforRuby”(即,从uml图生成一些ruby代码的工具,或者反过来,从ruby代码生成一些uml图的工具)。 关于ruby-on-rails-如何从现有的Ruby代码生成UML图?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/question

ruby - 如何引用另一个 Ruby 代码文件中的方法?

我有一个Ruby代码文件(somelogic.rb),其中包含几个方法和类,位于比方说/home/user/code中。现在我正在同一目录中编写另一个类,并想引用somelogic.rb中的方法和类。我怎么做?我非常感谢任何意见。 最佳答案 如果您使用的是Ruby1.9或更高版本,这是最简单的方法:require_relative'somelogic'如果你想让你的代码在1.9和旧版本的Ruby中工作,你应该这样做:requireFile.joinFile.dirname(__FILE__),'somelogic'无论选择哪一行,都

ruby - 如果没有将 `begin ... end` 用作代码块,Ruby 的 `rescue` 是否会产生意想不到的后果?

我偶尔会看到begin...endblock在ruby​​中使用而没有任何rescue,else,ensure等之间的语句。例如:foo=beginwhatever=3"great"42end编码人员的意图似乎是使用begin...endblock只是为了它的block分组质量(就好像begin是do)。我个人认为这种用法有点违反最小意外原则(begin对我来说意味着异常处理)。以这种方式使用begin...end是否有任何意想不到的后果?begin...endblock是否有任何语义差异(可能在异常处理中?),使这种用法变得危险?Ruby的语法非常微妙,如果这里有奇怪的陷阱,我也不会

ruby - 如何从 Proc 对象中提取代码?

给定一个Proc对象,是否可以查看其中的代码?例如:p=Proc.new{test=0}我需要的是通过某种方式从已创建的Proc对象中获取字符串“test=0”。 最佳答案 您可以使用ruby2ruby图书馆:>>#testedwith1.8.7>>require"parse_tree"=>true>>require"ruby2ruby"=>true>>require"parse_tree_extensions"=>true>>p=Proc.new{test=0}>>p.to_ruby=>"proc{test=0}"您还可以将此过程

没有 do end 的 Ruby 多行代码块

我是Ruby的初学者,所以很抱歉问这么简单的问题,但是这段代码有什么问题吗-3.upto(9){print"Hello"puts"World"}或3.upto(9){|n|print"Hello"putsn}它工作得很好,但我看到的大多数代码示例都使用了的语法3.upto(9)do|n|print"Hello"putsnend仅对单个语句使用花括号只是惯例吗?来自C/C#的第一个对我来说似乎更自然,但在罗马时! 最佳答案 这两种语法之间存在细微差别。{}的优先级高于do...end。因此,以下将传递bar和一个block到方法foo

ruby - 是否可以使用 Fiddle 将结构传递或返回到 native 代码?

我想使用Fiddle访问从Rust代码编译的native库。该结构的C表示非常简单,它只是一个指针和一个长度:typedefstruct{char*data;size_tlen;}my_thing_t;//Examplefunctionthatsomehowacceptsastructvoidaccepts_a_struct(my_thing_tthing);//Examplefunctionthatsomehowreturnsastructmy_thing_treturns_a_struct(void);但是,我能找到的所有示例都接受或返回指向结构的指针,而不是结构本身。如果可能的话

ruby - 如何存储 ruby​​ 代码块

我想在一个变量中存储一个“代码块”以供重用,例如:block=do|test|putstestend3.upto(8)block有人可以告诉我我做错了什么吗?(或者如果这是不可能的) 最佳答案 在Ruby中有很多方法可以做到这一点,其中之一是使用Proc:foo=Proc.newdo|test|putstestend3.upto(8){foo.call("helloworld")}阅读更多关于Procs的信息:http://www.reactive.io/tips/2008/12/21/understanding-ruby-bloc

ruby-on-rails - 安装 pg gem 失败, "mkmf.rb can' t 找不到 ruby​​ 的头文件”(Mac OSX 10.6.5)

我刚刚升级到Rails3,在使用MacPorts、gems和数据库时遇到了一些麻烦,需要解决。我扔掉了所有的gem并重新安装它们。除了pggem的要求外,一切似乎都正常。在为PostgreSQL创建一个新的Rails3项目后,服务器无法启动,提示缺少pggem。在执行bundleinstall时,它运行了一段时间,当然,在pggem上失败了。Installingpg(0.10.0)withnativeextensions/Library/Ruby/Site/1.8/rubygems/installer.rb:483:in`build_extensions':ERROR:Failedto

ruby - 为什么 OpenURI 将大小小于 10kb 的文件视为 StringIO?

我使用open-uri从远程网站获取图像,并将它们保存在我的RubyonRails应用程序中的本地服务器上。大多数图像显示没有问题,但有些图像没有显示。经过很长时间的调试session后,我终于发现(感谢thisblogpost)这是因为open-uri-libary中的classBuffer将大小小于10kb的文件视为IO对象而不是临时文件。我按照MicahWinkelspecht对thisStackOverflowquestion的回答设法解决了这个问题。,我将以下代码放在初始化程序的文件中:require'open-uri'#Don'tallowdownloadedfilesto

ruby-on-rails - 从 Rails 代码创建 ERD 类型图

我开始学习RubyonRails,并查看其他人的代码。有什么方法可以利用现有的代码库并创建对象关系图或实体关系图(ERD)?我知道Visio可以在给定数据库的情况下执行某些操作,但我希望生成类和对象的图表。 最佳答案 还有RailsERD还不错。它比铁路要简单一些,但它仍然是一个伟大的项目。 关于ruby-on-rails-从Rails代码创建ERD类型图,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co