Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a FAQ page. #19

Open
dcporter opened this issue Feb 7, 2014 · 2 comments
Open

Add a FAQ page. #19

dcporter opened this issue Feb 7, 2014 · 2 comments

Comments

@dcporter
Copy link
Member

dcporter commented Feb 7, 2014

Let's use this Issue to compile questions that are frequently asked. Once there's a critical mass, I'll tidy them up and integrate them into the site. Please add your own!

@dcporter
Copy link
Member Author

dcporter commented Feb 7, 2014

Q. Can I use jQuery-UI (or Bootstrap etc.) for _______?
A. The short answer is no. The long answer is, it's possible, but it's not recommended and will take a great deal of effort to properly integrate – to the point where it's almost never worth it.

The root technical reason for this is that the SproutCore view layer is built on fundamentally different assumptions about the DOM, in order to support some deep optimizations for the application use-case. The SC view layer assumes that it, and only it, controls the creation and updating of HTML, and that it owns event handling. These assumptions make for great applications, but tend to collide badly with standard web development techniques developed for the standard document-based web. For example, if you make out-of-band changes to a view's DOM elements, the view won't be aware of them, and may overwrite them at any time.

These optimizations include lazy DOM updating, and automatic global event proxying (and sanitizing). On balance, they are very much worth it if you're building serious applications, but it means that there are some cases where something that's simple somewhere else is more complicated here.

@topherfangio
Copy link
Contributor

Q: Can't I just download a .js file somewhere?

A: SproutCore is an all-encompasing framework for developing rich-client applications. This design allows you to use only the pieces of the framework that you need to build your app. So, by design, SproutCore uses build-tools to compile all of the mini-frameworks into one, and then minifies them. This allows your apps to be built for speed and allows you to easily separate your .js files for comprehension and maintainability which is key when developing large apps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants