Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I am working on a web app that displays some data and uses javascript. Right now

ID: 646642 • Letter: I

Question

I am working on a web app that displays some data and uses javascript.

Right now, we are serving up parts of our js (to display certain types of information, ie "Render a View") via our server which dynamically writes the java script with the needed data embedded in it using JSPs.

Three main points/ requirements we need to consider are:

We need to be able to easily edit our javascript. (spread through multiple files right now with global variables. can't edit anything with out mabey(no testing framework) breaking everything.

We want to be able to make calls on the client side to render a view without knowing specifics about the View (in case we add/ change a View).

We need to test our javascript (for obvious reasons)

Currently we have our js very spread around and in large files which makes it hard to make edits. I've been looking into the module pattern to address this concern, but many of the posts I've been reading have been:

(a) Older (most recent from 2010)

(b) Had some disagreement about how to make modules that are also testable

Any ideas about ways we should change/ restructure our application to accomplish all three goals? do these goals have too much inherent conflict, or is there hope? Also, any helpful blog posts are appreciated.

Explanation / Answer

So as a follow up, What worked in this instance was doing almost exactly as Benjamin Gruenbaum said. "templating" the code, or having one piece of code write another one was bad for many reasons, including performance (no caching of js), maintainability and test-ability. I combed apart the system into a server part that encoded the needed data into json and then sent it to our js on the client side, as well as started to organize the code into modules, which helped tidy things up a lot so far, and I foresee leading to better (again) maintainability and test-ability. I can also endorse http://addyosmani.com/resources/essentialjsdesignpatterns/book/ as a great, current resource on how to write bigger pieces of javascript in a well organized and generally right way.

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote