C02: Overview of Software Development and Java

Similar documents
Code Ninjas: Introduction to Computer Science. Macomb Science Olympiad Presented by Swati Dharia

Lesson 04: Our First Java Program (W01D4

You should see something like this, called the prompt :

Lecture 1 - Introduction (Class Notes)

Lecture 4: Introduction to Java and your Development Environment

CS 11 java track: lecture 1

IT151: Introduction to Programming (java)

ICOM 4015 Advanced Programming Laboratory. Chapter 1 Introduction to Eclipse, Java and JUnit

BASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I

Index. Course Outline. Grading Policy. Lab Time Distribution. Important Instructions

CHAPTER 1. Introduction to JAVA Programming

C11: Garbage Collection and Constructors

Getting Started with Java. Atul Prakash

C08: Inheritance and Polymorphism

Class 1: Homework. Intro to Computer Science CSCI-UA.0101 New York University Courant Institute of Mathematical Sciences Fall 2017

BASICS.

C06: Java API & Libraries

Computational Applications in Nuclear Astrophysics using Java Java course Lecture 1

CSC 172 Data Structures and Algorithms. Fall 2017 TuTh 3:25 pm 4:40 pm Aug 30- Dec 22 Hoyt Auditorium

C10: Garbage Collection and Constructors

COMP-202: Foundations of Programming. Lecture 2: Java basics and our first Java program! Jackie Cheung, Winter 2015

Lecture 2. COMP1406/1006 (the Java course) Fall M. Jason Hinek Carleton University

3 CREATING YOUR FIRST JAVA APPLICATION (USING WINDOWS)

CSC116: Introduction to Computing - Java

CPSC 150 Laboratory Manual. Lab 1 Introduction to Program Creation

The Command Shell. Fundamentals of Computer Science

Software Practice 1. Course Overview Lecture Schedule Today s Task Contact

CompSci 125 Lecture 02

CMSC 150 LECTURE 1 INTRODUCTION TO COURSE COMPUTER SCIENCE HELLO WORLD

CSC116: Introduction to Computing - Java

G52PGP. Lecture oo3 Java (A real object oriented language)

Announcements. 1. Forms to return today after class:

Lab #1: A Quick Introduction to the Eclipse IDE

Introduction to Data Structures

Summer Assignment for the School Year

Submitting Assignments

JAVA Programming Practice Course Overview Lecture Schedule Today s Task Contact

C16b: Exception Handling

Lecture 02, Fall 2018 Friday September 7

17 Hello world 18 Type: String: literal 19 Standard API: System: out.println() 20 Hello world 21 Statement 22 Statement: simple statements are ended w

Goals. Java - An Introduction. Java is Compiled and Interpreted. Architecture Neutral & Portable. Compiled Languages. Introduction to Java

List of Slides 1 Title 2 Chapter 2: Sequential execution and program errors 3 Chapter aims 4 Section 2: Example:Hello world 5 Aim 6 Class: programs ar

C08: Inheritance and Polymorphism

Introduction to Java

COMP-202: Foundations of Programming. Lecture 2: Java basics and our first Java program! Jackie Cheung, Winter 2016

CPS109 Lab 1. i. To become familiar with the Ryerson Computer Science laboratory environment.

CS 231 Data Structures and Algorithms, Fall 2016

Fundamentals of Programming. By Budditha Hettige

C09: Interface and Abstract Class and Method

C06: Memory Management

Summer Assignment for AP Computer Science. Room 302

COMP-202 Unit 0: Course Details

Chapter Two Bonus Lesson: JavaDoc

CSC116: Introduction to Computing - Java

C07: Testing and JUnit

Java Bytecode (binary file)

Crash Course Review Only. Please use online Jasmit Singh 2

Object-oriented programming. and data-structures CS/ENGRD 2110 SUMMER 2018

Lecture Notes CPSC 224 (Spring 2012) Today... Java basics. S. Bowers 1 of 8

1.00 Lecture 2. What s an IDE?

Java Foundations: Unit 3. Parts of a Java Program

C14b: Classless Intradomain Routing

CONTENTS: What Is Programming? How a Computer Works Programming Languages Java Basics. COMP-202 Unit 1: Introduction

13 th Windsor Regional Secondary School Computer Programming Competition

CS 106 Introduction to Computer Science I

Outline. CIS 110: Introduction to Computer Programming. What is Computer Science? What is computer programming? What is computer science?

Computer Hardware. Java Software Solutions Lewis & Loftus. Key Hardware Components 12/17/2013

5/3/2006. Today! HelloWorld in BlueJ. HelloWorld in BlueJ, Cont. HelloWorld in BlueJ, Cont. HelloWorld in BlueJ, Cont. HelloWorld in BlueJ, Cont.

BIT Java Programming. Sem 1 Session 2011/12. Chapter 2 JAVA. basic

Introduction to Java. Java Programs Classes, Methods, and Statements Comments Strings Escape Sequences Identifiers Keywords

Department of Computer Science University of Pretoria. Introduction to Computer Science COS 151

CS 177 Recitation. Week 1 Intro to Java

Introduction to Java

Warmup : Name that tune!

Introduction Basic elements of Java

CSc 2310 Principles of Programming (Java) Jyoti Islam

Outline. Parts 1 to 3 introduce and sketch out the ideas of OOP. Part 5 deals with these ideas in closer detail.

CISC 3130 Data Structures Spring 2018

Programming with Java

Javac and Eclipse tutorial

MODULE 02: BASIC COMPUTATION IN JAVA

Exercise 1: Intro to Java & Eclipse

Setting up your Computer

CS Week 2. Jim Williams, PhD

C22a: Problem Solving using Recursion

CISC 3115 TY3. C28a: Set. Hui Chen Department of Computer & Information Science CUNY Brooklyn College. 11/29/2018 CUNY Brooklyn College

CISC 3130 Data Structures Fall 2018

Programming in Java Prof. Debasis Samanta Department of Computer Science Engineering Indian Institute of Technology, Kharagpur

Learning objectives. The Java Environment. Java timeline (cont d) Java timeline. Understand the basic features of Java

Workbook A dialog box will appear asking for you to select your "workspace". Leave the default as is, which should be /home/crsid/workspace.

Creating a Program in JCreator. JCreator is then used to create our program. But the first step is to create a new file.

Project 1. Java Control Structures 1/17/2014. Project 1 and Java Intro. Project 1 (2) To familiarize with

CS 101 : Introduction to Programming. Lecture 1 22/January/2018 Ashish Sureka

C30b: Inner Class, Anonymous Class, and Lambda Expression

A PROGRAM IS A SEQUENCE of instructions that a computer can execute to

Lesson 01 Introduction

AP Computer Science Summer Assignment (updated 5/29/2018) DUE : Sept. 4, 2018

1 Introduction Java, the beginning Java Virtual Machine A First Program BlueJ Raspberry Pi...

CISC 3115 TY3. C21a: Recursion. Hui Chen Department of Computer & Information Science CUNY Brooklyn College. 11/6/2018 CUNY Brooklyn College

Get JAVA. I will just tell you what I did (on January 10, 2017). I went to:

Transcription:

CISC 3120 C02: Overview of Software Development and Java Hui Chen Department of Computer & Information Science CUNY Brooklyn College 08/31/2017 CUNY Brooklyn College 1

Outline Recap and issues Brief introduction to software development process Brief introduction to history of Java Writing simple Java program (from command line) Review concepts of class, object Text-based application user interface Assignments 08/31/2017 CUNY Brooklyn College 2

How well am I doing? Check CUNY Blackboard Updated every class to September 14 Peer and random inspections after September 14 08/31/2017 CUNY Brooklyn College 3

Attendance A: you arrived on time and signed attendance sheet N: you missed the class L: you signed attendance sheet, but were late X: you were excused with support legitimate documentation 08/31/2017 CUNY Brooklyn College 4

Individual Assignment Practice W01-1_08-31 Individual assignment A: Accepted U: Unaccepted, not submitted, or not submitted on time. 08/31/2017 CUNY Brooklyn College 5

Practice W01-1_08-31 What shows up in Github classroom? Feedback method Created issues in Github Any problems? Issue type 1: Accepted assignment, but did nothing. I don t even know who you are (unaccepted) Issue type 2: The content of your file is wrong (unaccepted) Issue type 3: You did not create the folder for the assignment (accepted, however, may not in the future) 08/31/2017 CUNY Brooklyn College 6

Group Assignment Project 0 Group assignment Letter grade A: may not be perfect, but I am very happy with what you team did. B: at least two members completed something. C: at least one member completed something. F: nothing is done. 08/31/2017 CUNY Brooklyn College 7

Project 0 What shows up in Github classroom? Feedback method Created issues in Github Any problems? Issue type 1: some members did not join the team in Github Issue type 2: some members joined, but did not make contribution 08/31/2017 CUNY Brooklyn College 8

Questions? Attendance Practice assignment Team Assignment Github issues 08/31/2017 CUNY Brooklyn College 9

Suggestion Use Github Issue Tracking in your assignments Practice assignment: manage your own to-do, bugs, and other items Team project: manage to-do, bugs, other items; delegate tasks to members Communicate effectively with the instructor and the fellow team members 08/31/2017 CUNY Brooklyn College 10

Communicate Effectively Follow Stack Overflow, https://stackoverflow.com/help/how-to-ask 08/31/2017 CUNY Brooklyn College 11

Develop Software Applications Apply engineering principles and scientific techniques to software development Software engineering 08/31/2017 CUNY Brooklyn College 12

Main Parties in Software Development Two main parties: customers, designers Real word scenarios can be more complicated about who the customers and designers are 08/31/2017 CUNY Brooklyn College 13

Software Life Cycle Main activities Requirement analysis Architectural specification Detailed specification Implementation and unit testing Integration and testing Operation and maintenance 08/31/2017 CUNY Brooklyn College 14

Waterfall Model Requirements specification Architectural design Detailed design Implementation & unit testing Integration & testing Operation & maintenance 08/31/2017 CUNY Brooklyn College 15

Lots of Documentation 08/31/2017 CUNY Brooklyn College 16

Software Development Process Waterfall vs. Spiral vs. Agile 08/31/2017 CUNY Brooklyn College 17

Validation and Verification Validation Are we building the right product? Verification Are we building the product right? Testing 08/31/2017 CUNY Brooklyn College 18

In CISC 3120 Projects The instructor is your customer You and your team members are the designers You deliver a verified product to the customer How does the software life cycle fit in? Learn to design and develop applications in Java 08/31/2017 CUNY Brooklyn College 19

Java An Object-Oriented Programming language after C++ Designed for devices, later for the Web Write once, run anywhere Java Virtual Machine (JVM) 08/31/2017 CUNY Brooklyn College 20

Writing Java Programs Create Java source code Use a text editor (e.g., notepad) or an IDE (e.g., Eclipse) Compile Java source code to generate Java byte code Use javac to compile the Java source code Run Java byte code in Java Virtual Machine Use java to run the Java byte code program 08/31/2017 CUNY Brooklyn College 21

The Hello, World Java Program Create the HelloWorld.java file public class HelloWorld { public static void main(string[] args) { System.out.println( Hello, World ); } } 08/31/2017 CUNY Brooklyn College 22

Compile and Run Without using any IDE From the command line: Compile javac HelloWorld.java Run java HelloWorld 08/31/2017 CUNY Brooklyn College 23

The Beer Song A little big program that prints out the lyrics of the song 99 bottles of beer. 08/31/2017 CUNY Brooklyn College 24

Command Line Arguments What if I want to start at 10 beers? 08/31/2017 CUNY Brooklyn College 25

Different iteration mechanisms? 08/31/2017 CUNY Brooklyn College 26

Questions? Software development process Write your first Java programs 08/31/2017 CUNY Brooklyn College 27

Assignments Practice examples to be posted at the class website 08/31/2017 CUNY Brooklyn College 28