|
HD16CSE :
PRINCIPLES OF PROGRAMMING
1.
LANGUAGES DESIGN ISSUES
Why Study
Programming Languages?, A Short History of Programming
Languages – Development of Early Languages; Evolution of
Software Architectures; Application Domains, Role of
Programming Languages – What makes a Good Languages?;
Language Paradigms; Language Standardization;
Internationalization, Programming Environments – Effects on
Language Design; Environment Frameworks; Job Control and
Process Languages, C Overview, Suggestions for Further
Reading.
2.
IMPACT OF MACHINE ARCHITECTURES
Virtual
Computers and Language Implementations, Hierarchies of
Virtual Machines, Binding and Binding Time, Java Overview.
3.
ELEMENTARY DATA TYPES
Data Objects;
Variables; and Constants, Data types, Declarations, Type
Checking and Type Conversion, Assignment and Initialization,
Numerical Data Types , Enumerations, Booleans, Characters,
Character Strings, Pointers and Programmer-Constructed Data
Objects, Files and Input-Output.
4.
ENCAPSULATION
Structured Data
Objects and Data Types, Specification of Data Structure
Types, Implementation of Data Structure Types, Declaration
and Type Checking for Data Structures, Vectors and Arrays,
Records, Lists, Sets, Executable Data Objects, Evolution of
the Data Type Concept, Information Hiding, Subprograms as
Abstract Operations, Subprogram Definition and Invocation,
Subprogram Definitions as Data Objects.
5.
INHERITANCE
Abstract Data
Types Revisited, Derived Classes, Methods, Abstract Classes,
Smalltalk Overview, Objects and Messages, Abstraction
Concepts, Polymorphism.
6.
SEQUENCE CONTROL
Implicit and
Explicit Sequence Control, Sequencing with Arithmetic
Expressions – Tree-Structure Representation; Execution-Time
Representation, Sequence Control Between Statements – Basic
Statements; Structured Sequence Control; Prime Programs.
7.
SUBPROGRAM CONTROL
Simple
Call-Return Subprograms, Recursive Subprograms, The Pascal
Forward Declaration, Names and Referencing Environments,
Static and Dynamic Scope, Block Structure, Local Data and
Local Referencing Environments, Actual and Formal
Parameters, Methods for Transmitting Parameters,
Transmission Semantics, Implementation of Parameter
Transmission |