Tedious Compilation Requirement

For questions and postings not covered by the other forums
ConvertFromOldNGs
Posts: 5321
Joined: Wed Aug 05, 2009 5:19 pm

Tedious Compilation Requirement

Postby ConvertFromOldNGs » Fri Aug 07, 2009 1:12 pm

by Johnathan >> Sat, 13 Oct 2007 3:45:49 GMT

Hello,

We HAVE to use JADE for our computer science paper. I absolutely hate it and cant wait till the torture is over.

Can anyone tell me why I have to compile every single method individually and why its a good idea to allow me to run code if there are errors in it. i.e running an app gives no indication that somethings wrong UNTIL you happen to hit the code in question.

Have I not enabled an option or is this by design?? If so why on earth would this ever be a good idea?? To me its just yet another problem with the single most unproductive environment Ive ever worked with.

Thanks

ConvertFromOldNGs
Posts: 5321
Joined: Wed Aug 05, 2009 5:19 pm

Re: Tedious Compilation Requirement

Postby ConvertFromOldNGs » Fri Aug 07, 2009 1:12 pm

by Murray Symon >> Sat, 13 Oct 2007 6:58:43 GMT

It is only possible for you to work on one method at a time, so why not compile it when you save it? If you keep your methods to a reasonable size the compile time is negligible. Jade automatically cross-references verything at compile time so you can make use of the built-in cross-referencing features of the environment.

If all your methods are compiled OK, then any errors encountered at run-time (e.g. string length, null object, divide by zero) are logical errors in your design and implementation. The information from the default exception handler can provide you with sufficient debug data to understand the cause.

How extensive is your experience of other development environments?
It may be that you are used to working with tools that are far different from Jade's. As you use the Jade JDE more you will learn that there are some techniques that help to make it more productive. A few that come to mind are:
(1) use F11 on attributes & methods (including 'inheritMethod' keywords). (2) use the 'references' menu option on classes, attributes & methods
to follow dependencies.
(3) use CTRL-1 through CTRL-5 in the editor for context-based lists of
properties, methods, constants and also method signatures.

Read the chapter in the manual that lists all the keyboard shortcuts and try them all out. They can really help your productivity.

Murray.

ConvertFromOldNGs
Posts: 5321
Joined: Wed Aug 05, 2009 5:19 pm

Re: Tedious Compilation Requirement

Postby ConvertFromOldNGs » Fri Aug 07, 2009 1:12 pm

by Allistar >> Sat, 13 Oct 2007 23:57:28 GMT

The fact that I can modify code while I am running the application makes Jade, in my opinion, one of the most productive environments I've ever worked in. Sure, it doesn't have bells and whistles like regular expression searching but not having to stop running applications to tweak one method makes for much more rapid software development.
--
A.

ConvertFromOldNGs
Posts: 5321
Joined: Wed Aug 05, 2009 5:19 pm

Re: Tedious Compilation Requirement

Postby ConvertFromOldNGs » Fri Aug 07, 2009 1:12 pm

by cnwjhp1 >> Sun, 14 Oct 2007 20:28:06 GMT

Try "Compile..." on the Classes menu of the Class Browser. If you do it on the Object class and include subclasses, you can compile them all.

You could also try Browse>Status List. It shows all methods uncompiled or in error.

Any tool seems unproductive till you get used to it!

ConvertFromOldNGs
Posts: 5321
Joined: Wed Aug 05, 2009 5:19 pm

Re: Tedious Compilation Requirement

Postby ConvertFromOldNGs » Fri Aug 07, 2009 1:12 pm

by BeeJay >> Thu, 1 Nov 2007 23:33:05 GMT
We HAVE to use JADE for our computer science paper. I absolutely hate it and cant wait till the torture is over.

A similar comparison could be drawn for any development toolset you're forced to use but are currently unfamiliar with.

Can anyone tell me why I have to compile every single method individually and why its a good idea to allow me to run code if there are errors in it. i.e running an app gives no indication that somethings wrong UNTIL you happen to hit the code in question.

Having methods individually compiled allows you to run the parts of your application that do not use methods that are currently uncompiled. In a multi-developer environment this is very beneficial as you can continue to develop and test the area of the application you're currently working on concurrently with the other developer doing their work. The only time their work has the potential to get in the way of yours is if they are currently working on an area of the application that is central to the entire application. However, in this situation you can use the new schema evolution feature to make your changes in the latest schema version while the other developers continue to run the application and make their minor method tweaks using the current schema version.

Have I not enabled an option or is this by design??

This is by design.

If so why on earth would this ever be a good idea??

As per my statements above, having each method individually compiled allows developers in a multi-developer environments to work independently and as long as you don't need to execute the method they currently have "broken" you won't even encounter a problem. Being able to compile individual methods, while the application is still running, also greatly enhances productivity when unit testing your changes.
To me its just yet another problem with
the single most unproductive environment Ive ever worked with.

As others have already stated, and as I have said above, rather than being unproductive the individual compiling of methods actually improves productivity especially in multi-developer environments and for complex applications.

Having said all of that, in your particular case with a computer science paper you are probably developing an entirely new project from scratch. While in the very early stages of developing a project, these benefits of individual method compiles are probably less obvious. Also, computer science papers tend to require less complex applications than real world applications, so again the benefits of multiple developers working in different areas of a product being able to compile individual methods will be less obvious.

To recap, the benefits of individual method compilation are far more obvious in multi-developer teams, particularly when extending an existing application and working on methods that are not used by areas of the application where other developers are working. Being able to compile a single method and immediately retry that code without having to shut down the running application also greatly improves productivity.

Cheers,
BeeJay.


Return to “General Discussion”

Who is online

Users browsing this forum: No registered users and 44 guests