Download Java 15/16 Development Kit Tools: A Comprehensive Guide and more Lecture notes Computer Science in PDF only on Docsity!
Introduction to Computer Science
Introduction
Ryan Stansifer
Florida Institute of Technology Melbourne, Florida USA 32901 http://www.cs.fit.edu/~ryan/
8 March 2023
Computer Science (Introduction) © 8 March 2023 1 / 134
Overview of Course
- (^) Introduction and Context. What is CS?
- (^) Java review. Data, control constructs, static methods
- (^) Classes. Incorporation, instantiation, inheritance
- (^) Generics. Code reuse
- (^) Program analysis. Steps the program takes
- (^) Data structures. Lists, stacks, queue
Computer Science (Introduction) Preface (Overview) © 8 March 2023 2 / 134
Outline of Introduction
There are couple of topics that put programming in context and that are helpful if pointed out in advance before getting mired in the details.
- (^) What is Computer Science? Areas of study: AI, OS,...
- (^) What is a computer? Architecture, CPU, memory hierarchy
- (^) Interface layers: hardware, operating system, application
- (^) The Java platform
- (^) JVM and a million other pieces
- (^) Java history, pragmatics
- (^) Programming languages — not just Java
- (^) Program development; debuggers and so on
- (^) Program style. A program is a text file
- (^) I/O, streams The single most important skill in programming, computer science, and science in general is abstraction. Yet I think that belaboring the idea may be too philosophical at this time. If one is observant, one will see abstraction at work in all the topics above. Computer Science (Introduction) Preface (Goals) © 8 March 2023 4 / 134
What is Computer Science?
computer science. The study of information, protocols and algorithms for idealized and real automata.
What is Computer Science?
computer science. The study of information, protocols and algorithms for idealized and real automata.
What is Computer Science?
computer science. The study of information, protocols and algorithms for idealized and real automata.
- (^) automaton: “self moving” – in our context, self “deciding” or autonomous mechanism with bounded resources (time and space)
- (^) information:
What is Computer Science?
computer science. The study of information, protocols and algorithms for idealized and real automata.
- (^) automaton: “self moving” – in our context, self “deciding” or autonomous mechanism with bounded resources (time and space)
- (^) information: knowledge represented in a form suitable for transmission, manipulation, etc.
What is Computer Science?
computer science. The study of information, protocols and algorithms for idealized and real automata.
- (^) automaton: “self moving” – in our context, self “deciding” or autonomous mechanism with bounded resources (time and space)
- (^) information: knowledge represented in a form suitable for transmission, manipulation, etc.
- (^) protocol: rules for exchanging information without problems
What is Computer Science?
computer science. The study of information, protocols and algorithms for idealized and real automata.
- (^) automaton: “self moving” – in our context, self “deciding” or autonomous mechanism with bounded resources (time and space)
- (^) information: knowledge represented in a form suitable for transmission, manipulation, etc.
- (^) protocol: rules for exchanging information without problems
- (^) algorithm:
What is Computer Science?
computer science. The study of information, protocols and algorithms for idealized and real automata.
- (^) automaton: “self moving” – in our context, self “deciding” or autonomous mechanism with bounded resources (time and space)
- (^) information: knowledge represented in a form suitable for transmission, manipulation, etc.
- (^) protocol: rules for exchanging information without problems
- (^) algorithm: an unambiguous, finite description in simple steps or actions
Computer Science is not the study of computers, nor is it the practice of their use.
- (^) Arabic:
- (^) Chinese (simplified):
- (^) Dutch: algoritme
- (^) Finnish: algoritmi
- (^) French: algorithme
- (^) German: Algorithmus
- (^) Georgian:
- (^) Hindi:
- (^) Icelandic: reiknirit
- (^) Japanese:
- (^) Latin: algorithmus
- (^) Spanish: algoritmo
- (^) Swedish: algoritm
- (^) Turkish: algoritma
What is CS?
- (^) Engineering? Application of science?
- (^) Natural science? Observable phenomena?
- (^) Mathematics? Invisible abstractions?
- (^) Social science? Functioning of human society?
What is CS?
- (^) Engineering? Application of science?
- (^) Natural science? Observable phenomena?
- (^) Mathematics? Invisible abstractions?
- (^) Social science? Functioning of human society?
CS is exciting and difficult as it is all these things.