Other News about the rapid debugger

Erel

Administrator
Staff member
Licensed User
The first version of the rapid debugger was introduced a few months ago with the release of v3.00. The rapid debugger offers some great debugging features such as rapid deployments, hot code swapping and objects introspection. Some of these features are not available in any other mobile development tool.
It can also support features that are currently not implemented such as "immediate code window" and others.

However it also has a weakness which is related to the way it works. The debugger runtime performance is not good and in some cases it is just too slow.

Ever since the release of v3.00 I'm looking for solutions that will improve the performance.
I'm happy to say that in the next version the rapid debugger performance will be in most cases close to the performance of Release deployments (or the legacy debugger).

Like everything related to the rapid debugger the solution is quite complicated. Most developers are probably not familiar with the architecture of the rapid debugger. The rapid debugger is made of two components, the engine which runs on the PC and the shell app which runs on the device. The compiled code is in the engine. The engine sends commands to the shell app.
The change in the next version is to also include the compiled code in the shell app and then allow the shell app to directly run the code. The engine which controls the shell maintains the state and decides when it is possible to use the shell code and when it is not.

The result is that the rapid features will remain and the runtime performance will be much higher.
 

noclass1980

Active Member
Licensed User
Does this mean that it will work with a bluetooth connection as well as an IP connection?
 

bartv

Member
Licensed User
I have been wanting to add this feature to the wish list. Great!
 

stevel05

Expert
Licensed User
Looks great Erel.

Thanks
 

RandomCoder

Well-Known Member
Licensed User
Excellent work Erel. The Rapid Debugger is certainly a great leap forward in my humble opinion.

Thanks,
RandomCoder
 

Erel

Administrator
Staff member
Licensed User
Another new feature: virtual assets folder. This feature will be very useful with projects that include large files (or many files).

It has two benefits:
1. Only the updated files are copied to the device (instead of packaging all the files again and again).
2. The rapid debugger can reuse previous sessions when files are updated. Currently whenever a file is updated the "shell" app must be redeployed. With this feature the previous shell app can be reused and the file will be updated.
 

cyiwin

Active Member
Licensed User
This is amazing and unexpected! The original rapid debugger was important to me, since that's where I spend 90% of my time :)
 

JakeBullet70

Well-Known Member
Licensed User
Yeah!!! You are the man Erel!!!
 

matt humphreys

Member
Licensed User
v3.8 and I have just discovered Rapid Debugger - and love it!
Thanks for implementing a feature I didn't know I needed...I can never go back!
 

Rick Harris

Well-Known Member
Licensed User
Sadly so far the rapid debugger is still not useable for large apps. One of my apps now has more than 32000 code lines (an elaborate speech-driven app for blind and visually impaired users called "ARTI": www.artipal.com).
The debugger lags behind and shows wrong (earlier) values for most parameters in the list at the bottom of the screen. Rather frustrating because I spent hours searching for errors in my code whereas the debugger was to blame. The assembly and debugging of code is simply too much for Windows (on a 3 GHz, 4 GByte RAM PC).
Similarly, the legacy version of the debugger only works once (runs until a break point) but after pressing F5 or F8 it failes to operate correctly. I now have to revert back to using Log(...) commands at critical points of my source code to get at least some idea what is going on and to try to correct errors.
Erel has suggested to break up the code into separate libraries, but that creates other complications. I do hope Erel finds ways to resolve this!
 
Last edited:
Top