CSE3302 Programming Languages (things to say)

Slides:



Advertisements
Similar presentations
Introduction to Object Orientation System Analysis and Design
Advertisements

Agenda Definitions Evolution of Programming Languages and Personal Computers The C Language.
Programming Paradigms and languages
Programming Languages and Paradigms
Unit 6 Assignment 2 Chris Boardley.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Classes & Objects Computer Science I Last updated 9/30/10.
Introduction To System Analysis and Design
CSE 300: Software Reliability Engineering Topics covered: Software Reliability Models.
Outline Chapter 1 Hardware, Software, Programming, Web surfing, … Chapter Goals –Describe the layers of a computer system –Describe the concept.
Object-oriented design CS 345 September 20,2002. Unavoidable Complexity Many software systems are very complex: –Many developers –Ongoing lifespan –Large.
Topic: Methodology of English Language Teaching in Middle Schools General objectives: 1.Students will be able to tell the reasons of taking up the course.
Software design and development Marcus Hunt. Application and limits of procedural programming Procedural programming is a powerful language, typically.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
1/19 Component Design On-demand Learning Series Software Engineering of Web Application - Principles of Good Component Design Hunan University, Software.
Object Oriented Concepts & Principles Ingrid Kirschning & Gerardo Ayala.
CSC3315 (Spring 2009)1 CSC 3315 Programming Languages Hamid Harroud School of Science and Engineering, Akhawayn University
Introduction To System Analysis and Design
AOP-1 Aspect Oriented Programming. AOP-2 Aspects of AOP and Related Tools Limitation of OO Separation of Concerns Aspect Oriented programming AspectJ.
School of something FACULTY OF OTHER Facing Complexity Using AAC in Human User Interface Design Lisa-Dionne Morris School of Mechanical Engineering
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
Modeling as a Design Technique Chapter 2 Part 1: Modeling Concepts Object-Oriented Modeling and Design Byung-Hyun Ha
Ch Ch jcmt CSE 3302 Programming Languages CSE3302 Programming Languages (notes, notes, notes) Dr. Carter Tiernan.
Computer Science and Software Engineering© 2014 Project Lead The Way, Inc. Procedural Abstraction Object-Oriented Code.
Software Engineering Emphasis for Engineering Computing Courses William Hankley Computing & Information Sciences Kansas State University.
9-Dec Dec-15  INTRODUCTION.  FEATURES OF OOP.  ORGANIZATION OF DATA & FUNCTION IN OOP.  OOP’S DESIGN.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
By: Nelson Webster. Algorithm Engineers Algorithm engineers study the effectiveness and efficiency of procedures of solving problems on a computer.
CSE 2341 Object Oriented Programming with C++ Note Set #4
Application Analysis. Application Interaction Model The purpose of analysis is to understand the problem so.
V7 Foundation Series Vignette Education Services.
Topic 4: Distributed Objects Dr. Ayman Srour Faculty of Applied Engineering and Urban Planning University of Palestine.
1 Chapter 13: Class Diagram Chapter 19 in Applying UML and Patterns Book.
Module: Software Engineering of Web Applications Dr. Samer Odeh Hanna 1.
Object Oriented Programming Some Interesting Genes.
CSE3302 Programming Languages (notes continued)
Module: Software Engineering of Web Applications
Introduction to the Unified Modeling Language
Object-Oriented Database Management System (ODBMS)
CPSC 873 John D. McGregor GQM.
1.1 Reasons to study concepts of PLs
University of Central Florida COP 3330 Object Oriented Programming
Procedural Abstraction Object-Oriented Code
CS 3304 Comparative Languages Fall 2011
Names, Binding, and Scope
MANAGING DATA RESOURCES
Module: Software Engineering of Web Applications
Verification and Validation Unit Testing
CSE3302 Programming Languages (new notes)
Final Review In Text: Chapters 1-11,
Software Engineering Lecture #9.
Software Engineering Lecture #45
COP4020 Programming Language Concepts Dr. Manuel E. Bermudez
Lecture 07: Data Representation (V)
Introduction to the Unified Modeling Language
Software Engineering INTRODUCTION
CS 3304 Comparative Languages Fall 2011
Jigar.B.Katariya (08291A0531) E.Mahesh (08291A0542)
CSE 341 Programming Languages Autumn 2002
Final Review In Text: Chapters 1-3, 5-16.
High Level Programming Languages
Writing an Engineering Report (Formal Reports)
Module: Software Engineering of Web Applications
Behavioral Modeling with UML
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Paradigms and paradigm shifts
Object Oriented Programming (OOP)- Assist. Prof. Dr
Chapter 3 Discussion Pages
Presentation transcript:

CSE3302 Programming Languages (things to say) Dr. Carter Tiernan Programming Languages

Programming Language Paradigms A programming paradigm is a paradigmatic style of programming (compare with a methodology which is a paradigmatic style of doing software engineering). A programming paradigm provides (and determines) the view that the programmer has of the execution of the program. The relationship between programming paradigms and programming languages can be complex since a programming language can support multiple paradigms. Programming Languages

Analysis of Paradigms Name structures Data structures Control structures Programming Languages

Paradigms Procedural Object-oriented Functional Logic What differentiates these paradigms? Programming Languages

Paradigm Definitions Focusing on actions in a program with control handled through subprograms elements of a system to be modeled and the behaviors of those elements application of functions with little distinction between program and data defining the program logic and not explicitly handling program control Programming Languages

Issues with Paradigms One language = one paradigm? “Programming” vs. “Computer” language? Languages that don’t ‘fit’ in the four paradigms discussed Programming Languages

Other Paradigms (?) Programming Languages

Paradigm questions Why have different language paradigms developed? Which comes first - a new language or a new paradigm? How does a paradigm help us? Programming Languages

CSE3302 Questions Why do we have you study languages? (Have you learned anything that might be useful?) Should we make a distinction between “programming” and “computer”languages as MacLennan does? Should we teach both? Using the language structure? Programming Languages

CSE3302 Questions “concepts” approach versus the “comparison” approach (MacLennan) Would you prefer the concepts approach? Would it be easier or harder to compare languages? Topics that could be added to CSE3302? In other schools, PL covers the material is a different fashion - discussing languages by concepts; name structures including binding, scoping (static and dynamic), etc. then data structures and so on. This is typically illustrated with a small number of programming languages This approach could be categorized as the “concepts” approach versus the “comparison” approach used in our book. Programming Languages