This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: Connexions module: m14425 1 VC++ Tutorial for Beginners * Avanija j This work is produced by The Connexions Project and licensed under the Creative Commons Attribution License † Abstract This course entails the programming concepts in VC++ with clear syntax speci cation and program- ming examples. 1 Chapter 1 2 Basics of Windows Programming 3 1. 1 Paradigms of Programming Languages Although many di erent computer architectures are being developed, the most prevalent is still the tradi- tional von Neumann architecture - consisting of a single sequential CPU separate from memory, with data piped between cpu and memory. This is re ected in the design of the dominant computer languages, with dynamic variables (representing memory cells with changing values); sequential iteration (re ecting the sin- gle sequential cpu); assignment statements (re ecting piping). This combination of choices gives rise to the imperative language paradigm - C, Ada, Pascal, FORTRAN, COBOL, Basic etc. But other choices are possible - variables do not have to directly re ect memory cells (logic programming); repetition need not be iterative (logic, functional, concurrent); assignment need not be important (logic, functional); data and control need not be separated (object oriented, functional). A paradigm is essentially a high level model of what computation is about - the unifying factor that makes Ada and C seem very similar, ignoring details such as what data or control structures are available, exactly how variables are passed to procedures, and so on. 3.1 Some Paradigms • Procedural (COBOL, FORTRAN, Pascal, C) • functional (LISP) • logic (PROLOG) • structured • object-oriented (Smalltalk) • 4GL (Dbase) • Visual (Visual Basic) 1.1.1 Procedural * Version 1.1: Apr 4, 2007 12:57 pm GMT-5 † http://creativecommons.org/licenses/by/2.0/ http://cnx.org/content/m14425/1.1/ Connexions module: m14425 2 This is focusing on grouping organizations and/or code by similar operations or by the operations that can be done on them. 1.1.2 Functional Functional programming is so called because a program consists entirely of functions. The program itself is written as a function which receives the program's input as its argument and delivers the program's output as its result. Typically the main function is de ned in terms of other functions, which in turn are de ned in terms of still more functions, until at the bottom level the functions are language primitives. These functions are much like ordinary mathematical functions. Functional programs contain no assignment statements, so variables, once given a value, never change. Functions can be described intentionally by a rule describing the association, or extensionally as a set of associated pairs (argument, result) which are called the graph of the function. Functional programming also provides greater abstraction for solution. One such a feature is polymorphism which allows general de nition of functions which could be applied to objects of any type. To achieve such a behavior we usede nition of functions which could be applied to objects of any type....
View Full Document
- Spring '10