Futurescale, Inc. PureMVC Home

The PureMVC Framework Code at the Speed of Thought


Over 10 years of community discussion and knowledge are maintained here as a read-only archive.

New discussions should be taken up in issues on the appropriate projects at https://github.com/PureMVC

Pages: [1] 2
Print
Author Topic: Native Javascript port?  (Read 26604 times)
zermattchris
Full Member
***
Posts: 35


View Profile Email
« on: December 24, 2011, 10:30:46 »

Hi Cliff,

You mentioned a possible Native Javascript PureMVC port on LinkedIn -- just wanted to leave a bread-crumb here too (hope I'm not spilling any beans!).

I think a non-lib (mootools, prototype, et al) bound PureMVC would be perfect for us developers looking to avoid large, all encompassing MVC frameworks (for ex: JavascriptMVC).

I'm finding Agility.js (with jQuery and Less css) to be rather a slick way to handle the View part of the equation. I'm thinking that a Native Javascript PureMVC port might be a perfect fit with Agility for medium to larger sized apps. Can't wait!  ;)

Cheers,
-Chris
Logged
puremvc
Global Moderator
Hero Member
*****
Posts: 2871



View Profile WWW Email
« Reply #1 on: December 27, 2011, 08:39:49 »

Hi Chris,

We actually had three Native Ports all submitted around the same time. We decided to combine them and take the best implementation of each method and try to put out a 'best possible' port. Much of that work has been done, I believe only documentation is outstanding at the moment. I've pinged the person who is in charge of bringing it all together. Hopefully this will be out very soon.

-=Cliff>
Logged
zermattchris
Full Member
***
Posts: 35


View Profile Email
« Reply #2 on: December 27, 2011, 08:56:18 »

Thanks very much for the infos Cliff. Greatly looking forward to playing with it :)

Would be fantastic if there were three people (to start off with) involved in the core development. I did some googling and found two implementations, so curious as to who the third might be.

Cheers,
-Chris
Logged
toby869
Newbie
*
Posts: 8


View Profile Email
« Reply #3 on: January 10, 2012, 11:28:20 »

I too am interested in a native port and was about to dig into the source in the svn link you provided in another post (http://svn.puremvc.org/PureMVC_JS/branches/native-multicore/).  Mainly documentation left?  FWIW, I would be happy to help however I can in that area while I am digging.
Logged
puremvc
Global Moderator
Hero Member
*****
Posts: 2871



View Profile WWW Email
« Reply #4 on: January 11, 2012, 08:17:53 »

Should be mainly documentation, but over the weekend, I heard from David about some changes that may need to happen yet. So close. The big problem is figuring out the idioms that should be used with it when using various other frameworks/toolkits like jQuery, mootools, etc.

-=Cliff>
Logged
Tekool
Sr. Member
****
Posts: 192


View Profile WWW Email
« Reply #5 on: January 11, 2012, 10:45:35 »

Does David work on a way to remove code from constructors? I do not know that the Native JS repository was made public.

Cliff, the initialize (call it init or constructs or whatever we want) code convention I talk you about by e-mail and I used in my own Native framework I made last year and that I explained on my blog http://www.tekool.net/blog/2011/01/30/puremvc-native-javascript-port/ works well in conjunction with any UI/Class Framework. I used this Native PureMVC implementation successfully to build the EmployeeAdmin jQueryMobile demo I'm currently working on. It worked pretty well and could be considered as a good (not necessarily the right) solution. I can confirm that it would have also worked with any ExtJS/Prototype/Mootools frameworks. This said, I personally find any of those code convention painful to use.

Another solution I thought about to make this port a little more agnostic, would be not to use inheritance at all in the framework itself and let the developer implements its own inheritance system.
Logged
tolmark12
Newbie
*
Posts: 5


View Profile Email
« Reply #6 on: January 24, 2012, 09:47:48 »

Extremely excited about the native javascript port. Looking forward to getting my hands on it.
Logged
zermattchris
Full Member
***
Posts: 35


View Profile Email
« Reply #7 on: January 25, 2012, 04:33:08 »

Would also love to get my hands on it - happy to try and help with docs, testing, etc.  :)
-Chris
Logged
puremvc
Global Moderator
Hero Member
*****
Posts: 2871



View Profile WWW Email
« Reply #8 on: January 25, 2012, 05:40:19 »

We are so close - RSADN ( Real Soon Any Day Now ). I'm checking out the release candidate tonight. We're sure it works because Tony DeFusco has already ported over the EmployeeAdmin and BoxSplash demos to use it (although we've shortened the namespace since then, so we'll have to revisit that briefly).

Hang in there, we're on our way!

Logged
tolmark12
Newbie
*
Posts: 5


View Profile Email
« Reply #9 on: January 31, 2012, 03:30:49 »

Sounds great thanks for the update!
Logged
puremvc
Global Moderator
Hero Member
*****
Posts: 2871



View Profile WWW Email
« Reply #10 on: January 31, 2012, 04:25:31 »

Have a look at http://trac.puremvc.org/PureMVC_JS/ now. You can download the native port and view the docs. We'll be trying to get the demos ported as soon as possible, and David did a first pass at the StateMachine utility tonight.

-=Cliff>
Logged
Tekool
Sr. Member
****
Posts: 192


View Profile WWW Email
« Reply #11 on: February 01, 2012, 06:01:51 »

David did a first pass at the StateMachine utility tonight

Important for me to know, I also started a project on the State Machine : https://github.com/tekool/puremvc-javascript-objs-statemachine and recently have announced to make it my next work for PureMVC JS. Can David let us know which status his project has in the next weeks? My project would have been convertible in less than an hour from Objs to Native

Don't we preferrably need some human readable documentation for the PureMVC JS Native port?
Logged
puremvc
Global Moderator
Hero Member
*****
Posts: 2871



View Profile WWW Email
« Reply #12 on: February 01, 2012, 08:15:28 »

I also started a project on the State Machine : https://github.com/tekool/puremvc-javascript-objs-statemachine and recently have announced to make it my next work for PureMVC JS.
Sorry, Frederic, David asked if anyone was working on it, but I did not realize that you were. I don't think it took him much longer than an hour or two for a first draft. I notice your port appears to use XML like the AS3 reference. I know David used JSON for describing the FSM, since only FireFox currently supports native XML via E4X.

Don't we preferrably need some human readable documentation for the PureMVC JS Native port
Absolutely. http://puremvc.org/pages/docs/JS/native-multicore/

Again, sorry for the crossed wires. I am hoping David may port the Pipes utility soon as well unless you have a port that could be converted to work with the native port.

-=Cliff>
Logged
Tekool
Sr. Member
****
Posts: 192


View Profile WWW Email
« Reply #13 on: February 01, 2012, 11:49:51 »

Hi Cliff, no problem. I always try to let my ego beside my workspace. ;) But it will not benefits the PureMVC project if developers submit same things at the same time.

My thoughts were also to work with JSON instead of XML on the State Machine utility. I explained it by mail, forum or LinkedIN group recently I don't remember exactly. I wanted to make that and create the StopWatch demo before the end of the month.

To be honest I sincerely think there's plenty of things to do first before State Machine or Pipes in JavaScript. This is not so needed in JavaScript. I won't say we don't need it because I personally need them at work. This is why I started both jobs on my Github space. But I think it would be better to first have an human readable documentation for the Native port explaining "willing", "how to" and at least an "Hello World example".

Probably next what is the most requested is an AsyncCommand utility, it is so needed in JavaScript. Quite logical next the AsyncStub utility.

A lot of utility used to manage flash loading witll not be necessary with JavaScript (Loadup, Loadup as ordered) because CSS/HTML already have their loading paradigm and that we now have Require.js in JavaScript which seems to become near a standard for that.

If David want to do the PureMVC Pipes utility why not, just let me know I do not have started it officially. I just have explained why I need them and how I will conceived them. The only real need of this in JavaScript (as we don't have real modules support we have in Flash) would be to let communicate to different window context one to the other. This is a real pain to script (one could be loaded/unloaded before the other,etc) and here using Pipes would help a lot. Why not also studying a way to reuse BackBone modules. Those were my thoughts and my need at work.
Logged
Tony DeFusco
Newbie
*
Posts: 9


View Profile Email
« Reply #14 on: February 01, 2012, 01:03:57 »

Probably next what is the most requested is an AsyncCommand utility, it is so needed in JavaScript. Quite logical next the AsyncStub utility.

I created a working implementation of the native multi-core AsyncCommand Utility library for PureMVC JS -- I used it in the ExtJS v3 & v4 implementations of the EmployeeAdmin demo (to prep the Controller before the Model and View).  The maintainers of the native JS multi-core should rework my source to meet the standards/conventions used by the native multi-core PureMVC JS library (i.e. modify to use the preferred testing framework, JSDuck documentation, and any preferred JS coding styles and techniques).

You can download an archive of the source and sample library from here.
Logged
Pages: [1] 2
Print