VISUAL C - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

VISUAL C

Description:

.NET (dot-net) is the name Microsoft gives to its general vision of the future ... the .NET framework, however (in some cases the fit has been somewhat Procrustean) ... – PowerPoint PPT presentation

Number of Views:71
Avg rating:3.0/5.0
Slides: 16
Provided by: birgl
Category:

less

Transcript and Presenter's Notes

Title: VISUAL C


1
VISUAL C
  • Introduction

2
What is Visual C?
  • It is a very powerful object-oriented language.
  • It is based on Microsoft.Net technology.
  • It is intuitive, simple, elegant, and powerful.
  • It is platform-independent.
  • It is supported by Microsoft Visual Studio 7.0.

3
.NET Framework
  • .NET (dot-net) is the name Microsoft gives to its
    general vision of the future of computing, the
    view being of a world in which many applications
    run in a distributed manner across the Internet.
  • We can identify a number of different motivations
    driving this vision
  • Firstly, distributed computing is rather like
    object oriented programming, in that it
    encourages specialised code to be collected in
    one place, rather than copied redundantly in lots
    of places. There are thus potential efficiency
    gains to be made in moving to the distributed
    model.

4
.NET Framework
  • Secondly, by collecting specialised code in one
    place and opening up a generally accessible
    interface to it, different types of machines
    (phones, handhelds, desktops, etc.) can all be
    supported with the same code. Hence Microsoft's
    'run-anywhere' aspiration.
  • Thirdly, by controlling real-time access to some
    of the distributed nodes (especially those
    concerning authentication), companies like
    Microsoft can control more easily the running of
    its applications. It moves applications further
    into the area of 'services provided' rather than
    'objects owned'.

5
.NET Framework
  • Interestingly, in taking on the .NET vision,
    Microsoft seems to have given up some of its
    proprietary tendencies (whereby all the
    technology it touched was warped towards its
    Windows operating system). Because it sees its
    future as providing software services in
    distributed applications, the .NET framework has
    been written so that applications on other
    platforms will be able to access these services.
    For example, .NET has been built upon open
    standard technologies like XML and SOAP.
  • At the development end of the .NET vision is the
    .NET Framework. This contains the Common Language
    Runtime, the .NET Framework Classes, and
    higher-level features like ASP.NET (the next
    generation of Active Server Pages technologies)
    and WinForms (for developing desktop
    applications).

6
.NET Framework
  • The Common Language Runtime (CLR) manages the
    execution of code compiled for the .NET platform.
    The CLR has two interesting features. Firstly,
    its specification has been opened up so that it
    can be ported to non-Windows platforms. Secondly,
    any number of different languages can be used to
    manipulate the .NET framework classes, and the
    CLR will support them. This has led one
    commentator to claim that under .NET the language
    one uses is a 'lifestyle choice'.
  • Not all of the supported languages fit entirely
    neatly into the .NET framework, however (in some
    cases the fit has been somewhat Procrustean). But
    the one language that is guaranteed to fit in
    perfectly is C. This new language, a successor
    to C, has been released in conjunction with the
    .NET framework, and is likely to be the language
    of choice for many developers working on .NET
    applications.

7
.NET Framework
  • The .NET Framework, made up of the Common
    Language Runtime (CLR), the .NET Framework Class
    Library, .NET languages, and Visual Studio .NET,
    supports multiple languages, which allows for
    cross-platform applications.

8
.NET Framework
  • In order for this to work, a common element must
    exist through all .NET languages. The Common
    Language Specification (CLS) is an agreement that
    encompasses the rules, or specifications, of .NET
    languages. To be considered a .NET language, a
    language must comply with specifications set in
    the CLS agreement. Microsoft provides four
    CLS-compliant languages, including Visual Basic
    .NET, Visual C .NET, Visual C with managed
    extensions, and Jscript. The goals of the CLR
    are
  • Simplified application development
  • Multiple programming language support
  • Good performance and scalability
  • A safe and reliable execution environment
  • Simplified deployment

9
.NET Framework
  • The CLR consists of an execution engine, a
    garbage collector, just-in-time (JIT) compiler, a
    security system, and the .NET Framework
    fundamentals.
  • All of the CLS-compliant -- or .NET -- languages,
    have managed code compilers that generate
    Microsoft Intermediate Language (MSIL). MSIL is
    machine-independent and can offer benefits
    including just-in-time compilation, metadata, and
    more.
  • All .NET applications are constructed from
    Assemblies, a compiled (and versioned) collection
    of code and metadata that forms a functional
    unit. All Assemblies contain information stored
    in something called a Manifest, which contains
    the Assembly name, version, dependencies,
    associated files, and exported features for more
    informative versioning.

10
.NET Framework
  • Another feature of Microsoft .NET technology that
    directly relates to C is the .NET Framework
    Class Library. This library consists of more than
    2,500 classes whose functionality you can access
    from all of the .NET languages.
  • The library is made up of four main parts
  • Base Class Library (networking, security,
    diagnostics, file I/O, and OS services)
  • Data and SML classes
  • Windows user interface
  • Web services and Web user interface

11
.NET Reliability
  • Many users are skeptical about the new .NET
    technology and want to know how .NET technology
    is improving Windows stability and Visual Studio
    reliability. In the past, it was quite difficult
    to manage a Windows PC because of the complexity
    of the applications.
  • The introduction of shared DLLs and the ability
    to overwrite DLLs increased this difficulty. In
    addition, unclean uninstallations and associated,
    shared files caused headaches in the removal and
    inclusion of applications.
  • Many of these activities caused an unstable PC
    and potentially resulted in a reinstall of the
    operating system.

12
.NET Reliability
  • Microsoft addressed many of these reliability and
    stability issues with .NET technology.
  • Applications no longer rely on the registry
    information, removing registry-related headaches.
    In the .NET Framework, applications are
    self-describing and allow developers to run
    different versions of a DLL on the same machine,
    side by side.
  • In addition, rather than the operating system,
    the CLR executes languages that produce managed
    code. Because of this, the CLR can perform many
    safety checks such as memory management, garbage
    collection, and type safety.
  • This layer adds a level to the programming
    platform, and this higher abstraction brings more
    safety and security. This results in more
    consistency because all languages use a similar
    class library which in turn enables multiple
    language interoperability.

13
C
  • C is an object-oriented language that enables
    programmers to develop applications with the
    power of C and the ease of Visual Basic.
  • Microsoft built C from the ground up with the
    .NET framework and Object Oriented Programming
    (OOP) in mind. However, C expands OOP even
    beyond Visual C concepts. It is a strongly
    typed language in which everything is an object.
  • The core features of C were derived from C-like
    languages. Therefore, if you have experience with
    C, C, or Java, you will have a head start in C
    development.

14
C versus Java
  • C and Java are both new-generation languages
    descended from a line including C and C. Each
    includes advanced features, like garbage
    collection, which remove some of the low level
    maintenance tasks from the programmer. In a lot
    of areas they are syntactically similar.
  • Both C and Java compile initially to an
    intermediate language C to Microsoft
    Intermediate Language (MSIL), and Java to Java
    bytecode. In each case the intermediate language
    can be run - by interpretation or just-in-time
    compilation - on an appropriate 'virtual
    machine'. In C, however, more support is given
    for the further compilation of the intermediate
    language code into native code.

15
C versus Java
  • C contains more primitive data types than Java,
    and also allows more extension to the value
    types. For example, C supports 'enumerations',
    type-safe value types which are limited to a
    defined set of constant variables, and 'structs',
    which are user-defined value types.
  • Unlike Java, C has the useful feature that we
    can overload various operators.
  • Like Java, C gives up on multiple class
    inheritance in favour of a single inheritance
    model extended by the multiple inheritance of
    interfaces.
  • C also uses 'delegates' - type-safe method
    pointers. These are used to implement
    event-handling.
  • In Java, multi-dimensional arrays are implemented
    solely with single-dimensional arrays where
    arrays can be members of other arrays. C
    implements genuine rectangular arrays.
Write a Comment
User Comments (0)
About PowerShow.com