Chris Pollett> Old Classses >
CS174

( Print View )

Student Corner:
[Final-PDF]

[Submit Sec1]
[Grades Sec1]

[Lecture Notes]
[Discussion Board]

Course Info:
[Texts & Links]
[Description]
[Course Outcomes]
[Outcomes Matrix]
[Course Schedule]
[Grading]
[Requirements/HW/Quizzes]
[Class Protocols]
[Exam Info]
[Regrades]
[University Policies]
[Announcements]

HW Assignments:
[Hw1] [Hw2] [Hw3]
[Hw4] [Hw5] [Quizzes]

Practice Exams:
[Midterm] [Final]

CS174 Spring 2021Practice Final

  • Know how to do (by heart) all the practice problems.
  • Go over your notes at least three times. Second and third time try to see how much you can remember from the first time.
  • Go over the homework problems.
  • Try to create your own problems similar to the ones I have given and solve them.
  • If you want to study in groups, at this point you are ready to quiz each other.

The practice final is below. Here are some facts about the actual final:

  1. It is open book, open notes, open internet, however, you are not allowed to discuss problems on the final with classmates or other people until after the final submission period is over.
  2. The final will have 10 problems.
  3. It will be posted as one of the links on the side of the class homepage.
  4. You submit the final for grading using the same mechanism as to submit homeworks.
  5. It is designed to take an 2h15m, however, it will be posted by 12:15pm on May 19 and you can submit it up until May 20 at 11:59pm.
  6. Some problems will be dependent on some personal information about you such as your ID, and you will not receive credit if you don't make use of this information correctly.
  7. One problem will be off the practice midterm and two problems will be off the practice final.
  8. Six problems will be on material after the midterm, four will be on material before.

On practice final day, please post your problem solutions to the Practice Final Thread. Make sure to include the names of all your group's members.

  1. Make a small PHP class Foo in the namespace your_first_name\great_project with method renderFoo() that echo's the word foo. Make a second class Goo in the namespace your_surname\some_other_project which subclasses the class Foo you just wrote and has a method renderGoo which echo goo.
  2. What is class autoloading in PHP and give a briefly example of how to set it up and how it works. Your example should make use of a namespace that contains your actual first name.
  3. Explain with git commands how to do the follow: (a) create a new repository, (b) make a branch, (c) create a patch, (d) make a version tag with your birthdate as the version number.
  4. Give an example DTD medical. Your dtd must have at least three tags. At least one tag must support the nesting of another tag within it. Your DTD should also have at least one entity and at least one tag should an attribute. Given an example document that conforms to this DTD and uses your name.
  5. Write a Javascript function which when run attaches a DOM 2 click event handler to every div tag on the current document that creates an alert with the contents of the div tag clicked.
  6. Briefly explain how each of the following web attacks works: XSS, CSRF, Click Jacking, target blank attacks.
  7. Give an application code example of each of the following in Javascript: (a) timer, (b) XHR request, (c) Promise, (d) Module Pattern.
  8. Describe how the value of an object property is looked up in Javascript and the relationship of this to an object's prototype property.
  9. Explain and give an example for each of the following: (a) JSONP, (b) proxies, (c) REST, (d) C10K problem.
  10. Show with code (a) how to serve a static page with express, (b) how to connect to a mysql database in node, (c) how to make use of logger middleware, (d) how to determine the value of a posted form variable in Express.