You're right up my ally there. That's some of the same reasoning that I came
up with, with others too.
But the code is reduced by about 1/3. Special browser specific javascript
can be placed where other generic javascript was used, also reducing the
size, and increasing speed.

----- Original Message -----
From: "Bill Wheaton" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, December 05, 2000 5:50 PM
Subject: Re: [Re: [Dynapi-Dev] DynAPI Makefile/code compression almost
complete]


> What I meant (can't say about Cameron), was that it would be nice to have
all
> of the functionality of the API without even worrying if it is cross
browser
> compatible.
> Quite often, I have to write intranet apps where my customer can and
> absolutely does control which ua their users use. (via SMS or whatever).
It
> doesn't matter as much over a lan, but for their remote sales people
dialing
> up from his customer's pots line to check product allocation during the
lunch
> break, it can be slow.  If I could _only_ include IE code when I knew it
was
> the standard, then I could speed things up some.... maybe even a lot.
> maybe I'm dreaming
> -bw
>
> Dan Steinman <[EMAIL PROTECTED]> wrote:
> > I just have to clean it up a bit and I'll have it ready to use this
evening.
>  It's really quite a simple system.  I'm not sure exactly what you want by
> splitting the versions up.  I mean, there's ways to do that, but why
bother?
> Right now it's just an easy way to compress and combine files, it does
nothing
> more.  And we'll use it until we decide that a more sophisticated system
is
> needed.
> >
> > Dan
> >
> > On Tue, Dec 05, 2000 at 10:31:34AM -0000, Cameron Hart wrote:
> > > This is probably a good way of splitting the code into different
browser
> > > versions. If you put equivant of #IFDEF (or whatever, it's been a long
> time
> > > since I touched C!) in the source Javascript, you could compile
browser
> > > specific versions from the one source distribution. At least then, all
> the
> > > code is in one place, and browser specific versions are developed
> together,
> > > not seperately.
> > >
> > > Cameron.
> > >
> > > > -----Original Message-----
> > > > From: [EMAIL PROTECTED]
> > > > [mailto:[EMAIL PROTECTED]]On Behalf Of Dan
> Steinman
> > > > Sent: 04 December 2000 03:52
> > > > To: [EMAIL PROTECTED]
> > > > Subject: [Dynapi-Dev] DynAPI Makefile/code compression almost
complete
> > > >
> > > >
> > > > This weekend I took on the task of creating a "build" system for
> DynAPI.
> > > >
> > > > First part involved writing my own JavaScript whitespace/comment
> > > > removal script (in Perl).  It's pretty much complete and as good
> > > > or better than any others I've seen.  I'm calling it JSPack and
> > > > will release this as a separate program that must be downloaded
> > > > in order to "build" the DynAPI.
> > > >
> > > > It not only compresses JS code, it also packages the files
> > > > together.  And this will be used to create js packages for the
> > > > DynAPI.  For example, it will create the files dynapi.api.js,
> > > > dynapi.gui.js... which contain all the classes in that
> > > > subdirectory.  I have to add one more feature to my script that
> > > > determines the order that the objects should be added to the
> > > > Package.  For example, ScrollPane extends off of ViewPort, so in
> > > > the dynapi.gui.js file, viewport.js must be added first.
> > > > Therefore I plan to add files to the /lib/dynapi/ directories
> > > > that state the order of the files.  These will be named .jspack
> > > > and will be a simple list of the js files in the order they are
> > > > to be added to a package.  My JSPack program will take care of the
> rest.
> > > >
> > > > Right now JSPack does not parse the JavaScript, so it will not go
> > > > through each of your lines and fix and incorrect or missing
> > > > semicolon.  There for it is essential that all files in the
> > > > DynAPI have semi's on each line, as well in the following case:
> > > >
> > > > f = function() {
> > > > };  // absolutely needed
> > > >
> > > > Second part is the Makefile.  Up until now we've just been
> > > > editing our files in /js/.  But now we can use a separate
> > > > directory /src/.  This is where we edit our files.  Our
> > > > JavaScripts can contain comments, and do not have to be bunched
> > > > up, because the Makefile will use the /src/ directory, compress
> > > > all the code, and produce js packages, and jar files, and output
> > > > it to /js/.
> > > >
> > > > So the /js/ directory will then contain a compressed release of our
> code.
> > > >
> > > > In order to build the DynAPi you need to be using unix/linux or
> > > > have Cygwin installed in Windows, along with Perl and the JDK
> > > > (for Jarring the files).  You need  to place JSPack in your path,
> > > > and then type:
> > > >
> > > > make
> > > >
> > > > in the /dynapi/ source tree.  This runs the commands in the
> > > > Makefile which does everything needed to produce the /js/ tree.
> > > >
> > > > I'm going through all of the existing JS code and putting the
> > > > necessary semi colons, and will have everything ready to use in
> > > > another day or 2.  A first run-through of building the DynAPI
> > > > produced a Jar file which 16KB!!!!  (yes the entire DynAPI with
> > > > the existing widgets can be compressed a lot).
> > > >
> > > > We can also use GZip to compress the files for use in IE 5, these
> > > > will be a bit smaller than the Jar files. I don't believe there
> > > > is any compression we can do for IE 4 though (other than
> > > > whitespace removal).
> > > >
> > > > over and out,
> > > > Dan
> > > >
> > > > _______________________________________________
> > > > Dynapi-Dev mailing list
> > > > [EMAIL PROTECTED]
> > > > http://lists.sourceforge.net/mailman/listinfo/dynapi-dev
> > >
> > > _______________________________________________
> > > Dynapi-Dev mailing list
> > > [EMAIL PROTECTED]
> > > http://lists.sourceforge.net/mailman/listinfo/dynapi-dev
> > _______________________________________________
> > Dynapi-Dev mailing list
> > [EMAIL PROTECTED]
> > http://lists.sourceforge.net/mailman/listinfo/dynapi-dev
>
>
> ____________________________________________________________________
> Get free email and a permanent address at http://www.netaddress.com/?N=1
> _______________________________________________
> Dynapi-Dev mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/mailman/listinfo/dynapi-dev
>

_______________________________________________
Dynapi-Dev mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/mailman/listinfo/dynapi-dev

Reply via email to