Presentation is loading. Please wait.

Presentation is loading. Please wait.

Prof. Yousef B. Mahdy -2014-2015, Assuit University, Egypt Visual programming Using C# Prof. Yousef B. Mahdy Chapter one Concepts.

Similar presentations


Presentation on theme: "Prof. Yousef B. Mahdy -2014-2015, Assuit University, Egypt Visual programming Using C# Prof. Yousef B. Mahdy Chapter one Concepts."— Presentation transcript:

1 Prof. Yousef B. Mahdy -2014-2015, Assuit University, Egypt Visual programming Using C# Prof. Yousef B. Mahdy Chapter one Concepts

2 2 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Course Description n Course introduces programming using the C# programming language to solve business-related problems. Content includes program development and design, visual and object-oriented programming, screen design, structured programming techniques, and event-driven programming using objects. n Programming assignment concepts include arithmetic calculations, decision making, looping, reports to screen and paper, subroutines and functions, interactive processing, working with arrays, and introductory concepts of file creation and access. n This class will teach you how to program in C# and how to use Microsoft's new.NET platform. This is not an introductory programming class.

3 3 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Tentative Schedule 1. Introduction to.NET, & Visual Studio.NET 2. C# Basics and decisions structures 3. User-defined Types, Methods & Arrays 4. Class Design, Inheritance & Polymorphism 5. Strings and Exceptions 6. WinForms & GUI Concepts I 7. GUI Concepts & User Interfaces 8. Threads, Streams, & Networking 9. Database, SQL, and ADO.NET 10. Graphics

4 4 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Course resources n Textbook C# 2012, How to Program n Software »Visual Studio.NET 2010 Or 2013 Or C# 2010 /2013 Express edition »The.NET framework above 4.0

5 5 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Background n Modern software programming languages (like C# and VB.NET) utilize a human-friendly syntax that is not directly understandable by computers. Software commands in this human-friendly syntax are referred to as Source Code. Before a computer can execute the source code, special programs called compilers must rewrite it into machine instructions, also known as object code. This process (commonly referred to simply as “compilation”) can be done explicitly or implicitly. n Explicit Compilation »Explicit compilation converts the upper level language into object code prior to program execution. Ahead of time (AOT) compilers are designed to ensure that, the CPU can understand every line in the code before any interaction takes place. This is carried out by compilers.

6 6 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Compiler n Software that translate high-level language (C++, Java, C#, etc) to machine language. n Compiler X can covert high-level Y to machine language Z. n A big problem facing developers is the many different types of processors that run code. n Windows, Macintosh, and Unix machines use a wide variety of hardware, as do personal digital assistants, cell phones, large computers, and other platforms. n One way to make a program work on each of these devices is to translate the program to the native instruction.

7 7 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1 n So if we have 3 programming languages and 3 devices, how many compilers do we need? n So, how they solved this?! n This can be solved by using Implicit compilation.

8 8 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Implicit Compilation n Implicit compilation is a two-step process. The first step is converting the source code to intermediate language (IL) by a language-specific compiler. The second step is converting the IL to machine instructions. The main difference with the explicit compilers is that only executed fragments of IL code are compiled into machine instructions, at runtime. The.NET framework calls this compiler the JIT (Just- In-Time) compiler. »IL is a CPU- and platform-independent instruction set. »It can be executed in any environment supporting the.NET framework

9 9 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1

10 10 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Portability n Delivering portability is a key aspect when developing a program targeting a wide range of platforms. A couple of questions need answers to enable execution on multiple platforms: »What kind of CPU is used? »What Operating System (OS) will the program be running on? n To enable maximum reach of the software, the source code has to be compiled with a wide range of explicit compilers. n The implicit way delivers portability quite more effortlessly, because the first step of the process is much more platform agnostic. Each target platform has a JIT compiler deployed and as long as the IL can be interpreted the program can execute. The initial compiler does not need to know all of the places where the software might run.

11 11 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Example 1: Java n Every developer who uses Java knows that Java bytecode runs in a JRE (Java Runtime Environment). The most important element of the JRE is Java Virtual Machine (JVM), which analyzes and executes Java byte code. n A virtual machine (VM) is a software implementation of a machine (i.e. a computer) that executes programs like a physical machine. forgotten n Originally, Java was designed to run based on a virtual machine separated from a physical machine for implementing WORA (Write Once Run Anywhere), although this goal has been mostly forgotten. Therefore, the JVM runs on all kinds of hardware to execute the Java Bytecode without changing the Java execution code.

12 12 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# JVM Structure

13 13 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Java: Execution Engine n The bytecode that is assigned to the runtime data areas in the JVM via class loader is executed by the execution engine. n The execution engine reads the Java Bytecode in the unit of instruction. It is like a CPU executing the machine command one by one. Each command of the bytecode consists of a 1-byte OpCode and additional Operand. The execution engine gets one OpCode and execute task with the Operand, and then executes the next OpCode. n But the Java Bytecode is written in a language that a human can understand, rather than in the language that the machine directly executes. Therefore, the execution engine must change the bytecode to the language that can be executed by the machine in the JVM. The bytecode can be changed to the suitable language in one of two ways:

14 14 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1 n Interpreter: Reads, interprets and executes the bytecode instructions one by one. As it interprets and executes instructions one by one, it can quickly interpret one bytecode, but slowly executes the interpreted result. This is the disadvantage of the interpret language. The 'language' called Bytecode basically runs like an interpreter. n JIT (Just-In-Time) compiler: The JIT compiler has been introduced to compensate for the disadvantages of the interpreter. The execution engine runs as an interpreter first, and at the appropriate time, the JIT compiler compiles the entire bytecode to change it to native code. After that, the execution engine no longer interprets the method, but directly executes using native code.

15 15 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 2 n Execution in native code is much faster than interpreting instructions one by one. The compiled code can be executed quickly since the native code is stored in the cache (Java 6 and above). n However, it takes more time for JIT compiler to compile the code than for the interpreter to interpret the code one by one. Therefore, if the code is to be executed just once, it is better to interpret it instead of compiling. Therefore, the JVMs that use the JIT compiler internally check how frequently the method is executed and compile the method only when the frequency is higher than a certain level.

16 16 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 3

17 17 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Example 2: NET Framework n In the.NET Framework, all the Microsoft.NET languages use a Common Language Runtime (CLR), which solves the problem of installing separate runtimes for each of the programming languages. n When the CLR is installed on a computer then it can run any language that is Microsoft.NET compatible. Before the Microsoft Intermediate Language (MSIL like bytecode in Java) can be executed, it must be converted by a.NET Framework Just-In-Time (JIT) compiler to native code, which is CPU-specific code that runs on the same computer architecture as the JIT compiler. n More …………………in this course

18 18 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Introduction C# n Microsoft developed C#, a new programming language based on the C and C++ languages. Microsoft describes C# in this way: ”C# is a simple, modern, object–oriented, and typesafe programming language derived from C and C++. C# (pronounced c sharp) is firmly planted in the C and C++ family tree of languages and will immediately be familiar to C and C++ programmers. C# aims to combine the high productivity of visual basic and raw power of C++.” n Anders Hejlsberg ( أندرس هيلسبرج ), the principal architect of C#, is known for his work with Borland on Turbo Pascal and Delphi (based on object–oriented Pascal). After leaving Borland, Hejlsberg worked at Microsoft on Visual J++. n

19 19 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1 n Some aspects of C# will be familiar to those, who have programmed in C, C++, or Java. n C# incorporates the Smalltalk concept, which means everything is an object. In other words, all types in C# are objects. n C# properties are similar to Visual Basic language properties. n The Rapid Application Development (RAD) goal in C# is assisted by C#’s use of concepts and keyword, such as class, structure, statement, operator, and enumeration. n The language also utilizes the concepts contained in the Component Object Model (COM) architecture. n Unlike Visual Basic or Delphi, Events is a type in C# and can belong to an object. Members of a class object can have variables, methods, properties, attributes, and events. Attributes are another nice feature of C# language.

20 20 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 2 n C# is an elegant and type-safe object-oriented language that enables developers to build a variety of secure and robust applications that run on the.NET Framework. n You can use C# to create Windows client applications, XML Web services, distributed components, client- server applications, database applications, and much, much more. n Visual C# provides an advanced code editor, convenient user interface designers, integrated debugger, and many other tools to make it easier to develop applications based on the C# language and the.NET Framework.

21 21 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 3 n C# syntax is highly expressive, yet it is also simple and easy to learn. The curly-brace syntax of C# will be instantly recognizable to anyone familiar with C, C++ or Java. n C# syntax simplifies many of the complexities of C++ and provides powerful features such as nullable value types, enumerations, delegates, lambda expressions and direct memory access, which are not found in Java. n C# supports generic methods and types, which provide increased type safety and performance, and iterators, which enable implementers of collection classes to define custom iteration behaviors that are simple to use by client code. Language-Integrated Query (LINQ) expressions make the strongly-typed query a first-class language construct.

22 22 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 4 n As an object-oriented language, C# supports the concepts of encapsulation, inheritance, and polymorphism. All variables and methods, including the Main method, the application's entry point, are encapsulated within class definitions. n A class may inherit directly from one parent class, but it may implement any number of interfaces. Methods that override virtual methods in a parent class require the override keyword as a way to avoid accidental redefinition. n In C#, a struct is like a lightweight class; it is a stack- allocated type that can implement interfaces but does not support inheritance.

23 23 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 5 n In addition to these basic object-oriented principles, C# makes it easy to develop software components through several innovative language constructs, including the following: »Encapsulated method signatures called delegates, which enable type-safe event notifications. »Properties, which serve as accessors for private member variables. »Attributes, which provide declarative metadata about types at run time. »Inline XML documentation comments. »Language-Integrated Query (LINQ) which provides built-in query capabilities across a variety of data sources.

24 24 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 6 n If you have to interact with other Windows software such as COM objects or native Win32 DLLs, you can do this in C# through a process called "Interop." Interop enables C# programs to do almost anything that a native C++ application can do. C# even supports pointers and the concept of "unsafe" code for those cases in which direct memory access is absolutely critical. n The C# build process is simple compared to C and C++ and more flexible than in Java. There are no separate header files, and no requirement that methods and types be declared in a particular order. A C# source file may define any number of classes, structs, interfaces, and events.

25 25 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 7 n In summary: n The goal of C# is to provide a simple, safe, modern, object-oriented, Internet-centric, high-performance language for.NET development. C# is now a fully mature language, and it draws on the lessons learned over the past three decades. In much the way that you can see in young children the features and personalities of their parents and grandparents, you can easily see in C# the influence of Java, C++, Visual Basic (VB), and other languages, but you can also see the lessons learned since C# was first introduced.

26 26 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# The.NET Platform n.NET Framework (pronounced dot net) is a software framework developed by Microsoft that runs primarily on Microsoft Windows. n The.NET platform is a development framework that provides a new application programming interface (API) to the services and APIs of classic Windows operating systems while bringing together a number of disparate technologies that emerged from Microsoft during the late 1990s. This includes COM+ component services, a commitment to XML and object-oriented design, support for new web services protocols such as SOAP, WSDL, and UDDI, and a focus on the Internet, all integrated within the Distributed interNet Applications (DNA) architecture.

27 27 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1 n It includes a large class library known as Framework Class Library (FCL) and provides language interoperability (each language can use code written in other languages) across several programming languages. n Programs written for.NET Framework execute in a software environment (as contrasted to hardware environment), known as Common Language Runtime (CLR), an application virtual machine that provides services such as security, memory management, and exception handling. FCL and CLR together constitute.NET Framework

28 28 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 2 n FCL provides user interface, data access, database connectivity, cryptography, web application development, numeric algorithms, and network communications. Programmers produce software by combining their own source code with.NET Framework and other libraries..NET Framework is intended to be used by most new applications created for Windows platform. Microsoft also produces an integrated development environment largely for.NET software called Visual Studio. n The.NET Framework sits on top of the operating system, which can be any flavor of Windows, and consists of a number of components, currently including:

29 29 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 3 n Five official languages: C#, VB, Visual C++, Visual J#, and JScript.NET n The CLR, an object-oriented platform for Windows and web development that all these languages share n A number of related class libraries, collectively known as the Framework Class Library n The following slides breaks down the.NET Framework into its system architectural components.

30 30 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 4

31 31 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C#.NET Framework Architecture n The OS manages the resources, the processes and the users of the machine n Provides to the applications some services (threads, I/O, GDI+, DirectX, COM, COM+, MSMQ, IIS, WMI, …) n CLR is a separate process in the OS Operating System (OS)

32 32 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Operating System (OS) Common Language Runtime (CLR)  CLR manages the execution of the.NET code  Manages the memory, concurrency, security,....NET Framework Architecture (2) CLR

33 33 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Operating System (OS) Common Language Runtime (CLR) Base Class Library (BCL).NET Framework Architecture (3) n Rich object-oriented library with fundamental classes n Input-output, collections, text processing, networking, security, multi-threading, …

34 34 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Operating System (OS) Common Language Runtime (CLR) Base Class Library (BCL) ADO.NET, LINQ and XML (Data Tier).NET Framework Architecture (4)  Database access  ADO.NET, LINQ, LINQ-to- SQL and Entity Framework  Strong XML support

35 35 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Operating System (OS) Common Language Runtime (CLR) Base Class Library (BCL) ) ADO.NET, LINQ and XML (Data Tier).NET Framework Architecture (5) WCF and WWF (Communication and Workflow Tier)  Windows Communication Foundation (WCF) and Windows Workflow Foundation (WWF) for the SOA world

36 36 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Operating System (OS) Common Language Runtime (CLR) Base Class Library (BCL) ADO.NET, LINQ and XML (Data Tier).NET Framework Architecture (6) WCF and WWF (Communication and Workflow Tier) ASP.NET Web Forms, MVC, AJAX Mobile Internet Toolkit Windows FormsWPF t Silverlight  User interface technologies: Web based, Windows GUI, WPF, Silverlight, mobile, …

37 37 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Operating System (OS) Common Language Runtime (CLR) Base Class Library (BCL) ADO.NET, LINQ and XML (Data Tier).NET Framework Architecture (7) ) WCF and WWF (Communication and Workflow Tier) ASP.NET Web Forms, MVC, AJAX Mobile Internet Toolkit WindowsFormsWPFSilverlight C#C++VB.NETJ#F# t JScriptPerl i Delphi …  Programming language on your flavor!

38 38 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Common Language Runtime (CLR) n The most important component of the.NET Framework is the CLR, which provides the environment in which programs are executed. The CLR includes a virtual machine, analogous in many ways to the Java virtual machine. At a high level, the CLR activates objects, performs security checks on them, lays them out in memory, executes them, and garbage-collects them. (The Common Type System is also part of the CLR.). n Managed execution environment: »Controls the execution of managed.NET programming code n Something like virtual machine: »Like the Java Virtual Machine (JVM)

39 39 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1 n Not an interpreter »Compilation on-demand is used –Known as Just In Time (JIT) compilation n Possible compilation in advance (Ngen). n Responsibilities of CLR: n Execution of the IL code and the JIT compilation n Managing memory and application resources n Ensuring type safety n Interaction with the OS n Managing security »Code access security »Role-based security

40 40 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 2 n Managing exceptions n Managing concurrency – controlling the parallel execution of application threads n Managing application domains and their isolation n Interaction with unmanaged code n Supporting debug /profile of.NET code

41 41 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# The framework's Base Class Library n The framework's Base Class Library provides a large range of features including user interface, data and data access, database connectivity, cryptography, web application development, numeric algorithms, and network communications. The class library is used by programmers, who combine it with their own code to produce applications. n Programs written for the.NET Framework execute in a software environment that manages the program's runtime requirements.

42 42 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Managed and Unmanaged Code n Managed Code: n Managed code is what Visual Basic.NET and C# compilers create. It runs on the CLR (Common Language Runtime), which, among other things, offers services like garbage collection, run-time type checking, and reference checking. So, think of it as, "My code is managed by the CLR." n Visual Basic and C# can only produce managed code, so, if you're writing an application in one of those languages you are writing an application managed by the CLR. If you are writing an application in Visual C++.NET you can produce managed code if you like, but it's optional.

43 43 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1 n Unmanaged Code: n Unmanaged code compiles straight to machine code. So, by that definition all code compiled by traditional C/C++ compilers is 'unmanaged code'. Also, since it compiles to machine code and not an intermediate language it is non-portable. n No free memory management or anything else the CLR provides. n Since you cannot create unmanaged code with Visual Basic or C#, in Visual Studio all unmanaged code is written in C/C++.

44 44 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 2

45 45 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Compilation and the MSIL n In.NET, programs aren't compiled into executable files; they are compiled into assemblies that consist of Microsoft Intermediate Language (IL) instructions, which the CLR then converts into machine code and executes. n The MSIL (often shortened to IL) files C# produces are nearly identical to the IL files other.NET languages produce; the platform is language-agnostic. A key fact about the CLR is that it is common: the same runtime supports development in C# as well as in VB.NET. n C# code is compiled into IL when you build your project. The IL is saved in a file on disk. When you run your program, the IL is compiled again, using the Just In Time (JIT) compiler (a process often called JITing). The result is machine code, executed by the machine's processor.

46 46 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1 n The standard JIT compiler runs on demand. When a method is called, the JIT compiler analyzes the IL and produces highly efficient machine code, which runs very fast. As the application runs, compilation happens only as needed, and once JIT-compiled, the code is cached for future use. As.NET applications run, they tend to become faster and faster, as the already compiled code is reused. n

47 47 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 2

48 48 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Just-In-Time Compilation n The JIT compiler is part of the Common Language Runtime (CLR). The CLR manages the execution of all.NET applications. In addition to JIT compilation at runtime, the CLR is also responsible for garbage collection, type safety and for exception handling.garbage collectiontype safetyexception handling n Different machine configurations use different machine level instructions. As Figure 1 shows, the source code is compiled to exe or dll by the.NET compiler. Common Intermediate Language (CIL) consists of instructions that any environment supporting.NET can execute and includes metadata describing structures of both data and code. The JIT Compiler processes the CIL instructions into machine code specific for an environment. Program portability is ensured by utilizing CIL instructions in the source code.

49 49 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1

50 50 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 2 n The JIT compiler compiles only those methods called at runtime. It also keeps track of any variable or parameter passed through methods and enforces type-safety in the runtime environment of the.NET Framework. n There are three types of JIT compilation in the.NET framework: »Pre-JIT Compiler (Compiles entire code into native code completely) »Econo JIT Compiler (Compiles code part by part freeing when required) »Normal JIT Compiler (Compiles only that part of code when called and places in cache

51 51 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Pre-JIT Compilation n It compiles the entire assembly instead of used methods. In.NET languages, this is implemented in Ngen.exe (Native Image Generator). All IL instructions are compiled to native code before startup. This way the runtime can use native images from the cache instead of invoking the JIT Compiler.

52 52 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1

53 53 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Normal JIT Compilation n With the Normal JIT Compiler methods are compiled when called at runtime. After execution this method is stored in the memory and it is commonly referred as “jitted”. No further compilation is required for the same method. Subsequent method calls are accessible directly from the memory cache.

54 54 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1

55 55 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Econo JIT Compilation n The Econo JIT Compiler is displayed in the next slide. It compiles methods when called at runtime and removes them from memory after execution.

56 56 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 1

57 57 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# 2

58 58 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Applications -1 n You can use the.NET Framework to develop the following types of applications and services: n Console applications: »Console applications are the kind of executables that you would use to create a command line utility like dir or xcopy. »Applications in the.NET Framework can use the System. Console class to read characters from and write characters to the console. Data from the console is read from the standard input stream, data to the console is written to the standard output stream, and error data to the console is written to the standard error output stream. System. Console

59 59 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Applications -2 n Windows GUI applications (Windows Forms): »A Windows Forms application is an event-driven application supported by Microsoft's.NET Framework. Unlike a batch program, it spends most of its time simply waiting for the user to do something, such as fill in a text box or click a button.event-driven application.NET Frameworkbatch programtext box button »Windows Forms is the name given to the graphical application programming interface (API) included as a part of Microsoft's.NET Framework, providing access to the native Microsoft Windows interface elements by wrapping the existing Windows API in managed code.graphical application programming interface (API)Microsoft's.NET FrameworkMicrosoft Windows API managed code

60 60 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Applications -3 n Windows Presentation Foundation (WPF) applications : »The Windows Presentation Foundation (or WPF) is a graphical subsystem for rendering user interfaces in Windows-based applications. WPF was initially released as part of.NET Framework 3.0. Designed to remove dependencies on the aging GDI subsystem, WPF is built on DirectX, which provides hardware acceleration and enables modern UI features like transparency, gradients and transforms. WPF provides a consistent programming model for building applications and provides a clear separation between the user interface and the business logic..NET Framework 3.0GDIDirectXuser interface business logic

61 61 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Applications -4 n ASP.NET applications : »ASP.NET is a web application framework developed and marketed by Microsoft to allow programmers to build dynamic web sites, web applications and web services. It was first released in January 2002 with version 1.0 of the.NET Framework, and is the successor to Microsoft's Active Server Pages (ASP) technology. ASP.NET is built on the Common Language Runtime (CLR), allowing programmers to write ASP.NET code using any supported.NET language.web application frameworkMicrosoftprogrammersweb sitesweb applicationsweb services.NET FrameworkActive Server PagesCommon Language Runtime.NET language

62 62 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Applications -5 n Web services »A Web service (also Webservice) is defined by the W3C as "a software system designed to support interoperable machine-to-machine interaction over a network. W3C interoperablemachine-to-machine network »In common usage the term refers to clients and servers that communicate over the Hypertext Transfer Protocol (HTTP) protocol used on the Web.clients serversHypertext Transfer Protocol

63 63 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C# Applications -6 n Windows services : »Microsoft Windows services, formerly known as NT services, enable you to create long-running executable applications that run in their own Windows sessions. These services can be automatically started when the computer boots, can be paused and restarted, and do not show any user interface. These features make services ideal for use on a server or whenever you need long-running functionality that does not interfere with other users who are working on the same computer.

64 64 - Prof Yousef B. Mahdy- 6/6/2016 Visual programming- C#


Download ppt "Prof. Yousef B. Mahdy -2014-2015, Assuit University, Egypt Visual programming Using C# Prof. Yousef B. Mahdy Chapter one Concepts."

Similar presentations


Ads by Google