Document directory
Most people are willing to use ide To Write Java and C # code because of Code Completion, intelligent formatting, and even automatic refactoring. In the dynamic language world, the situation is not the same.
One of the reasons is the lack of tools similar to static languages, which is very difficult to develop for dynamic languages. But fortunately, the programs in these dynamic languages are usually short and concise (for example, compared with Java ).
However, sometimes it is very convenient to use the integrated development environment. It can take over all the daily tasks of developers, from using source code management tools, managing project files, to compiling, debugging, and deploying projects. In this series of news, we interviewed some developers of Dynamic Language ide To introduce the current situation and their views of these ides.
We assume that all ides have some basic functions, such as highlighting. Therefore, we mainly focus on complex functions, such as refactoring ). The automatic refactoring function is
A sign of a mature IDE, because this requires in-depth and detailed analysis of the Code. This is also a feature that is not available in General Multilingual editors unless third-party tools are used.
Aptana Ruby
Eclipse-based Ruby development tools have been widely used, especially in rails development, radrails provides very useful extensions. Both RDT and radrails have been integrated into Aptana Studio. Chris Williams, the main RDT developer, is also employed by Aptana.
Ruby studio of Aptana has been quiet for a long time, and there are few moves. So we found Chris and talked about the latest developments.
In the past 6 to 7 months, I have been busy with our new product, Aptana cloud. I have been doing all the work on API/server, which is used to coordinate Aptana Studio, third-party publishers, and hosts containing websites.
For this reason, I no longer have as much time as I used to use Ruby support and radrails. Now I have basically fixed bugs when I have time, and made Cloud support a tool. Now cloud has announced that I have to implement rails support. Then we can return to RDT/radrails almost full-time.
Chris also said they are hiring and "ensure that plugin development can continue stably ". Ruby developers do not need to use Java to extend their IDE.
We have a plug-in that allows end users to use Ruby code to call a small part of the eclipse editor API-so that people who only know Ruby can use it to write some small macros/scripts. If you are a jruby expert, you can use Ruby to write your own extensions and access all eclipse APIs.
Tip: infoq talked about jruby eclipse Script Programming before.
Aptana now supports Ruby, JavaScript, Python, and PHP. What languages will be supported next?
We have been searching for what Web plug-ins we like to use in the community. When we see enough support, we will invest in this field. We are listening: let us know what you need.
The next plan is to integrate studio into the current eclipse Ganymede version, "add more advanced cloud support and fix more major bugs, and then I will be relieved, the next step is planned on the 1.3.x radrails schedule ".
Ruby development tools have long supported refactoring, such as renaming, scaling, moving, and method inline. Although this refactoring is not foolish enough, it cannot be used in all cases, but in most cases, it can significantly reduce the manual copy and paste (this article is written by using auto-completion ).
The Aptana and radrails labels contain more information about Aptana IDE.
Dltk Ruby
This dynamic language tool is very special. They want to integrate all the reusable components required by eclipse-based Dynamic Language ide into a framework, this helps to support the new language. Ruby is one of the earliest dltk languages. Together with TCL, Ruby forms the core of dltk.
Unfortunately, dltk is not very dynamic. So I interviewed its project leader Andrey platov:
Once we mention TCL, we will think that dltk Tcl is one of the best TCL ides. We are still improving it and intend to integrate it into the Tcl interpreter. These jobs are not easy to see.
About Ruby (also known as dltk): first, dltk (including Ruby components) is a platform: We didn't plan to meet the needs of all end users at the beginning. For example, we never
Any support for Ruby on Rails is planned. Dltk
Ruby aims to provide other vendors with a stable and clean Ruby language platform, allowing them to create complete tools based on its functions. A good example is a synthesis from codegear.
Ruby IDE is called 3 rdrail. It is based on dltk Ruby.
This does not mean that dltk Ruby cannot be used independently. As a good ruby programming tool, it is used by many language lovers. We do not force developers to adopt Ruby on
Rails style does not force them to use rspec ...... It's just pure language and developer innovation. From another perspective, such a "clean" Ide is a good product developed by the vendor.
Platforms that support frameworks and the technologies they choose, and they already have top-level language support for free.
Back to your issue, our job now is to make dltk Ruby better "understand" The Language and handle Ruby code more properly.
"Try code complementing", Andrey tells me. The future plan is to improve language support to "better understand Ruby and provide functions such as code analysis, refactoring, and quick correction ".
Dltk is not planning to support more languages at the moment, but they "are providing consulting for some companies to develop their own language ide ". Andrey also said, "dltk-based php development tool (PDT) 2.0 is coming soon ". Some dltk-based ides are under development, including anlr, Lua, D, Perl, and scheme. Various dltk Development kits can be downloaded from the dynamic development ages toolkit website.
This news is part of our introduction to a series of Dynamic Language ides. The rest can be found in infoq's "Dynamic Language ide" tag. If you are not fully interested in the introduction of Ruby IDE, you may be interested in the articles on infoq's support for Ruby in netbeans: top and bottom.
Dynamic Language ides: Aptana Ruby and dltk Ruby