Download presentation
Presentation is loading. Please wait.
1
EECE.2160 ECE Application Programming
Instructor: Dr. Michael Geiger Fall 2018 Lecture 1: Course overview
2
ECE Application Programming: Lecture 1
Lecture outline Announcements/notes Chapter 1 exercises due Monday, 9/10 Program 1 due Wednesday, 9/12 10 points: register for access to the course textbook 10 points: introduce yourself to your instructor 30 points: complete simple C program No office hours this Thursday Today’s lecture Course overview Instructor information Course materials Course policies Resources Course outline Introduction to C programming Program development cycle 5/20/2019 ECE Application Programming: Lecture 1
3
ECE Application Programming: Lecture 1
Course meeting times Lectures: Section 201: MWF 8-8:50, Ball 326 Section 202: MWF 1-1:50, Ball 208 Section 203: MWF 12-12:50, Ball 208 You are welcome to attend any lecture Please go to your assigned section for exams 5/20/2019 ECE Application Programming: Lecture 1
4
ECE Application Programming: Lecture 1
Course instructors Dr. Michael Geiger Phone: (x43618 on campus) Office: 301A Ball Hall Office hours: M 9-10:30, W 9-10:30, Th 1:30-3 Student questions are top priority during these hours Available by appointment other days/times Feel free to stop by office any time TA: TBD 5/20/2019 ECE Application Programming: Lecture 1
5
ECE Application Programming: Lecture 1
Course materials Required Textbook: Programming in C with zyLabs, EECE.2160, Fall 2018 Electronic textbook + IDE for writing programs 10% of grade assigned to exercises from text To access text: Sign in or create learn.zybooks.com Enter zyBook code: UMLEECE2160GeigerFall2018 Subscribe ($77 this term; lasts until 1/4/19) Textbook registration requires you to supply student.uml.edu address Section in which you are enrolled May want to use other IDE (Visual Studio, xCode) Directions on use to be posted to web 5/20/2019 ECE Application Programming: Lecture 1
6
Additional course materials
Course websites: Will contain lecture slides, handouts, assignments Discussion group through Blackboard Allow common questions to be answered for everyone Do not post code to the discussion group All course announcements will be posted on Blackboard as well 5/20/2019 ECE Application Programming: Lecture 1
7
ECE Application Programming: Lecture 1
Academic honesty All assignments are to be done individually unless explicitly specified otherwise by the instructor Any copied solutions, whether from another student or an outside source, are subject to penalty You may discuss general topics or help one another with specific errors, but do not share assignment solutions Must acknowledge assistance from classmate in submission 5/20/2019 ECE Application Programming: Lecture 1
8
ECE Application Programming: Lecture 1
Textbook activities Activities associated with each lecture Must be completed within 3 days of lecture Activities completed >3 days after lecture: 0 credit Two activity types Participation activity: may retry until correct Challenge activity: problems may change if incorrect certain number of times 5/20/2019 ECE Application Programming: Lecture 1
9
Programming assignments
Will submit all code through textbook IDE May also require brief “submission” to Blackboard Penalty after due date: -(2n-1) points per day i.e., -1 after 1 day, -2 after 2 days, -4 after 3 days … Grading generally split as follows: 60%: Code compiles & generates correct output Output correctness auto-graded within textbook IDE 40%: Programming style Instructor/grader will examine code and grade accordingly Will supply more detailed grading policies before first assignment due Will have some policy for resubmissions TBD 5/20/2019 ECE Application Programming: Lecture 1
10
ECE Application Programming: Lecture 1
Course “rules” A couple of unofficial rules: Please call me “Dr. Geiger” or “Professor Geiger” “Michael,” “Mike,” or “Geiger” is not okay Please don’t talk when I’m talking Doing so distracts your classmates and me If you have a question, please raise your hand and ask—I want questions during lecture! 5/20/2019 ECE Application Programming: Lecture 1
11
ECE Application Programming: Lecture 1
Grading and exam dates Grading breakdown Programming assignments: 50% No programs will be dropped Textbook activities: 10% Participation activities: 5% Challenge activities: 5% Lowest of first 2 exams: 10% Highest of first 2 exams: 15% Exam 3: 15% Exam dates Exam 1: Friday, October 5 in class Exam 2: Monday, November 5 in class Exam 3: Monday, December 17, 3-6 PM (room TBD) 5/20/2019 ECE Application Programming: Lecture 1
12
Tentative course outline
Basic C program structure and development Working with data: data types, variables, operators, expressions Basic console input/output Control flow Functions: basic modular programming, argument passing Pointers, arrays, and strings Creating new data types: structures File & general input/output Bitwise operators Dynamic memory allocation 5/20/2019 ECE Application Programming: Lecture 1
13
Programming exercises
Note on course schedule: several days marked as “PE#” Those classes will contain supervised, in-class programming exercises We’ll write/complete short programs to illustrate previously covered concepts If you have a laptop, feel free to bring it 5/20/2019 ECE Application Programming: Lecture 1
14
ECE Application Programming: Lecture 1
Course questions General notes/questions about the course: How many of you have prior programming experience? For those that do, can improve programming style, efficiency, potentially learn new items For those that don’t, course assumes no prior programming experience Fair warning for all of you: material builds on itself throughout course Difficulty increases as course goes on If (when) you get stuck, ask for help!!! 5/20/2019 ECE Application Programming: Lecture 1
15
Course questions (continued)
How many of you are taking this course only because it’s required? Follow-up: how many of you hope you’ll never have to program again once you’re done with the course? Both computer and electrical engineers commonly program in industry—some examples: Automation of tasks Circuit simulation Test procedures Programming skills highly sought by employers 5/20/2019 ECE Application Programming: Lecture 1
16
ECE Application Programming: Lecture 1
Program development ... which is a good approach for your assignments, too! Average student’s approach to programming Read specification (assignment) ... at least some of it, anyway ... Attempt to write complete program Find output error and fix related code Repeat previous step until either Code completely works ... ... or code is such a mess that problem(s) can’t be fixed 5/20/2019 ECE Application Programming: Lecture 1
17
Program development (cont.)
A more structured approach to program development Read specification Identify requirements What results should program produce? How can I test correctness of those results? Plan design that implements requirements Using flowchart, pseudocode, etc. Plan for tests as well Translate design into actual code Test program and fix errors 5/20/2019 ECE Application Programming: Lecture 1
18
ECE Application Programming: Lecture 1
Final notes Next time: Basic C program structure IDE demonstration Reminders: Chapter 1 exercises due Monday, 9/10 Program 1 due Wednesday, 9/12 10 points: register for access to the course textbook 10 points: introduce yourself to your instructor 30 points: complete simple C program No office hours this Thursday 5/20/2019 ECE Application Programming: Lecture 1
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.