jagomart
digital resources
picture1_Programming Paradigms Pdf 186686 | Lecture08


 154x       Filetype PDF       File size 0.02 MB       Source: personalpages.bradley.edu


File: Programming Paradigms Pdf 186686 | Lecture08
problem solving via programs a computer is a tool that solves problems by means of programs written in pls programming paradigms styles a typical program development process requirement analysis specification ...

icon picture PDF Filetype PDF | Posted on 02 Feb 2023 | 2 years ago
Partial capture of text on file.
                                                                                                            Problem Solving via Programs
                                                                                                      • A computer is a tool that solves problems by 
                                                                                                         means of programs written in PLs.
                            Programming Paradigms (Styles)                                            • A typical program development process:
                                                                                                         – Requirement analysis (specification)
                                                                                                         – Design a solution
                                                                                                         – Implement as programs in a PL
                                                                                                         – Verification/validation
                          CS216                                                  1                      CS216                                                  2
                                 Paradigms and Programs                                                          What Is a Programming 
                                                                                                                           Paradigm?
                                                                                                      • A collection of conceptual patterns that 
                                             Problems                                                    together mold the program design process and 
                          Paradigms                        Design a solution                             ultimately determine a program’s structure.
                                              Solutions                                                  – How we think about and formulate solutions
                             PLs                           Implement as programs                         – The form of programs
                                              Programs     in a PL
                                              Computer
                          CS216                                                  3                      CS216                                                  4
                           Programming Paradigms and PLs                                                        Programming Paradigms
                        • Relationship between PPs and PLs:                                           • Operational Approach
                           – Once we visualize a solution via a paradigm’s                               – Describes step-by-step how to construct a solution.
                             conceptual pattern, we express it in a PL                                • Definitional (Declarative) Approach
                           – A PL that reflects a particular paradigm well, this                         – States properties about the solution. 
                             PL is said to support that paradigm                                      • Demonstrational Approach
                        • Does a PL support only one paradigm ?                                          – Demonstrates solutions (examples) to specific 
                           – No, typically it supports one paradigm very well.                              instances of simple problems.
                          CS216                                                  5                      CS216                                                  6
                                                                                                                                                                                1
                                  Programming Paradigms                                                           Imperative Programming 
                                                                                                                              Paradigms
                        • Operational Approach                                                          • Characterized by an abstract model of a 
                            – Imperative (Procedural) Programming                                          computer that consists of a single large global 
                            – Object-Oriented Programming                                                  store.
                        • Definitional (Declarative) Approach (Paradigms)                               • The computer stores an encoded representation 
                            – Functional Programming                                                       of a computation and executes a sequence of 
                            – Logic Programming                                                            command or expressions that modifies the 
                        • Demonstrational Approach (Paradigms)                                             store.
                            – Program by example                                                        • Best represented by Von-Neumann style 
                            – Visual Programming                                                           computer.
                           CS216                                                   7                       CS216                                                   8
                            Imperative (Procedure-Oriented)                                                   Object-Oriented Programming 
                                               Thinking                                                                       Paradigms
                        • How to do IP?                                                                 • In IP, each procedure/function deals with the 
                            – Determine what data values will be required.                                 concrete representation of data values in a 
                            – Represent these data values by associating them                              single global store.
                              with storage locations.                                                   • In OOP, each procedure/function operates on 
                            – Derive a step-by-step sequence of transformation to                          abstract values, rather than on stored 
                              the store.                                                                   representation.
                            – The final state represents the result values                                  – Objects
                              (solution).
                           CS216                                                   9                       CS216                                                  10
                             Imperative vs. Object-Oriented                                                       Object-Oriented Thinking
                                            Programming
                                    P/F                                                                 • How to do OOP ?
                                                                                                            – Define suitable objects for the problem.
                                                                                                            – Use these objects to describe step-by-step sequence 
                                                                          Grouping                            of operations.
                                 Global
                                  store
                                   IP                         OOP
                           CS216                                                  11                       CS216                                                  12
                                                                                                                                                                                    2
                                 Functional Programming                                                     Function-Oriented Thinking
                                            Paradigms
                       • Based on the mathematical model of functions                               • How to do FP ?
                          and function composition.                                                     – Define functions (using function composition)
                           – No concepts of a storage location that can be                              – Use a function application
                             assigned or modified. (no variables, no commands)
                       • Referentially transparent
                           – Easier to understand program
                       • Functions treated as first class values
                           – No restriction of use
                          CS216                                                13                      CS216                                                14
                            Logic Programming Paradigms                                                       Logic-Oriented Thinking
                       • Based on the mathematical model of facts and                               • How to do LP ?
                          rules that allow deduction of other facts.                                    – Define facts
                           – A logic program = facts + rules                                            – Define rules
                                                                                                        – Use a query
                          CS216                                                15                      CS216                                                16
                          Parallel/Concurrent Programming                                              Parallel/Concurrent Programming
                                            Paradigms
                       • Cooperating parallel process                                               • How to use P/C P?
                           – asynchronous                                                               – Automatically detect parallelism in a sequential 
                       • Single process applied to many data                                              pgm.
                           – synchronous                                                                – Add mechanisms that describe parallelism..
                          CS216                                                17                      CS216                                                18
                                                                                                                                                                             3
                                  Programming Paradigms
                                              Programming Paradigm
                            Operational           Definitional     Demonstrational
                           IP       OOP            FP      LP           EP
                                            Parallel/Concurrent Paradigm
                          CS216                                                  19
                                                                                                                                                                                 4
The words contained in this file might help you see if this file matches what you are looking for:

...Problem solving via programs a computer is tool that solves problems by means of written in pls programming paradigms styles typical program development process requirement analysis specification design solution implement as pl verification validation cs and what paradigm collection conceptual patterns together mold the ultimately determine s structure solutions how we think about formulate form relationship between pps operational approach once visualize describes step to construct pattern express it definitional declarative reflects particular well this states properties said support demonstrational does only one demonstrates examples specific no typically supports very instances simple imperative characterized an abstract model procedural consists single large global object oriented store stores encoded representation functional computation executes sequence logic command or expressions modifies example best represented von neumann style visual procedure thinking do ip each function...

no reviews yet
Please Login to review.