BYU CS Logo
Computing That Serves

CS 360

Course Offerings

Section # Semester Instructor Website Description
1 Winter 2017 Faculty Adjunct https://learningsuite.byu.edu/view/XYX359YJFc1J.html
2 Winter 2017 Casey Deccio https://learningsuite.byu.edu/view/XYX359YJFc1J.html
1 Fall 2016 Daniel Zappala http://cs360.byu.edu
2 Fall 2016 Daniel Zappala http://cs360.byu.edu
1 Winter 2016 Mark Clement https://learningsuite.byu.edu/view/q6DVt9SAo36n.html#instructorInformation
2 Winter 2016 Mark Clement https://learningsuite.byu.edu/view/q6DVt9SAo36n.html#instructorInformation
1 Fall 2015 Daniel Zappala http://cs360.byu.edu/
2 Fall 2015 Daniel Zappala http://cs360.byu.edu/
1 Winter 2015 Mark Clement https://learningsuite.byu.edu/view/24Qgk_0P2_4D.html Internet Programming
2 Winter 2015 Mark Clement https://learningsuite.byu.edu/view/24Qgk_0P2_4D.html Internet Programming
1 Fall 2014 Daniel Zappala http://cs360.byu.edu
2 Fall 2014 Daniel Zappala http://cs360.byu.edu
1 Winter 2014 Daniel Zappala http://cs360.byu.edu/ *This is actually going to be Section 2
1 Fall 2013 Daniel Zappala http://cs360.byu.edu Internet Programming
1 Winter 2013 Quinn Snell http://dna.cs.byu.edu/CS360
2 Winter 2013 Quinn Snell http://dna.cs.byu.edu/CS360
1 Fall 2012 Daniel Zappala http://ilab.cs.byu.edu/cs360
2 Fall 2012 Daniel Zappala http://ilab.cs.byu.edu/cs360
1 Spring 2012 Daniel Zappala http://ilab.cs.byu.edu/cs360
1 Winter 2012 Quinn Snell http://dna.cs.byu.edu/CS360
2 Winter 2012 Quinn Snell http://dna.cs.byu.edu/CS360
1 Fall 2011 Mark Clement http://dna.cs.byu.edu/CS360/
2 Fall 2011 Mark Clement http://dna.cs.byu.edu/CS360/
1 Winter 2011 Daniel Zappala http://ilab.cs.byu.edu/cs360
2 Winter 2011 Daniel Zappala http://ilab.cs.byu.edu/cs360
1 Fall 2010 Mark Clement http://dna.cs.byu.edu/CS360/
2 Fall 2010 Mark Clement http://dna.cs.byu.edu/CS360/
1 Spring 2010 Mark Clement http://dna.cs.byu.edu/CS360/
1 Winter 2010 Daniel Zappala http://ilab.cs.byu.edu/cs360
2 Winter 2010 Daniel Zappala http://ilab.cs.byu.edu/cs360
1 Fall 2009 Quinn Snell http://dna.cs.byu.edu/CS360
2 Fall 2009 Quinn Snell http://dna.cs.byu.edu/CS360
1 Spring 2009 Mark Clement http://dna.cs.byu.edu/CS360/
1 Winter 2009 Daniel Zappala http://ilab.cs.byu.edu/cs360
2 Winter 2009 Daniel Zappala http://ilab.cs.byu.edu/cs360
1 Fall 2008 Quinn Snell http://dna.cs.byu.edu/CS360
2 Fall 2008 Quinn Snell http://dna.cs.byu.edu/CS360
1 Spring 2008 cs grad http://dna.cs.byu.edu/CS360.Spring2008/
1 Winter 2008 Daniel Zappala http://ilab.cs.byu.edu/cs360
2 Winter 2008 Mark Clement http://dna.cs.byu.edu/CS360/
1 Fall 2007 Quinn Snell http://dna.cs.byu.edu/CS360
2 Fall 2007 Quinn Snell http://dna.cs.byu.edu/CS360
1 Winter 2007 Daniel Zappala http://ilab.cs.byu.edu/cs360
2 Winter 2007 Daniel Zappala http://ilab.cs.byu.edu/cs360
1 Fall 2006 Quinn Snell http://star.cs.byu.edu/CS360
2 Fall 2006 Mark Clement http://star.cs.byu.edu/CS360

Short Summary: 

Internet Programming

Credits: 

3

Prerequisites: 

CS 360 will no longer be offered as of Fall 2017. CS 324 will be offered in it's place (and count wherever CS 360 counts in your CS major).

Internet Programming

Internet application programming including sockets, threads, CGI, database, e-commerce, web services.

 

This document is not a syllabus. Instead, for ALL offerings of this course, this document states the purpose, expected objectives, and topics for the course. Faculty members teaching this course should adhere to these objectives and topics. Students taking this course can expect to achieve the objectives and cover the topics specified, and faculty members teaching follow-on courses can expect students to have been appropriately exposed to the prerequisite material as stated.  The “hours” for topics listed below reflect the approximate number of 50-minute class periods (or equivalent) devoted to each topic.

Purpose

CS 360 teaches the fundamental of the Internet and web applications.  Students write a web server and a selection of distributed applications that run on web servers.  They also learn how to analyze the performance of a distributed application and make convincing oral and in written arguments.

Learning Outcomes

At the end of this course, students should be able to:

  1. Design and implement a variety of client-server and web applications
  2. Analyze the performance of a web server, write convincingly to support your conclusions and give an oral report to describe your findings.
  3. Implement a web server using processes, semaphores, threads, sockets and signals.
  4. Use a set of web programming languages to implement an application.
  5. Use security to protect their web application

 

Topics

  • Internet Architecture, sockets and HTTP, web caching                     (5 hours)
  • Concurrent Programming, semaphores, deadlock avoidance           (4 hours)
  • Performance analysis techniques, writing and oral presentations     (4 hours)
  • Relational Databases, SQL, sessions, cookies, security                   (6 hours)
  • PHP, Ruby on Rails, Java Script, AJAX                                             (7 hours)
  • Model view controller, front controller, entity-relationship modeling   (6 hours)
  • Evaluating different web technologies                                                (4 hours)