•  

IST Learning

Let's Learn Together

  • Home
  • Courses
    • IST Courses
      • IST 110
      • IST 140
      • IST 210
      • IST 220
      • IST 230
      • IST 234
      • IST 235
      • IST 237
      • IST 240
      • IST 242
      • IST 250
      • IST 256
      • IST 261
      • IST 301
      • IST 302
      • IST 311
      • IST 331
      • IST 337
      • IST 361
      • IST 389
      • IST 402
      • IST 411
      • IST 412
      • IST 413
      • IST 420
      • IST 421
      • IST 423
      • IST 432
      • IST 437
      • IST 440W
      • IST 441
      • IST 446
      • IST 451
      • IST 452
      • IST 454
      • IST 456
      • IST 461
      • IST 489H
    • SRA Courses
      • SRA 111
      • SRA 211
      • SRA 221
      • SRA 231
      • SRA 311
      • SRA 365
      • SRA 421
      • SRA 433
      • SRA 440W
      • SRA 468
      • SRA 471
      • SRA 472
      • SRA 480
    • DS Courses
      • DS 120
      • DS 200
      • DS 220
      • DS 300
      • DS 310
      • DS 320
      • DS 330
      • DS 340W
      • DS 402
      • DS 410
      • DS 440
    • Cyber Courses
      • Cyber 100
      • Cyber 262
      • CYBER 342W
      • Cyber 362
      • CYBER 366
      • CYBER 440
    • HCDD Courses
      • HCDD 113
      • HCDD 264
      • HCDD 340
      • HCDD 364W
      • HCDD 440
    • LionPath Course Catalog
  • Resources
    • Learning Resources
    • IT Certifications
    • IST Advising Center
    • Recommended Academic Plans
    • Office of Career Solutions
    • Diversity at IST
    • Curricular Goals for Undergrads
  • New Students
    • Non-IST Course Support
    • Student Support Services
    • Technology Resources
    • The Study Cycle
    • Library Resources
    • Professional Communication
  • Tutoring
    • University Park Tutoring
    • World Campus Tutoring
    • Peer Tutoring Application
    • Meet Our Tutors
    • Peer Tutor Job Description
    • Programming Resources
  • Workshops
    • Programming Workshops
    • Noon Learning Series Workshops
    • Previous Recorded Workshops
  • LAs
    • LA Job Description
    • LA Application
    • LA Resources & Forms
    • Meet Our LAs
    • Past LAs
  • Contact Us

CORONAVIRUS UPDATES:

Tutoring remains open for students in College of IST courses—see the tutoring tab for details. The College is accepting LA applications for Spring 2021—see the Learning Assistant tab for details. Keep up with Penn State's Keep Learning site for remote instruction along with College resources. Penn State also has a general page on information about the global coronavirus outbreak.

IST 242


Intermediate & Object-Oriented Application Development


Sample Syllabi
  • IST 242 World Campus
  • IST 242 SP17 Fonseca
Course Materials
  • University Bulletin
Course Connections

Prerequisites

  • CMPSC 121 or IST 140 or IST 240

Follow-Ons

  • IST 261
  • IST 311
  • IST 331
  • IST 420

Course Composition and Objectives

  • Understand the basic rationale and approaches for object-oriented application development and how to apply this to the development of object-oriented applications.
    • How classes and objects can be used to represent real world problem spaces, including the abstractions of methods, attributes, encapsulation and information hiding and the separation of behavior and implementation
    • How to implement object-oriented abstractions, including the use of constructors and destructors, automated garbage collection, and choices among inheritance and hierarchies, when to override methods, using polymorphism, and the role of abstract classes and their methods
    • Working with other resources in object-oriented application development, including external Application Program Interfaces (APIs), namespaces and packages, and techniques for input and output using external files
  • Problem-solving in real world application contexts that require algorithms of an intermediate complexity
    • Understanding how to assess speed, complexity and scalability for an algorithm and the implications of these characteristics for different application contexts
    • Based on these characteristics, choosing among and implementing different algorithms
  • Problem-solving in real world application contexts that require a range of useful data structures
    • Understanding and evaluating the tradeoffs and implications of different data structures
    • Choosing and implementing standard useful data structures, including multi-dimensional arrays, stacks, lists, queues, linked structures and the more general Collection hierarchy
    • Using internal data structures to map and interact with external files
  • Problem-solving in real world application contexts that require event-driven applications
    • Motivating the role of event handing as an central application development technique
    • Understanding the importance of defensive approaches to event-driven application design and development, including exception handling
    • Implementing event-driven application development for systems supporting human-computer interaction
  • Understanding the role of debugging, testing and quality assurance in real world application development settings
    • Analyzing tradeoffs in quality assurance activities, including when and how to integrate testing within a development timeline, choosing between black box versus white box testing, and considering the specific requirements of user interactive systems
    • Using state-of-the-art tools and procedures for testing and debugging a real world application
  • Instructors Choice: Instructors may choose topics and learning objectives that meet the spirit of the course as defined here. Instructors may choose to devote more time to the learning objectives listed above or to add additional, complimentary objectives. Supplementary material and objectives should not overlap with the defined content of other courses in the curriculum.

Course Description

This is a second course in application development. It will focus on the intermediate knowledge needed to create applications that use high level programming languages, combining original code with existing code libraries and application programming interfaces (APIs). The perspective will be of application development that takes place within a human and organizational context; in this sense data structures will be construed as representations of organizational entities and information, and algorithms as a reflection of human and organizational processes and activity. Students will also learn about common application architectures and design patterns. This is a hands-on, practical course designed for IST design and development option undergraduate students and others as an elective.

IST Courses

  • IST 110
  • IST 140
  • IST 210
  • IST 220
  • IST 230
  • IST 234
  • IST 235
  • IST 237
  • IST 240
  • IST 242
  • IST 250
  • IST 256
  • IST 261
  • IST 301
  • IST 302
  • IST 311
  • IST 331
  • IST 337
  • IST 361
  • IST 389
  • IST 402
  • IST 411
  • IST 412
  • IST 413
  • IST 420
  • IST 421
  • IST 423
  • IST 432
  • IST 437
  • IST 440W
  • IST 441
  • IST 446
  • IST 451
  • IST 452
  • IST 454
  • IST 456
  • IST 461
  • IST 489H

SRA Courses

  • SRA 111
  • SRA 211
  • SRA 221
  • SRA 231
  • SRA 311
  • SRA 365
  • SRA 421
  • SRA 433
  • SRA 440W
  • SRA 468
  • SRA 471
  • SRA 472
  • SRA 480

DS Courses

  • DS 120
  • DS 200
  • DS 220
  • DS 300
  • DS 310
  • DS 320
  • DS 330
  • DS 340W
  • DS 402
  • DS 410
  • DS 440

HCDD Courses

  • HCDD 113
  • HCDD 264
  • HCDD 340
  • HCDD 364W
  • HCDD 440

CYBER Courses

  • Cyber 100
  • Cyber 262
  • CYBER 342W
  • Cyber 362
  • CYBER 366
  • CYBER 440

Learning in IST


E101 Westgate Building
(814) 865-8947
learning@ist.psu.edu

Student Support Services

  • Learning Resources
  • College of IST Tutoring Sessions for University Park Students
  • IST Advising Center
  • Recommended Academic Plans
  • Office of Career Solutions
  • Diversity at IST
  • Curricular Goals for Undergrads

Learning Assistants

  • LA Introduction
  • LA Job Description
  • LA Application
  • LA Resources & Forms
  • Meet Our LAs
    • Past LAs

Questions?

  • Contact Us

IST Courses

  • IST 110
  • IST 140
  • IST 210
  • IST 220
  • IST 230
  • IST 234
  • IST 235
  • IST 237
  • IST 240
  • IST 242
  • IST 250
  • IST 256
  • IST 261
  • IST 301
  • IST 302
  • IST 311
  • IST 331
  • IST 337
  • IST 361
  • IST 389
  • IST 402
  • IST 411
  • IST 412
  • IST 413
  • IST 420
  • IST 421
  • IST 423
  • IST 432
  • IST 437
  • IST 440W
  • IST 441
  • IST 446
  • IST 451
  • IST 452
  • IST 454
  • IST 456
  • IST 461
  • IST 489H

SRA Courses

  • SRA 111
  • SRA 211
  • SRA 221
  • SRA 231
  • SRA 311
  • SRA 365
  • SRA 421
  • SRA 433
  • SRA 440W
  • SRA 468
  • SRA 471
  • SRA 472
  • SRA 480

DS Courses

  • DS 120
  • DS 200
  • DS 220
  • DS 300
  • DS 310
  • DS 320
  • DS 330
  • DS 340W
  • DS 402
  • DS 410
  • DS 440

CYBER Courses

  • Cyber 100
  • Cyber 262
  • CYBER 342W
  • Cyber 362
  • CYBER 366
  • CYBER 440

HCDD Courses

  • HCDD 113
  • HCDD 264
  • HCDD 340
  • HCDD 364W
  • HCDD 440
  • Privacy
  • Non-Discrimination
  • Equal Opportunity
  • Accessibility
  • Legal

Copyright © 2021 · Education Pro Theme on Genesis Framework · WordPress · Log in