Transcript CS 102

Introduction to programming with Visual Basic .NET

Dr. Marty Sirkin

 This class is designed for:  Non-programmers   People interested in learning to program Potential CS majors who want to “get their feet wet”  This class requires:  No background in Computer Science  No previous programming experience

 A programming class  You will program a LOT  You will learn by doing, not reading  A lot of fun  You will be amazed by how much you will be able to do (both quickly and easily)  Do-able  If something is difficult, please just ASK. I am more than happy to help as much as you need

 Interactive. I expect people to:  Ask questions   Ask more questions Ask even more questions  Challenge my statements and assumptions Potted plants are best suited for the lobby!!

    Been a programmer since 1969 (age 8) Attended:   Caltech (BS Physics) University of Washington (MS, PhD Computer Sci) Worked for:    NASA (JPL) IBM Research Various startups Started my own firm: First Choice Software      Consulting and then product firm CRM Software CEO/CTO Ran it for 12 years Sold it in 2005

 The best way to reach me is email. I am always on email, and that is the quickest, best way to contact me. My email address is:  [email protected]

 I will make every attempt to get back to you very quickly, and almost always this will be within a couple of hours.

 This class will cover:  Computer Arithmetic       Basic computer architecture What is a program/How to design and write programs Basic flowcharts History/Why Visual Basic .Net

Visual programming, and how it is different than imperative programming Visual programming

 Class Meetings  Wed/Fri: 1:00 – 2:15  Office hours  Mon: 12:00 – 1:00   Duffy 012 Or email me to set up a time!

 What I expect from you in class is pretty simple:  Respectful of each other and yourselves   Be prepared (reading assignments) Try hard  What you can expect from me:  My attention   My respect My best effort, no matter how much effort it takes

  Homework   Reading each week Written assignments  Help understand the concepts Programming  Trying out what we’ve discussed in lecture  Project     Will be programming Will build on weekly assignments Goal is for you to feel pumped by what you’ve completed, in very little time Details to be handed out early in semester

   Midterm and Final Insuring that you’ve learned the core concepts If you are up on assignments/project, they should be EASY

Item

Weekly Homework Midterm Exam Final Project Final Exam

Percent of Grade

40% 10% 30% 20%

     My goal is to teach you I want you to learn, get excited about programming, and continue with it past this class Grades are far more important to students than they are to me I will award liberal extra credit for students who go way above and beyond It is trivial (in programming) to do more and better with your programs.

  Written assignments handed in at class  If you won’t be at class, email me in advance to make arrangements Programming assignments can be emailed to me  Details to be explained when assignments are handed out

 To repeat: I want to make sure that you succeed. I am more than happy to help you as much as you need until you do succeed. But the onus is on you – you must ASK for help.

       Object Oriented programming Visual Studio  What it does for you  Tour/features Data types Debugging your programs Event-driven programming Controls overview Input/output methods

         Control structures (if/then, others) Loops User-defined procedures/functions File input/output Multiple forms, manipulating forms More with arrays Interacting with databases (time permitting) Web programming (time permitting) Graphics (time permitting)

 There is a class web site. It is located at: http://web.stonehill.edu/compsci/cs102  The site contains the .ppt files of class lectures, assignments, and useful links.

 If you have any issues with the website, please let me know!

 … of this course you will be able to:  Write sophisticated Visual Basic programs     Write fairly sophisticated graphical interfaces Be able to debug programs you write in a scientific, efficient fashion Move on to the next logical step of Visual Basic .NET programming:   Services Custom assemblies Move on to other programming languages, including Java or C#

Time for a demo of the class final project…

   I live for trivia. I will typically ask trivia questions at the end of each homework assignment Trivia is optional, and is intended for fun From time to time, some of the trivia questions will be worth (small amounts) of extra credit  If you’ve got a great trivia question for me, please do send it in!