1 / 14

Zero to Java in Internet Time

Zero to Java in Internet Time. David Davenport Computer Engineering Dept., Bilkent University, Ankara 06533 Turkey email: david@bilkent.edu.tr. Introduction. Programming classes (mandatory!) computer literacy basic programming object-oriented systems event-driven GUI’s Desire

arissa
Download Presentation

Zero to Java in Internet Time

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Zero to Java in Internet Time David Davenport Computer Engineering Dept.,Bilkent University, Ankara 06533 Turkeyemail: david@bilkent.edu.tr

  2. Introduction • Programming classes (mandatory!) • computer literacy • basic programming • object-oriented systems • event-driven GUI’s • Desire • get students up-to-speed quickly • justify by focusing on engineering skills

  3. What to Teach & Why • Engineers today should • be technically competent • be able to communicate & work in team • be confident in locating & applying knowledge • be motivated to follow tech. & continue learning • Programming as a vehicle • form of communication, done in teams • complex systems, mistakes cheap!

  4. What to teach & Why • Engineering relies on methodologies • Only apparent for large problems! • Teach • OOP first? • Structured programming first? • Which language • C/C++, Pascal/Delphi, etc. • Java (consistent OOP, complex?, Internet)

  5. Course Organisation • First semester CS101 • conventional lecture/lab (text-based progs.) • Robo & Jrobo… (concepts) • Second semester CS102 • reduced lecture/lab (GUI progs.) • Design project… (eng. skills) • Software Quest • InSites

  6. Design Projects • Semester-long group project • Group & project selection • Organisation • Four stages: requirements, GUI, detailed design, implementation • submit report, make presentation, rewrite • Use commercial IDE • Tap enthusiasm, Internet, …(don’t tell, they learn)

  7. Tools: Robo • Robo: little robot with pen… • Basic commands: f(x), r(x), l(x) & p • Interactive start… • Reflection - need a easy life! • Introduce • comments, methods, parameters... • top-down design, pre/post-conditions • Design, not experiment (right-first-time)

  8. rect(a,b) f(a) r(90) f(b) r(90) f(a) r(90) f(b) r(90) r(30) f(150)r(120) f(150)r(120) f(150) r(90) f(100)r(45)f(50) Robo Examples

  9. Tools: Robo • The Robo environment...

  10. Tools: JRobo • OOP - natural view & facilitates reuse • Examples - person, car, tv … & Robo • JRobo class & use • Adding methods & properties • Composition - wallets & cellphones • Inheritance & Polymorphism - scale & colour • The JRobo environment...

  11. f, r, l, p x,y drawheading f’ rect getDofM dofM Jrobo Examples f, r, l, p x,y drawheading f’, r, l, p rect, getDofM x,y drawheading, dofM payout recieve cash owner

  12. Tools: JRobo • The JRobo environment… (a full Java IDE) • hide syntax at beginning, enforce good practice!

  13. Concluding Remarks • Use programming to teach engineering skills • Tools help clarify concepts • Projects help develop skills • Napster & ICQ clones, physics & optics workbenches, online games, shops & dating... • Variable quality (focus more on design) • but energy, enthusiasm & work evident! • Java & Internet motivate • Extra time & effort, but worth it?

More Related