systems programming intro

12
SPL/2010 SPL/2010 Systems Programming Intro 1

Upload: scott-durham

Post on 30-Dec-2015

29 views

Category:

Documents


0 download

DESCRIPTION

Systems Programming Intro. Course Objectives: #1 RTE’s. סביבת הרצה. Building programs that interact with sophisticated Run-Time Environments (RTE) Key idea: programs are always created relative to other programs Interaction RTEs provide services/resources Programs we create exploit them. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Systems Programming  Intro

SPL/2010SPL/2010

Systems Programming Intro

1

Page 2: Systems Programming  Intro

SPL/2010SPL/2010

Course Objectives: #1 RTE’s

● Building programs that interact with sophisticated Run-Time Environments (RTE)

● Key idea: programs are always created relative to other programs

● Interaction● RTEs provide services/resources● Programs we create exploit them

2

הרצה סביבת

Page 3: Systems Programming  Intro

SPL/2010SPL/2010

Metaphor: air traffic control tower

3

Page 4: Systems Programming  Intro

SPL/2010SPL/2010

Course Objectives: #1 RTE’s (cont’d)

● 4 generic services: ● Concurrency management● Memory management● Communication and networking● Persistent data management (file

organization and database usage with SQL). ● Compare RTEs: Unix, Win32 OS, Java

Virtual Machine (JVM), Servlets, distributed RTEs.

4

Page 5: Systems Programming  Intro

SPL/2010SPL/2010

Course Objectives: #2: Programming

● Gaining experience and exposure to good practices for mid-size programming:● Intensive hands-on programming in pairs. ● Learn C++ and systematically compare it to Java● Explain how programming languages provide an

abstraction layer above RTE● Acquisition of good programming habits:

documentation, code metrics verification, design patterns, unit testing, test driven development.

5

Page 6: Systems Programming  Intro

SPL/2010SPL/2010

Course Workflow

● Website: http://www.cs.bgu.ac.il/~spl111/Main

● Experiment and explore: 4 large programming assignments + small HW’s

● Lab sessions: run and experiment with code

6

Page 7: Systems Programming  Intro

SPL/2010SPL/2010

Contact

● Questions regarding an assignment: email to TA in charge

● Questions regarding an assignment checking: email to assignment checker.

● In e-mail state: name, id, group number

7

Page 8: Systems Programming  Intro

SPL/2010SPL/2010

Textbooks and Internet Resources

● Concurrent Programming in Java (2nd edition)

● Computer Networking (2nd edition)● Effective Java, (2nd edition) ● Accelerated C++● Effective C++ (2nd edition)● More Effective C++● Effective STL

8

Page 9: Systems Programming  Intro

SPL/2010SPL/2010

Course Requirements

● Experience programming = heavy workload

● Do weekly HW right after practical session

● Start working on the assignments as soon as you get them

9

Page 10: Systems Programming  Intro

SPL/2010SPL/2010

Course Requirements: Weekly Homeworks

● Each practical session will have a small HW assignment.

● Immediate hands-on experience with class material

● Very simple!!! require only an hour or two ● Submission is obligatory.

10

Page 11: Systems Programming  Intro

SPL/2010SPL/2010

Course Requirements: Assignments

● 4 big programming assignments● Weight of each assignment in final grade

5%● Assignments must be submitted in pairs● Final Exam: weight in final grade is 80%.

11

Page 12: Systems Programming  Intro

SPL/2010SPL/2010

Passing Criteria

● Submit at least 10 weekly homework● Get grade >= 1 in each of

4 assignments● Final exam grade >= 56.● Overall average grade >= 56.

12