Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group computer graphics & visualization Practical Course SS07 Global Illumination.

Slides:



Advertisements
Similar presentations
Windows Programming 1 Part 1 dbg --- Getting Acquainted with Visual Studio.NET and C#
Advertisements

.NET Technology.
Introduction to C# Tom Roeder CS fa. Goals of the course Introduce C# language ECMA standard originally developed by MSR not just Java + C++ many.
Microsoft Visual Studio and C# Programming
Overview of the.NET Framework. What is the.NET Framework A new computing platform designed to simplify application development A consistent object-oriented.
Object Oriented System Development with VB .NET
CSE3030Lecture 11 Know Your User The First Slogan.
C#.NET C# language. C# A modern, general-purpose object-oriented language Part of the.NET family of languages ECMA standard Based on C and C++
Introduction to the C# Programming Language for the VB Programmer.
Advanced Object-Oriented Programming Features
History  We first begin with Java which was released in 1995 by Sun Microsystems  Initially Java was 100% interpreted at runtime and was very slow 
INSTRUCTOR: DR MARCO VALTORTA CSCE 330 C# GROUP MEMBERS: KONSTANTINOS MALEGOS YASSER AL-MUTAIRY CHRIS HESTER UNIVERSITY OF SOUTH CAROLINA.
C#/.NET Jacob Lewallen. C# vs.NET.NET is a platform. Many languages compile to.NET: –VB.NET –Python.NET –Managed C++ –C#
2. Developing in.NET and C#. 2 Microsoft Objectives “Microsoft.NET development is based on an underlying framework of tools and classes. These tools and.
1 An Introduction to Visual Basic Objectives Explain the history of programming languages Define the terminology used in object-oriented programming.
Creating and Running Your First C# Program Svetlin Nakov Telerik Corporation
Tahir Nawaz Visual Programming C# Week 2. What is C#? C# (pronounced "C sharp") is an object- oriented language that is used to build applications for.
Platforms and tools for Web Services and Mobile Applications Introduction to C# Bent Thomsen Aalborg University 3rd and 4th of June 2004.
HELIA – Bite ATK36F © Tuomo Ketomäki.NET Overview.NET Programming.
Intro to dot Net Dr. John Abraham UTPA – Fall 09 CSCI 3327.
Microsoft.Net vs. J2EE Suresh Ramachandran Duke Energy.
Creating and Running Your First C# Program Telerik Software Academy Telerik School Academy.
A Free sample background from © 2001 By Default!Slide 1.NET Overview BY: Pinkesh Desai.
A First Program Using C#
Lecture Roger Sutton CO530 Automation Tools 5: Class Libraries and Assemblies 1.
Introduction to .Net Framework
Architecture of.NET Framework .NET Framework ٭ Microsoft.NET (pronounced “dot net”) is a software component that runs on the Windows operating.
Session 1 - Introduction and Data Access Layer
C# A 1 CSC 298 Introduction to C#. C# A 2 What to expect in this class  Background: knowledge of an object oriented language of the C++, Java, … family.
11 Getting Started with C# Chapter Objectives You will be able to: 1. Say in general terms how C# differs from C. 2. Create, compile, and run a.
.NET Framework & C#.
Microsoft Visual Basic 2005: Reloaded Second Edition
Introduction to .NET Framework
Lecture Set 1 Part B: Understanding Visual Studio and.NET – Structure and Terminology 1/16/ :04 PM.
Creating and Running Your First C# Program Svetlin Nakov Telerik Corporation
Lesley Bross, August 29, 2010 ArcGIS 10 add-in glossary.
Lecture 1 Programming in C# Introducing C# Writing a C# Program.
Jens Krüger & Polina Kondratieva – Computer Graphics and Visualization Group computer graphics & visualization Practical Course C# / DirectX WS 05/06 Introduction.
Computing with C# and the.NET Framework Chapter 1 An Introduction to Computing with C# ©2003, 2011 Art Gittleman.
MESDA Conference 2002 MESDA Annual Conference 2002 Software Development Track Java vs. C#
CS795/895: Introduction. Topics Distributed Systems –Availability –Performance –Web Services Security –Authentication –Authorization –Confidentiality.
Component-Based Software Engineering Introduction to.NET Paul Krause.
.NET Framework Danish Sami UG Lead.NetFoundry
Programming in C#. I. Introduction C# (or C-Sharp) is a programming language. C# is used to write software that runs on the.NET Framework. Although C#
Introduction to C# C# is - elegant, type-safe, object oriented language enabling to build applications that run on the.NET framework - types of applications.
Introduction to .NET Framework
Applied Computing Technology Laboratory QuickStart C# Learning to Program in C# Amy Roberge & John Linehan November 7, 2005.
tom perkins1 XML Web Services -.NET FRAMEWORK – Part 1 CHAPTER 1.1 – 1.3.
PRIOR TO WEB SERVICES THE OTHER TECHNOLOGIES ARE:.
Microsoft .NET A platform that can be used for building and running windows and web applications such that the software is platform and device-independent.
Microsoft.Net vs. J2EE. J2EE – Enterprise Java  J2EE: Java 2 Enterprise Edition  Superset of Java 2 Standard Edition (J2SE)  Adds enterprise features.
Introduction to Object-Oriented Programming Lesson 2.
Introduction to C# Anders Hejlsberg Distinguished Engineer Developer Division Microsoft Corporation.
Text Introduction to.NET Framework. CONFIDENTIAL Agenda .NET Training – Purpose  What is.NET?  Why.NET?  Advantages  Architecture  Components: CLR,
User Interface Programming in C#: Basics and Events Chris North CS 3724: HCI.
Lecture Set 1 Part B: Understanding Visual Studio and.NET – Structure and Terminology 1/16/ :04 PM.
Overview CNS 3260 C#.NET Software Development. 2.NET Framework Began in 2000 Developed in three years (2000 to 2003) Operating System Hardware.NET Framework.
C# Fundamentals An Introduction. Before we begin How to get started writing C# – Quick tour of the dev. Environment – The current C# version is 5.0 –
METADATA IN.NET Presented By Sukumar Manduva. INTRODUCTION  What is Metadata ? Metadata is a binary information which contains the complete description.
Java and C# - Some Commonalities Compile into machine-independent, language- independent code which runs in a managed execution environment Garbage Collection.
INTRODUCTION BEGINNING C#. C# AND THE.NET RUNTIME AND LIBRARIES The C# compiler compiles and convert C# programs. NET Common Language Runtime (CLR) executes.
Introduction to the Microsoft.NET Framework Chris Wastchak Student Ambassador to Microsoft.
Foundations of .Net Programming with C#
C# and the .NET Framework
Introduction to .NET Framework Ch2 – Deitel’s Book
.NET and .NET Core 2. .NET Runtimes Pan Wuming 2017.
CS360 Windows Programming
Introduction to C# AKEEL AHMED.
Paul Stubbs MCSD, MCSE 4.0, MCP+I, MCT, MCAD .Net
IS 135 Business Programming
Presentation transcript:

Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group computer graphics & visualization Practical Course SS07 Global Illumination Effects / C# Introduction

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group Organizational… everybody here, who is supposed to be here? who else is here? Schedule: - - Tue. 11:30 – Question time (Thursday 10:30-12:00 )? If you have a question: - - forum - - question time appear in person

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group.NET Framework: Objectives To provide: To ensure : Consistent object-oriented programming environment no matter how the locally stored object code is executed: (locally, locally but Internet-distributed, or remotely). Code-execution environment that: − − minimizes software deployment and versioning conflicts, − − promotes safe execution of code, − − eliminates the performance problems of scripted/interpreted environments. Integrability of the.NET Framework code with any other code according to industry standards.

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group.NET Framework in context

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group DotNet, CLR, MSIL, C# … etc. See VB.NET Quellcode C# Quellcode Andere.NET-fächige Sprache C++ Quellcode Andere nicht.NET-fächige Sprache Unmanaged code Managed code MSIL-code VB.NET Compiler C# Compiler VC++ Compiler 7.0 Microsoft Intermediate Language (MSIL) [DATEI] Just-In-Time-Compiler (JIT) (Teil der Common Language Runtime) Native Code [RAM] Managed code Managed code Managed code Native Code (NativeImage) [Datei] Native Code [Datei] Betriebssystem Compiler

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group Java (J2EE) vs..NET: Performance

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group Java (J2EE) vs..NET: Portability Java – – Multi platform (available for every OS) – – „Not really“ multi language.NET – – „Not really“ multi platform (  ROTOR, MONO) – – Multi Language (C++, C#, J#, Basic, Delphi …)

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group Java (J2EE) vs..NET: Future Java – – well established – – a lot of applications already exist (including Applets).NET – – Microsoft's choice for Windows Longhorn (XP) – – a lot of applications are ported to.NET

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group Native Code vs..NET: Performance Native Code, the compiler – – usually compiles everything only once – – has much time to optimize code – – has no idea of the target machine – – can’t do runtime optimization on it’s own.NET, the JIT … – – compiles every USED method ONCE per program execution – – needs to be fast – – knows the target machine well – – knows the program’s behavior See:

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group Let‘s get started … you need: – – Windows XP/2003 (Windows ME/98/2000 not supported) – –.NET Framework 1.1 (SDK not needed) – – Visual Studio 2003, 2005 Use the systems in our lab!!!

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group C#... C# is a type-safe object-oriented language. Curly-brace syntax is very similar to C, C++ or Java. C# syntax simplifies many of the complexities of C++. C# provides powerful features: - - nullable value types, enumerations, delegates, anonymous methods and direct memory access. - - supports generic methods and types, and iterators. C# supports encapsulation, inheritance and polymorphism. A class may inherit directly from one parent class, but it may implement any number of interfaces. In C#, a struct is a „lightweight class“, which can implement interfaces but does not support inheritance.

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group C#... Use process "Interop." to interact with other Windows software (e.g. COM objects, native Win32 DLLs). „Interop.“ enables C# programs to do just about anything that a native C++ application can do. C# supports pointers and the concept of "unsafe" code (for those cases in which direct memory access is absolutely critical). C# build process is simple (vs. C, C++), flexible (vs. Java). There are no separate header files, and no strict order for methods and types. A C# source file may define any number of classes, structs, interfaces, and events.

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group C#: new constructs Encapsulated method signatures called delegates, which enable type-safe event notifications. Properties, which serve as accessors for private member variables (set/get). Attributes, which provide declarative metadata about types at run time. Inline XML documentation comments.

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group Hello World using System; namespace HelloWorldApplication { /// /// This class is really boring since it only prints „Hello World“ /// class HelloWorld { /// /// The Main Method is the entry point for the app /// [STAThread] static void Main(string[] args) { Console.WriteLine("Hello World"); }

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group Hello World Form using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; using System.Data; namespace HelloWorldForm { public class Form1 : System.Windows.Forms.Form { private System.Windows.Forms.Label label1; private System.ComponentModel.Container components = null; public Form1() { InitializeComponent(); label1.Text = "Hello World"; } protected override void Dispose( bool disposing ) { if( disposing ) if (components != null) components.Dispose(); base.Dispose( disposing ); }

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group Hello World Form (cont.) private void InitializeComponent() { label1 = new System.Windows.Forms.Label(); SuspendLayout(); label1.Location = new System.Drawing.Point(164, 68); label1.Name = "label1"; label1.TabIndex = 0; label1.Text = "label1"; AutoScaleBaseSize = new System.Drawing.Size(5, 13); ClientSize = new System.Drawing.Size(420, 158); Controls.Add(label1); Name = "Form1"; Text = "Hello Application"; ResumeLayout(false); } [STAThread] static void Main() { Application.Run(new Form1()); }

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group Java (J2EE) vs..NET: Code words ms-help://MS.VSCC.2003/MS.MSDNQTR.2004JAN.1033/dncenet/html/tchCJavaComparingProgrammingLanguages.htm#tchCJavaKeywordComparison C# KeywordJava Keyword Basesuper Boolboolean Isinstanceof locksynchronized namespacepackage readonlyconst sealedfinal usingimport internalprivate :extends :implements Not Supported by C# native transient

computer graphics & visualization Kai Bürger & Polina Kondratieva – Computer Graphics and Visualization Group References — — mework.de/dotnet/DOTNET_Framework_Einfuehrung.asp — —E. Schanzer, Performance Considerations for Run-Time Technologies in the.NET Framework, Microsoft Corporation, August — —S. T. Kachru, On the Relative Advantages of Teaching Web Services in.NET vs. J2EE, Master Thesis, North Carolina State University, Aug — —J2EE and.NET Application Server and Web Services Benchmark, Middleware company, Oct — —J2EE and.NET (Reloaded) Yet Another Performance Case Study, Middleware company, Jun — —H. Mössenböck, Introduction to C#, University of Linz, Austria. — —H. Mössenböck, Advanced C#, University of Linz, Austria. — —D. Marshall, Visual C# 2005: The Language, Microsoft Press, — —Microsoft Visual Studio 2005 Documentation — —...