Module 7
High-Level Programming, Platform-based Development / JavaScript Intro
Outline Chapter 8
Chapter 8 Abstract Data Types and Subprograms
8.1 What Is an Abstract Data Type?
8.2 Stacks
8.3 Queues
8.4 Lists
8.5 Trees
Binary Trees
Binary Search Trees
Other Operations
8.6 Graphs
Creating a Graph
Graph Algorithms
8.7 Subprograms
Parameter Passing
Value and Reference Parameters
Ethical Issues: Workplace Monitoring
Related FGCU Courses
http://icarus.fgcu.edu:8080/CourseDescriptions/
COP 2006 Introduction to Programming
SE & CIS Requirement
Introductory computer programming concepts and problem solving skills are learned using a modern programming language. Principles of good programming style are emphasized.
ISM 3053 Mobile App Development
DEVELOP INTERACTIVE CROSS-PLATFORM APPS THAT USES DATA INPUT TO DO SIGNIFICANT COMPUTING.
Lesson
Day One
Chapter questions review
Data type - The description of a set of values and the basic set of operations that can be applied to values.
Abstract data type (ADT) - a container whose properties (data and operations) are specified independently of any particular implementation
Stacks - lab question walkthrough
Queues - lab question walkthrough
Lists - lab question walkthrough
Trees
Binary Trees
Binary Search Trees
Other Operations
Creating a Graph
Arrays
Subscripts / Index numbers
Day Two
Subprograms
Concepts
Benefits
Parameter Passing - JavaScript example
Algorithm review - find max
Value and Reference Parameters - JavaScript example
Parameter Passing
Value and Reference Parameters
Java - Eclipse
Android - Android Studio, IntelliJ IDEA
C# - Visual Studio
iOS - Xcode
Project Review
Web site creation
Awards
To do list
Project Preview
JS Introduction
w3schools
JS HOME - Functions, Numbers, Number Methods, Arrays, Let, Const
declaring
initializing
jsFiddle for HTML and CSS
Hello World HTML
Hello World JS alert
Programming Languages (PL)
Programming languages are the medium through which programmers precisely describe concepts, formulate algorithms, and reason about solutions. In the course of a career, a computer scientist will work with many different languages, separately or together. Software developers must understand the programming models underlying different languages and make informed design choices in languages supporting multiple complementary approaches. Computer scientists will often need to learn new languages and programming constructs, and must understand the principles underlying how programming language features are defined, composed, and implemented. The effective use of programming languages, and appreciation of their limitations, also requires a basic knowledge of programming language translation and static program analysis, as well as run-time components such as memory management.
Topics:
Object-Oriented Programming
Platform-Based Development (PBD)
Platform-based development is concerned with the design and development of software applications that reside on specific software platforms. In contrast to general purpose programming, platform-based development takes into account platform-specific constraints. For instance web programming, multimedia development, mobile computing, app development, and robotics are examples of relevant platforms that provide specific services/APIs/hardware that constrain development. Such platforms are characterized by the use of specialized APIs, distinct delivery/update mechanisms, and being abstracted away from the machine level. Platform-based development may be applied over a wide breadth of ecosystems.
This knowledge unit describes the fundamental differences that Platform-Based Development has over traditional software development.
Introduction
This knowledge unit describes the fundamental differences that Platform-Based Development has over traditional software development.
Topics:
Overview of platforms (e.g., Web, Mobile, Game, Industrial)
Programming via platform-specific APIs
Overview of Platform Languages (e.g., Objective C, HTML5)
Programming under platform constraints
Learning Outcomes:
Describe how platform-based development differs from general purpose programming. [Familiarity]
List characteristics of platform languages. [Familiarity]
Write and execute a simple platform-based program. [Usage]
List the advantages and disadvantages of programming with platform constraints. [Familiarity]
Web Platforms
Topics:
Web programming languages (e.g., HTML5, Java Script, PHP, CSS)
Web platform constraints
Software as a Service (SaaS)
Web standards
Learning Outcomes:
Design and Implement a simple web application. [Usage]
Describe the constraints that the web puts on developers. [Familiarity]
Compare and contrast web programming with general purpose programming. [Assessment]
Describe the differences between Software-as-a-Service and traditional software products. [Familiarity]
Discuss how web standards impact software development. [Familiarity]
Review an existing web application against a current web standard. [Assessment]