On Fri, Dec 23, 2011 at 4:47 AM, Alan Leung <acleung@google.com> wrote:
> I guess I could move the splits to the package levelAs you might have notices you have to choose your split points with care as otherwise you shoot yourself in the foot.Having more split points doesn't necessary means a "better" app.Adding crazy amount of split points will make your initial download smaller. But because of how the code splitter works, you'll end up with bigger and bigger leftover fragments. At least until I check in and enable the new code splitting algorithm.A few rules of thumbs for adding split points:- A split point contains a considerable amount of the total app size. For example: 10%.While I've seen well structured apps with 50 split points or so, like Ed Bras suggested, they took lots of caution in where they are inserting them, checking the SOYC every once a while.-Alan- The split point contains code that corresponds to an "isolated" functionality chunk.Uses the generated soyc report for split point optimization.--
On Thu, Dec 22, 2011 at 4:04 PM, Eric Andresen <ericandresen@gmail.com> wrote:
Granted, it is a pretty big project, it has about 800 activities, 150 EntityProxy types, 100 Request objects, and uses all the goodness of the RequestFactory and UiBinder for all of it. (There is a ton of inheritance so most of those activities are only 50-100 lines of code. Only the object-specific code in each remains, at least until http://code.google.com/p/google-web-toolkit/issues/detail?id=6794 is fixed)The current split points are on each top-level domain object, each of which contain about 5-10 activities. Each generates about 50-150kb of JS when they work. The idea was that the user would have a small initial download, and then a slight delay each time they hit a new object type they hadn't used before.I guess I could move the splits to the package level in the object hierarchy and only have about 8 split points, each with about 100 activities. That should leave the initial download the same, but have a bigger run-time hit when the user crosses that boundary.--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To view this discussion on the web visit https://groups.google.com/d/msg/google-web-toolkit/-/FKtXxh5GrC0J.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
--
Deepak Singh
--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
No comments:
Post a Comment