Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>Frameworks and libraries leave that "20%" you note so that you can build on top of them. If you are finding that you are still working, barebones, at that 80% level every time you need to add a new feature or functionality then you haven't done anything.</p> <p>Personally, I've used many PHP frameworks where I build custom libraries and functionality on top that helps take my projects to that 90-95% level. That difference of 15% of your project is very important. A few examples of that code are things like: utility functions, permission systems, internal apis and template managers (which help render data with your views).</p> <p>As for client side, Javascript, libraries (jQuery, Prototype, Dojo etc.) it sounds like you haven't thought long term. More and more people are realizing they need to start with a strictly Javascript application structure before thinking about which library to use. Libraries provide some standard ways to bind events, select elements, etc. but none seem to really have large scale application logic built in. You need to build that yourself. </p> <p>Loose coupling (or <a href="http://blog.rebeccamurphey.com/pubsub-screencast" rel="nofollow">Pub/Sub</a> - Publish Subscribe) has become really popular and there are some great libraries that help with MVC and view state like <a href="http://benalman.com/projects/jquery-bbq-plugin/" rel="nofollow">jQuery BBQ</a> and <a href="http://documentcloud.github.com/backbone/" rel="nofollow">Backbone.js</a> (like @Raynos suggested). This logic helps you scale and properly manage new functionality in a way that is standard across your app. That said, you should still understand and begin with a purely library-less application structure you understand. I've written a good <strong>101</strong> post about this here (<a href="http://darcyclarke.me/development/javascript-applications-101/" rel="nofollow">http://darcyclarke.me/development/javascript-applications-101/</a>) and <strong>Addy Osmani</strong> also gives great resources for this here (<a href="http://addyosmani.com/blog/large-scale-jquery/" rel="nofollow">http://addyosmani.com/blog/large-scale-jquery/</a>). A bit different then server-side, I suggest that you build that 15-20% before you dive into the decision of which library to use. They do, after all, have many of the same features and shouldn't be relied on solely to build your client side app.</p> <p>I still think you're better off having these tools in place, rather then building your own from scratch, but I think you need to start building your own set of tools on top of them.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload