01-intro-post3up

01-intro-post3up - Welcome to CS 136 Instructors: Byron...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Welcome to CS 136 Instructors: Byron Weber Becker, Kate Larson, Jiye Li, Prabhakar Ragde Tutors: Sanderz Fung, Kyung-Min Kim, Kyle Spaans (plus part-timers) Web page (main information source): http://www.student.cs.uwaterloo.ca/cs136 Newsgroup : uw.cs.cs136 Lectures: TuTh 8:30, 1:00 (MC 2054), 10:00, 11:30, 2:30 (MC 2017) Tutorials: Wed or Fri, starting January 14 CS 136 Winter 2009 01: Introduction to CS 136 1 Some logistics Textbooks: How to Design Programs (HtDP) by Felleisen, Flatt, Findler, Krishnamurthi. C Programming: A Modern Approach (CP) by K. N. King. Presentation handouts: will be available on Web page. Marking Scheme: 5% participation, 20% assignments (7-9 in total), 30% midterm (one), 45% final. Software: DrScheme v4.1.3 GNU C compiler ( gcc ), text editor (e.g. vim ) CS 136 Winter 2009 01: Introduction to CS 136 2 Class participation mark Based on use of clickers Register on course Web page Purpose: to encourage active learning and provide real-time feedback Multiple-choice questions asked during lecture One mark for voting, one additional mark for right answer Votes from all lecture sections pooled Best 75% over whole term used for 5% of final grade CS 136 Winter 2009 01: Introduction to CS 136 3 Course overview continues with functional paradigm (using Scheme) introduces imperative paradigm (using C) preparation for subsequent CS courses (major and minor) more focus on real-world issues dealing efficiently with large amounts of data organizing larger programs reusing and sharing code CS 136 Winter 2009 01: Introduction to CS 136 4 Why C? basic imperative syntax shared with many other languages modest number of new language constructs and concepts can be explained with a reasonably clear semantic model visibility of machine level contrasts with the abstractions of Scheme CS 136 Winter 2009 01: Introduction to CS 136 5 Why not C++? C++ has several different layers: An imperative core (almost identical to C); An object/class system for organizing larger programs; Templates allowing the design of parameterized classes for use in libraries. The last two are not central to CS 136 (we will touch on the ideas). You can think of C as a Beginning Student level of C++. C++ will be examined further in CS 241 and CS 246. CS 136 Winter 2009 01: Introduction to CS 136 6 Why not Java? originally designed to appeal to experienced C++ programmers requires premature introduction of advanced concepts Javas benefits are better appreciated after learning C learning Java (or C++) is straightforward after CS 136 CS 136 Winter 2009 01: Introduction to CS 136 7 Overview: Interaction so far: in DrSchemes read-evaluate-print loop (REPL) ....
View Full Document

Page1 / 15

01-intro-post3up - Welcome to CS 136 Instructors: Byron...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online