Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Computer fundamentals

218 views

Published on

Business Administration - Computer Fundamentals

Published in: Education
  • Be the first to comment

  • Be the first to like this

Computer fundamentals

  1. 1. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Affiliated Institution of G.G.S.IP.U, Delhi BBA(Gen) Computer Fundamentals (17107) BHARTI DEWANI ASSISTANT PROFESSOR, IT
  2. 2. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Generations of Programming Languages
  3. 3. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 The five generations • We generally count five "generations" of programming languages • Each generation represents technological advances • "Advances" may just reflect changing preferences
  4. 4. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 First generation • Examples: FORTRAN, COBOL, BASIC • Key concept: Language designs were based directly on available hardware • Efficiency was everything • Language names are acronyms and are typically spelled with all capital letters
  5. 5. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 1G: Primitive data types • Data types reflect types defined by the hardware • Multiple types of numbers (fixed, floating, various sizes) • Characters and booleans are represented as numbers • No user-defined types • Identifiers have types, but type safety is not a big concern • Identifiers bound directly to storage locations--no dynamic storage
  6. 6. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 IG: Data Structure • Data structures are based on those of machine language – that is, single contiguous blocks of storage • No nesting of data structures (just arrays, records) – Arrays represent a block of locations (FORTRAN, BASIC) – Records represent layout of data on a punched card (COBOL)
  7. 7. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 1G: Control structures • Control structures are based on those of machine language – Multiple kinds of GOTOs – Little nesting of control structures (exception: DO loops in FORTRAN) – No recursion (exception: BASIC) – A single way to pass parameters (usually by reference)
  8. 8. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Second generation • Algol 60 was the premier 2G language • Key concepts: Abstraction and generalization – Algol 60 introduced the notion of a "virtual machine," not tied to particular hardware – Algol 60 introduced real and integer data types not tied to a particular bit representation, and generalized loop and selection (if) statements • Alan Perlis: "Algol was indeed an achievement; it was a significant advance on most of its successors."
  9. 9. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 15-9 2G: Data structures Machine independence seen as a valid concern Simplification and abstraction of numeric types (real, integer) Arrays with user-defined lower bounds (not just 1) Dynamic (expandable) arrays Booleans introduced, but still not characters Strings could be used for output only Strong typing
  10. 10. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 15-10 2G: Control structures True hierarchical (nested) control structures Generalized control structures Often overly complex and baroque (e.g. for, switch) "Blocks" provide fine control over nesting, scopes Could pass parameters by value Could pass parameters by name
  11. 11. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Third generation • Example: Pascal • Key concepts: Simplicity and generality – More but simpler control structures – Expanded and generalized data types
  12. 12. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 3G: Data Structures • Recognition that not everything is a number • Language support for strings (or at least characters) • New data types introduced: – sets – subranges – enumeration types • User-defined data types • Hierarchical nesting of data types • User-controllable memory allocation
  13. 13. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 3G: Control structures • More but simpler control structures – three kinds of loop replace Algol's single for loop • Case statements introduced – called "switch" in C, Java • Simpler control structures can be more efficient as well as easier to understand • "Call by name" parameter transmission was discarded
  14. 14. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Fourth generation • Examples are Ada, Modula • Key concept: Emphasis on data abstraction
  15. 15. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 4G: Data structures • Separation of specification and definition – Other programmers and program parts can access the specification, not the code – This gives better support for information hiding – But this leads to duplication, which is error-prone • Name access by mutual consent • Generic or polymorphic subprograms • Exceptions (errors) attain the status of a data type
  16. 16. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 4G: Control structures • Concurrent programming, that is, multiple communicating processes • Protected or synchronized types • Functions can be overloaded (operators, too) • Exception handlers result in a new flow of control
  17. 17. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Fifth generation • Key concept: No general agreement on what 5G is • Prolog was the basis of the Japanese "Fifth- Generation Project" – The Fifth-Generation Project was not a success • O-O languages are now the dominant paradigm – They are the de facto fifth generation • But logic programming has a prior claim to the name • Functional programming is also a contender for 5G
  18. 18. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Fifth generation (Contd.) • Fifth generation (Smalltalk, Java) • Key concept: Object orientation • Three essential features: – Abstract data types (grouping of data and methods) – Inheritance (of types and methods, with overriding) – Messages (dynamic binding to methods)
  19. 19. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 5G: Data structures • Everything (or almost everything) is an object • All behaviors (methods) are encapsulated within objects • Objects are arranged in a hierarchy • But object space is still "flat," with little or no nesting – Java's inner classes are too little, too late • Data and methods are inherited • Data and methods can be overridden
  20. 20. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 5G: Control structures • Instead of calling functions, send messages to objects – Variables can hold different objects at different times • Most O-O languages have support for GUI events – An event is a message sent "to whom it may concern" – Event-handling may be container-based (Mac, Java 1.0) – Better event-handling is listener-based (Java 1.1)
  21. 21. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Thank you….

×