What is Computer Science? … and why should you care?

Slides:



Advertisements
Similar presentations
Designing a Program & the Java Programming Language
Advertisements

Programming for Beginners
Lecture 0 CSIS10A Overview. Welcome to CSIS10A (5 mins) – Typical format for class meetings New material first (monitors off, notebooks out) Practice.
JAVA BASICS SYNTAX, ERRORS, AND DEBUGGING. OBJECTIVES FOR THIS UNIT Upon completion of this unit, you should be able to: Explain the Java virtual machine.
JAVA BASICS SYNTAX, ERRORS, AND DEBUGGING. GCOC – A.P. Computer Science A College Board Computer Science A Topics Covered Program Design - Read and understand.
Chapter 2: Your First Program! Hello World: Let’s Program  All programs must have the extension.java  Our first program will be named: HelloWorld.java.
AP Computer Science. Google Interview Question You are given 8 identical looking balls. One of them is heavier than the rest of the 7 (all the others.
The Life and Times of Andrew Bardee and Chris Cornelius Programming Languages Fall 2011.
How do we make our Welcome.java program do something? The java in our Welcome.java file won’t do anything by itself. We need to tell the computer to execute.
Week 1 - Wednesday.  What did we talk about last time?  Syllabus  Computers.
Python Programming Chapter 1: The way of the program Saad Bani Mohammad Department of Computer Science Al al-Bayt University 1 st 2011/2012.
Slides prepared by Rose Williams, Binghamton University Chapter 1 Getting Started 1.1 Introduction to Java.
How to Create a Java program CS115 Fall George Koutsogiannakis.
Lecturer: Fintan Costello Welcome to Hdip 001 Introduction to Programming.
How do we make our HelloTester.java program do something? The java in our HelloTester.java file won’t do anything by itself. We need to tell the computer.
CHAPTER 1 INTRODUCTION GOALS  To understand the activity of programming  To learn about the architecture of computers  To learn about machine code and.
How do we make our Welcome.java program do something? The java in our Welcome.java file won’t do anything by itself. We need to tell the computer to execute.
CS 101 Problem Solving and Structured Programming in C Sami Rollins Spring 2003.
COMP 14: Intro. to Intro. to Programming May 23, 2000 Nick Vallidis.
ALGORITHMS CSC 171 LECTURE 1. What is “Computer Science”? What is “Science”? What is a “Computer”? What is “Computation”?
1 Building Java Programs Chapter 1: Introduction to Java Programming These lecture notes are copyright (C) Marty Stepp and Stuart Reges, They may.
CSE 131 Computer Science 1 Module 1: (basics of Java)
Languages and tools. BY SA machine code.
Introducing Java.
© The McGraw-Hill Companies, 2006 Chapter 1 The first step.
Hello AP Computer Science!. What are some of the things that you have used computers for?
ITEC113 Algorithms and Programming Techniques
Basics Programming Concepts. Basics A computer program is a set of instructions to tell a computer what to do Machine language = circuit level language.
Created by, Author Name, School Name—State FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities.
Introduction to Computers and Java Chapter 1.3. A Sip of Java: Outline History of the Java Language Applets A First Java Program Compiling a Java Program.
Chapter 1 CSIS-120: Java Intro. What is Programming?  A: It is what makes computer so useful.  The flexibility of a computer is amazing  Write a term.
1 CSC204 – Programming I Lecture 2 Intro to OOP with Java.
© 2012 Pearson Education, Inc. All rights reserved. 1-1 Why Java? Needed program portability – Program written in a language that would run on various.
Board Activity Find your seat on the seating chart Login – Remember your login is your first initial your last name and the last three numbers of your.
Programming Concept Chapter I Introduction to Java Programming.
CS591x A very brief introduction to Java. Java Developed by Sun Microsystems was intended a language for embedded applications became a general purpose.
Netprog: Java Intro1 Crash Course in Java. Netprog: Java Intro2 Why Java? Network Programming in Java is very different than in C/C++ –much more language.
What does a computer program look like: a general overview.
Lecture 1 Introduction Figures from Lewis, “C# Software Solutions”, Addison Wesley Richard Gesick.
Fall 2006Slides adapted from Java Concepts companion slides1 Introduction Advanced Programming ICOM 4015 Lecture 1 Reading: Java Concepts Chapter 1.
BUILDING JAVA PROGRAMS CHAPTER 1 ERRORS. 22 OBJECTIVES Recognize different errors that Java uses and how to fix them.
CHAPTER 1 INTRODUCTION 1 st Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
Review, Pseudocode, Flow Charting, and Storyboarding.
CHAPTER 1 INTRODUCTION 2 nd Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
The life time of local variables (in a method). Local variables Local variable: A local variable is used to store information that is relevant for the.
1 WELCOME TO CIS 1068! Instructor: Alexander Yates.
Java Basics 1 Brief History of Java and Overview of Langauge.
School of Computer Science & Information Technology G6DICP - Lecture 6 Errors, bugs and debugging.
© 2012 Pearson Education, Inc. All rights reserved types of Java programs Application – Stand-alone program (run without a web browser) – Relaxed.
Java FilesOops - Mistake Java lingoSyntax
CHAPTER 1 INTRODUCTION. CHAPTER GOALS To understand the activity of programming To learn about the architecture of computers To learn about machine code.
JAVA for(int i = 0; i < 100; i++) { Statements } BASIC For i = 1 to 100; Statements Next i FORTRAN do counter = 1,100, 1 statements end do PASCAL for Counter.
Computer Science Reaching Wider Summer School 2012.
The single most important skill for a computer programmer is problem solving Problem solving means the ability to formulate problems, think creatively.
Brief Version of Starting Out with C++ Chapter 1 Introduction to Computers and Programming.
Introduction to Computer and Programing Thanachat Thanomkulabut.
End of the beginning Let’s wrap up some details and be sure we are all on the same page Good way to make friends and be popular.
CS 177 Recitation Week 1 – Intro to Java. Questions?
ITP 109 Week 2 Trina Gregory Introduction to Java.
Introduction to Object Oriented
Lecture 1b- Introduction
Introduction to Java Import Scanner class to use in our program
Comp Sci 200 Programming I Jim Williams, PhD.
Introduction CSC 111.
ICT Programming Lesson 1:
Tonga Institute of Higher Education IT 141: Information Systems
Computing Introduction.
Tonga Institute of Higher Education IT 141: Information Systems
CS Programming I Jim Williams, PhD.
CS Programming I Jim Williams, PhD.
Presentation transcript:

What is Computer Science? … and why should you care?

What is a “computer” Oxford English Dictionary (partial entries) 1.A person who makes calculations 2.A device for facilitating calculations 3.Device used to [do long list of things with] information according to variable instructions

Variable Instructions I can give it inputs that change how it reacts to future inputs Many approximately “universal” – Universal = can teach it to do anything – “Approximately” because memory is limited

How many computers have you used in the past two weeks?

How many computers? Car Microwave oven Laptop computer Cell phone Thermostat This classroom Power meter Cash register Crosswalk signal Your apartment Used to access a single web page

So many… Why so many? Any risks to having them everywhere?

What is programming? Teaching a computer what it should do Are computers good students?

What is programming? Teaching a computer what it should do Are computers good students? – Never forget anything – Make no mistakes – Incredibly stupid The lessons we teach it called “code”

What is “Hacking” Several uses 1.Rapid development of code 2.Sloppy development of code 3.Trying to break other people’s code (next slide)

What is (malicious) Hacking? Most programs: “do X, Y, Z, and don’t listen to anyone else telling you to do differently” “don’t listen to anyone else” is hard to say – We won’t even try this semester Hacking = finding ways to get other people’s code to listen to you

Layers of Languages

Why “language”? It’s how we know how to teach – Plus it’s traditional, keyboards are fast, … Syntax, Semantics, Vocabulary – “Flow run ghxsr fla"vor toast-toats olg” – “Put the tire in itself for chanting sneezes” – “Prandial soleation is gauche”

Why “code”? section.data str: db 'Hello world!', 0Ah str_len: equ $ - str section.text global _start _start: moveax, 4 movebx, 1 movecx, str mov edx, str_len int80h moveax, 1 movebx, 0 int80h public class Hi { public static void main(String[] args) { System.out.println(“Hello world!“); } Lots of languages, all look like some kind of code – But designed (i.e., simple rules) We’ll learn “Java”

Program Flow Java source code Byte codeBehavior CompileRun Syntax Errors Vocabulary Errors Semantics Errors (Exceptions) Logic Mistakes

1.We write Java (source code) 2.It is “compiled” to “byte code” by “compiler” – Unless syntax wrong; then get syntax error – Or vocabulary wrong; then “unknown symbol” error 3.Byte code is “run” or “executed” by “java virtual machine” – Unless semantics wrong; then get runtime Exception 4.Program does something – Might do “wrong” thing; called a logic error