Code completion
3rdRail provides method completion, parameter completion and syntax checking. Even methods that are created dynamically at runtime are included. You no longer need to remember fine points such as object types, methods and method signatures. 3rdRail predicts likely expectations based on conventions and semantics and is able to understand the context of what you are doing. Rather than simply produce a pop-up list of hundreds of choices, 3rdRail shows just the correct ones.
3rdRail keeps track of what commands, parameters, and options should be available at any time and dynamically lists them as you code. The placement of the cursor in the editor triggers context specific completion options in a pop-up.
Dependencies view
Rails makes doing common tasks relatively easy, however it can add a level of complexity. Rails adds relationships and dependencies that are not obvious through the use of conventions, meta-programming and naming patterns. The Dependencies View helps reduce the complexity by keeping a dynamic view of class and logical relationships.
While you navigate source code or nodes in the Rails Explorer, you can use the Dependencies View to track focus and show the dependencies (class, method, controller, action, view, attributes). The Dependencies View shows references to and from (inbound and outbound) a selected class or method.
The Dependencies View is a very useful tool for navigating and introspecting software. Relationships are determined by type inference and semantic analysis. Dependencies are updated in real-time during editing and navigation. Relationships, between controllers, actions, views, models, helpers, routes, migrations, schema and tests are related and determined by convention and method call analysis.
Project Commanders
The Project Commander gives you a familiar command-line interface to your Ruby on Rails project. As you write and execute commands, the Project Commander shows results and hyperlinks to the files created by the commands. It provides context-sensitive command, parameter, and option completion to help you execute commands more quickly. This screenshot shows Project Commander results and code completion.
Rails Explorer
The Rails Explorer provides a logical organisational view for Rails projects. It¿s an easy to navigate explorer window that includes everything associated with the Rails project including configuration, databases, models, controllers and more. With the Rails Explorer you can quickly pop open the project and look at all the attributes associated with it.
Refactoring
Code evolves as technology and market demands evolve. Over time, existing code may need to be changed to allow more room to grow, to improve performance, to accommodate changing needs, or simply to clean up the code base. Refactoring is the term used to describe the process of redesigning existing code without changing its behavior from the user's point of view.
Refactoring may be small or extensive, but even small changes can introduce bugs. Refactoring must be done correctly and completely to be effective. One change can have permutations throughout the entire code base. Refactoring handles the entire set of permutations responsibly and durably, with safe operation, so that no behavior is changed beyond improvements in performance or maintainability.
The refactoring tools in 3rdRail help you reorganise your application code without changing the results.