– Elements of Visual CS320n Programming Course Introduction

advertisement
CS320n – Elements of Visual
Programming
Course Introduction
Mike Scott
Who Am I
•
•
•
•
•
Lecturer in CS department since 2000
Undergrad Stanford, MSCS RPI
US Navy for 8 years, submarines
2 years Round Rock High School
Wife (Kelly) is a nurse. 2 daughters, Olivia
and Isabelle
Visual Programming
Course Introduction
2
What We Will Do Today
• Discuss course content, syllabus, and tools
• demos of course software
Visual Programming
Course Introduction
3
Administrative Information
• class web site:
www.cs.utexas.edu/~scottm/cs320n
Visual Programming
Course Introduction
4
What Will We Do in CS320n
• Have Fun?!?!
• Learn to write computer programs using
Alice and LabVIEW
• Okay if you “Never ever-ed.”
Visual Programming
Course Introduction
5
How This Class Will Work
• In class
– lecture and lab work
– demos
– answers your questions
• Outside of class
– exercises (not graded)
– reading
– assignments
Visual Programming
Course Introduction
6
Grading
• Homework Projects ~ 50%
–
–
–
–
–
–
6 Alice projects
3 LabVIEW projects
Point value varies per project
some done as individuals, some as pairs
in class presentations of 2 projects
projects are to be your own work! Copying or having
someone else do them is academic dishonesty and
will result in an F in the course
• Attendance and Class work, ~ 10%
• Midterm ~ 20%
• Final ~ 20%, last week of class
Visual Programming
Course Introduction
7
Books
• Learning to Program with
Alice, Second Edition.
• ISBN 10: 013208516X,
ISBN 13: 978-0132085168
• Publisher: Prentice Hall
Visual Programming
Course Introduction
8
Homework Procedures
• Your must obtain an account for the CS
department Elements Lab
• Visit this website to request account
• http://www.cs.utexas.edu/facilities/computing/
– takes at least a day for account to become active.
– do this today, please!
• account allows you to use computers in CS
Microlab in Painter Hall and to turn in programs
to an account on Elements lab server
– software used in course is available and FREE, so
you can work at home if you prefer
Visual Programming
Course Introduction
9
What is Visual Programming?
• What is a computer program?
– Do you use many programs?
– Have you ever written a program?
• What skills are necessary for
programming?
Visual Programming
Course Introduction
10
Programming and Computing
• NY Times Article by Steve Lohr
• http://www.nytimes.com/2005/08/23/technol
ogy/23geeks.html
• Jamika Burge, a computer grad student at Virginia Tech, logging video
of conflict negotiations during her internship at I.B.M. in San Jose.
Visual Programming
Course Introduction
11
Text Based Programming
private String[] getWordList()
{
Scanner s;
String temp;
JFileChooser chooser = new JFileChooser();
TreeSet<String> words = new TreeSet<String>();
//open the file chooser and get a file
int retval = chooser.showOpenDialog(null);
chooser.grabFocus();
if (retval == JFileChooser.APPROVE_OPTION)
{
File source = chooser.getSelectedFile();
try
{
s = new Scanner( source );
while( s.hasNext() )
{
temp = s.next();
if( temp != null && temp.length() == WORD_SIZE )
{
words.add( temp );
}
}
s.close();
}
}
catch(IOException e)
{
System.out.println("An error occured while trying “ +
“to read from the file: " + e);
}
return words.toArray(new String[words.size()]);
}
Visual Programming
Course Introduction
12
Eww!!
Visual Programming
Course Introduction
13
Visual Programming
• Use of a graphical interface to create the
program instead of text
– easier with simple programs
– less likely to make mistakes
– Visual Basic, Visual C#, Visual C++
• visual tool for creating graphical user interface
(GUI), but lots of text based programming still
required
• IEEE has an annual conference on Visual
Languages/Human Centric Computing (VL/HCC)
Visual Programming
Course Introduction
14
Visual Programming
• Lots of true Visual Languages
– VIPR, Self, Pygmalion, Prograph and many,
many more
– not a lot of commercial successes
• Exception: LabVIEW
• An educational language and tool called
Alice
Visual Programming
Course Introduction
15
An Alice Program
Visual Programming
Course Introduction
16
LabVIEW Program
Visual Programming
Course Introduction
17
Demos
Visual Programming
Course Introduction
18
Download