Hi all,
Now Javaflash 0.3 has been released. Let's check the todo list and decide the tasks for 0.4 and later releases.
* What we have till 0.3 release
(a) Support flash7 on Linux and Windows w/o scriptable
interface. Flash can call Java through JavaScript as well as AMF but
Java calls Flash's scriptable object is impossible. All the calls are
asynchronous.
(b) Support flash8 on Windows w/ full scriptable interface via
NPRuntime including ExternalInterface. Bi-direction communication works
through JavaScript while Flash can still call Java through AMF. Calls
can be synchronous and asynchronous. (Theoretically the flash8 support
also works on Linux provided the flash8 linux version is available)
(c) Two raw demos to show NPRuntime integration and one test case for ExternalInterface.
* What we need to do
(a) Design a developing model for Javaflash in flash8.
In order to develope an application from scratch based on Javaflash, we
must provide some best practices or some guidelines the developer can
follow. This includes:
- What does a programmer need to learn before he can develop applications based on Javaflash? How to lower the learning curve?
- What are the toolchains he can use when developing?
- A step-by-step tutorial and some best practices.
- How to distribute tasks to several programmers when developing?
(eg. one to do arts, one to do business logic and one to do glues)
To design a good and effective developing model is not an easy task.
Maybe we can provide a rough one first and improve it later.
(b) Improve the Javaflash service framework.
The current service framework of Javaflash is adhoc. It is mainly for
PoC. A good service framework can dynamically load and unload services.
OSGi is a good candidate for this.
(c) Refactor the code base.
It seems to be a best practice to migrate code from C to Java as much
as possible because code in Java is easier to maintain and debug. But
this is at the cost of more work on porting (we need to provide
different jars for different platforms like SWT does) so we need to be
careful.
(d) Add scriptable support for flash7.
As I have mentioned on the list before, flash8 takes a different
protocol from flash7. Flash8 uses NPRuntime interface while flash7 uses
legacy XPConnect interface. So if we need to provide scriptable support
for flash7, we need to integrate Mozilla's xptcall.
(e) Add MacOSX support for both flash7 and flash8.
Porting for Mac is difficult for me because I have no programming
experiences on that platform and have no OSX box. Hope erixtekila can
help us with that. :)
(f) Develope more demos as well as applications based on Javaflash.
We need more demos and apps and screenshots. That's important for demonstration and future design.
These are my thoughts about the TODOs. Any comments?
--
Best Regards
Steven Gong