Main difference with Java
As with Java, in Ruby,...
As with Java, in Ruby,...
- Memory is managed for you via a garbage collector.
- Objects are strongly typed.
- There are public, private, and protected methods.
- There are embedded doc tools (Ruby's is called RDoc). The docs generated by rdoc look very similar to those generated by javadoc.
Differences
Unlike Java, in Ruby,...- You don't need to compile your code. You just run it directly.
- There are several different popular third-party GUI toolkits. Ruby users can try WxRuby, FXRuby, Ruby-GNOME2, or the bundled-in Ruby Tk for example.
- You use the
end
keyword after defining things like classes, instead of having to put braces around blocks of code. - You have
require
instead ofimport
. - All member variables are private. From the outside, you access everything via methods.
- Parentheses in method calls are usually optional and often omitted.
- Everything is an object, including numbers like 2 and 3.14159.
- There's no static type checking.
- Variable names are just labels. They don't have a type associated with them.
- There are no type declarations. You just assign to new variable names as-needed and they just "spring up" (i.e.
a = [1,2,3]
rather thanint[] a = {1,2,3};
). - There's no casting. Just call the methods. Your unit tests should tell you before you even run the code if you're going to see an exception.
- It's
foo = Foo.new( "hi")
instead ofFoo foo = new Foo( "hi" )
. - The constructor is always named "initialize" instead of the name of the class.
- You have "mixin's" instead of interfaces.
- YAML tends to be favored over XML.
- It's
nil
instead ofnull
. ==
andequals()
are handled differently in Ruby. Use==
when you want to test equivalence in Ruby (equals()
is Java). Useequal?()
when you want to know if two objects are the same (==
in Java).
You are the jack of all technologies.I don't see your old website, is it alive? . This page is a great understanding from java point. I moving to ruby project from last few weeks.
ReplyDeletepls help me to understand the between with the documentation with java and ruby.. more ? any useful hints.
pls share your email address to share my queries :-)
Hope you're a friend in FB, get me there :-) I failed to renew my register , difficult to maintain, So drop it. Java apps maintenance is always costly , and I hate their package like private JVM, sharing JVM etc . Need to be specific
DeleteI'm planning to ask bill to get me a space in azure, to deploy my apps for long time :-)
Ganesh
Nice to your journals. I have chosen ruby has my next development.
ReplyDeleteIts a good comparison from java I love your archived articles which was hosted in www.programmingthrill.com ? dead ?
can you help us in pushing those archives articles into this blog. hey are you in India? Missing your techno alcoholic talks