COMP6411. Comparative study of programming languages. (Part 2) презентация
Содержание
- 2. Learning Objectives Learn about different programming paradigms Concepts and particularities Advantages
- 3. Introduction A programming paradigm is a fundamental style of computer programming.
- 4. Introduction Some languages are designed to support one particular paradigm
- 5. Introduction A programming paradigm can be understood as an abstraction of
- 6. PROCESSING PARADIGMS
- 7. Processing Paradigms A programming paradigm can be understood as an abstraction
- 8. Processing Paradigms When programming computers or systems with many processors, parallel
- 9. Processing Paradigms Specialized programming languages have been designed for parallel/concurrent computing.
- 10. PROGRAMMING PARADIGMS
- 11. LOW-LEVEL PROGRAMMING PARADIGM
- 12. Low level Initially, computers were hard-wired or soft-wired and then
- 13. Low level To make programming easier, assembly languages were developed. These
- 14. Low level Assembly was, and still is, used for time-critical systems
- 15. PROCEDURAL PROGRAMMING PARADIGM
- 16. Procedural programming Often thought as a synonym for imperative programming. Specifying
- 17. Procedural programming Possible benefits: Often a better choice than simple
- 18. Procedural programming Scoping is another abstraction technique that helps to keep
- 19. Procedural programming The focus of procedural programming is to break down
- 20. Procedural programming The earliest imperative languages were the machine languages of
- 21. OBJECT-ORIENTED PROGRAMMING PARADIGM
- 22. Object-oriented programming Object-oriented programming (OOP) is a programming paradigm that uses
- 23. OOP concepts: class A class defines the abstract characteristics of a
- 24. OOP concepts: object An object is an individual of a class
- 25. OOP concepts: attributes An attribute, also called data member or member
- 26. OOP concepts: method A method is a subroutine that is exclusively
- 27. OOP concepts: method instance methods are associated with an object class
- 28. OOP concepts: method The difference between procedures in general and an
- 29. OOP concepts: inheritance Inheritance is a way to compartmentalize and reuse
- 30. OOP concepts: abstraction Abstraction is simplifying complex reality by modeling classes
- 31. OOP concepts: encapsulation and information hiding Encapsulation refers to the bundling
- 32. OOP concepts: encapsulation and information hiding Members are often specified as
- 33. OOP concepts: polymorphism Polymorphism is the ability of objects belonging to
- 34. OOP concepts: polymorphism A method or operator can be abstractly applied
- 35. OOP concepts: polymorphism Many OOP languages also support parametric polymorphism, where
- 36. OOP: Languages Simula (1967) is generally accepted as the first language
- 37. OOP: Languages Concerning the degree of object orientation, following distinction can
- 38. OOP: Variations There are different ways to view/implement/instantiate objects: Prototype-based
- 39. OOP: Variations object-based objects + classes - inheritance classes
- 40. OOP: Variations object-oriented objects + classes + inheritance + polymorphism
- 41. DECLARATIVE PROGRAMMING PARADIGM
- 42. Declarative Programming General programming paradigm in which programs express the logic
- 43. FUNCTIONAL PROGRAMMING PARADIGM
- 44. Functional Programming Functional programming is a programming paradigm that treats computation
- 45. Functional Programming: History Functional programming has its roots in the lambda
- 46. Functional Programming: History In the 1970s the ML programming language was
- 47. Functional Programming Functional programming languages, especially purely functional ones, have largely
- 48. Functional Programming In practice, the difference between a mathematical function and
- 49. Functional Programming: Higher-Order Functions Most functional programming languages use higher-order functions,
- 50. Functional Programming: Pure Functions Purely functional functions (or expressions) have no
- 51. Functional Programming: Pure Functions If the entire language does not allow
- 52. Functional Programming: Recursion Iteration in functional languages is usually accomplished via
- 53. Functional Programming: Eager vs. Lazy Evaluation Functional languages can be categorized
- 54. Functional Programming: Type Inference Especially since the development of Hindley–Milner type
- 55. Functional Programming: In Non-functional Languages It is possible to employ
- 56. REFLECTIVE PROGRAMMING PARADIGM
- 57. Reflective Programming Reflection is the process by which a computer program
- 58. Reflective Programming Reflection-oriented programming includes self-examination, self-modification, and self-replication. Ultimately,
- 59. Reflective Programming Reflection can be used for observing and/or modifying program
- 60. Reflective Programming A language supporting reflection provides a number of features
- 61. Reflective Programming Compiled languages rely on their runtime system to provide
- 62. SCRIPTING PROGRAMMING PARADIGM
- 63. Scripting Languages A scripting language, historically, was a language that allowed
- 64. Scripting Languages Historically, there was a clear distinction between "real" high
- 65. Scripting Languages: Types of Scripting Languages Job control languages and
- 66. Scripting Languages: Types of Scripting Languages GUI scripting With
- 67. Scripting Languages: Types of Scripting Languages Application-specific scripting languages
- 68. Scripting Languages: Types of Scripting Languages Web scripting languages (server-side,
- 69. Scripting Languages: Types of Scripting Languages Client-side scripts are often embedded
- 70. Scripting Languages: Types of Scripting Languages Client-side scripts have greater access
- 71. ASPECT-ORIENTED PROGRAMMING PARADIGM
- 72. Aspect-Oriented Programming Aspect-oriented programming entails breaking down program logic into distinct
- 73. Aspect-Oriented Programming All programming paradigms support some level of grouping and
- 74. Aspect-Oriented Programming: Terminology Cross-cutting concerns: Even though most classes in an
- 75. Aspect-Oriented Programming To sum-up, an aspect can alter the behavior of
- 76. Aspect-Oriented Programming: Implementation Most implementations produce programs through a process known
- 77. Aspect-Oriented Programming
- 78. Aspect-Oriented Programming
- 79. Aspect-Oriented Programming: History AOP as such has a number of antecedents:
- 80. Aspect-Oriented Programming: Motivation Typically, an aspect is scattered or tangled as
- 81. Aspect-Oriented Programming: Join Point Model The advice-related component of an aspect-oriented
- 82. Aspect-Oriented Programming: Implementation Java's well-defined binary form enables bytecode weavers
- 83. Aspect-Oriented Programming: Problems Programmers need to be able to read code
- 84. Aspect-Oriented Programming: Implementations The following programming languages have implemented AOP, within
- 85. REFERENCES
- 86. References John von Neumann. First Draft Report on the EDVAC, 1945.
- 87. Скачать презентацию






















































































Слайды и текст этой презентации
Скачать презентацию на тему COMP6411. Comparative study of programming languages. (Part 2) можно ниже:
Похожие презентации