Description of this paper

SDI project 4




Assignment: Project 4;This week's assignment is similar to last week's, but instead of telling a story you will develop a code library that will help you in your assignments in the next course: Visual Frameworks. You will also develop a flowchart for your code, as well as use Git to track your work.;Reading & Resources;Web links;Mozilla Developer Network: Date;The documentation on how dates work in JavaScript may be helpful.;Mozilla Developer Network: Array;The documentation on arrays may be useful.;Mozilla Developer Network: isNAN;The isNan global function can tell you if a value is or is not a number.;Instructions;You may notice that this week seems lighter on activities than the previous weeks. This is because you've now learned all of the basic JavaScript that this course will teach you. There's more to JavaScript than what you know this far, but we've crammed your brain with enough for one month. Instead, it's time to build something big with what you've learned. And this means using only what you've learned. You are not allowed to use things like regular expressions (RegExp) or jQuery.;This assignment, like the last one, is in 3 parts: JavaScript code, Google Drawing flowchart, and Git repository.;JavaScript code;This part of the assignment works the same as the previous three assignments, but this time there is no story or theme. Instead, you're building a library: a collection of functions that you can reuse for future assignments. In the Visual Frameworks course you're going to find yourself doing the same repetitive tasks over and over. The code you write for this assignment may help to alleviate some of that repetition.;The more time you spend on this assignment now, the easier time you may have in Visual Frameworks. If there was ever an assignment in this course that you should dedicate time to, it's this one.;The code next month will involve quite a bit of string, number, and array manipulation. For this assignment you're going to build some utility functions to solve some common problems. Below is a brief description of each. Attached to this activity is a PDF document that supplies you with additional information about each function;String;Number;Array;Does a string follow a 123-456-7890 pattern like a phone number?;Does a string follow an aaa@bbb.ccc pattern like an email address?;Is the string a URL? (Does it start with http: or https:?);Title-case a string (split into words, then uppercase the first letter of each word);Given a string that is a list of things separated by a given string, as well as another string separator, return a string with the first separator changed to the second: "a,b,c" + "," + "/"? "a/b/c".;Format a number to use a specific number of decimal places, as for money: 2.1? 2.10;Fuzzy-match a number: is the number above or below a number within a certain percent?;Find the number of hours or days difference between two dates.;Given a string version of a number such as "42", return the value as an actual Number, such as 42.;Find the smallest value in an array that is greater than a given number;Find the total value of just the numbers in an array, even if some of the items are not numbers.;Given an array of objects and the name of a key, return the array sorted by the value of that key in each of the objects: "a" + [{a:2},{a:3},{a:1}]? [{a:1},{a:2},{a:3}].;There are twelve functions listed above. Build a library that implements any six of those twelve.;Google Drawing Flowchart;You will use the Google Docs Drawing web app to create flowcharts that represent your library. You should have one flowchart per function, but there is no need to create a flowchart showing each function call. Some functions will be simpler than others, but each flowchart should explain how the function works to someone who cannot see your code.;This part of the assignment is graded on how well your flowchart matches your code, its logic, and its correct use of the flowchart symbols.;You should download a PDF copy of your flowchart often as you work on it. If Google Docs goes down or something happens you will want at least something to turn in.;Git Repository;This assignment will be tracked using Git. You'll need to have the presence of mind to work in small chunks, save often, and work with Git each step of the way.;This part of the assignment is not on the rubric, because it is required but doesn't count toward your grade. Please, please, please remember to perform at least 6 meaningful commits: at least one per function. Without them, you will get a zero for your assignment.;Make-Up Option;You may use this assignment to make up some of what you lost on points for the first three assignments;Implement all twelve functions above. At least ten of them should work correctly, but any that do not work should at least have a solid effort in them. If you don't get at least this far, none of the rest of this list applies.;Comment the sections of your code that show that you know how to do whatever you lost points for on a previous assignment. If you don't have an explicit comment you won't get credit. For example, if you lost points for not including a nested loop in Deliverable 3, include a comment that says something like;1;// MAKEUP: nested loops, deliverable 3;For each fixed instance you may earn up to ? or 75% of the points you lost for that item. So if you lost 8 points for an item on the previous assignment, you can get 6 of them back.;Your fixed code must work! There is no partial credit per item. In the above example, it's 6 points or nothing.;Yes, it's going to be a whole lot of work to get the points back. But it's an opportunity to make up 75% of what you lost.;Collaboration;You are adults, and I'm hopeful you are friends. You also know how to use the Internet. But this is an individual assignment. It is expected that you will help each other, but that you will not copy each other's work. Code that smells even a little like copied work will get sent straight to the Academic Integrity department for review, no questions asked.;This is a foundation course: if you don't get it now, you're only hurting yourself if you try to skate by. Not only will it cause you frustration later, but it will cost you money in repeated courses. It's a reality that we see all too often.;Put in the effort now and it absolutely will pay off. I promise, and you can hold me to it.;Deliverables;You must compress your entire repository before uploading it. Do not upload an unzipped file or you will get a zero for the assignment.;You will upload a compressed (Zipped) file named which should include;Part;File Name;Format;Notes;Repository;This is the folder that holds your entire local repository. You can compress the folder by right-clicking it in Finder and selecting the "Compress" option.;Flowchart;lastname_firstname_project4.pdf;pdf;Download the PDF version of your flowchart from Google Docs, save it to your assignment repository, and commit it before compressing your repository. You may commit this file multiple times, just like any other source file. Your flowchart should include your name, date, term, and assignment (Deliverable 4) in a text box.


Paper#72260 | Written in 18-Jul-2015

Price : $47