Group number 24 Joni Saarinen Daniel Kullberg

Size: px
Start display at page:

Download "Group number 24 Joni Saarinen Daniel Kullberg"

Transcription

1 C# Group number 24 Joni Saarinen Daniel Kullberg

2 C# (pronounced C sharp) is a multi paradigm programming language developed by Microsoft. It is primarily an imperative language but support for functional programming has been increased during its development. C# is object oriented and from a programmer s point of view, every value can be considered an object. In fact all value types are inherited from the same object. The aim of C# is to be simple, modern, object oriented, and type safe programming language. It tries to combine the raw power of C++ and high productivity of a modern programming language. History C# was created during the development of.net framework. Anders Hejlsberg was the team leader and he is considered the lead architect of C#. During the early development of the language it was called Cool, which stood for "C like Object Oriented Language". C++ and Java were very popular in 1999 when C# development started and the development team wanted to acknowledge that. Therefore C# is very similar with C++ and Java as it is built to appeal to both C++ and Java programmers. New versions of C# are released at the same time as new versions of.net framework and Visual Studio. C# 1.0 The first version of C#, 1.0, was released in January This version seemed very similar with Java and some people even claimed that it was a Java clone. However, after the release of C# 2.0 the two languages have moved to different directions. C# 2.0 C# 2.0 was released in September It included a lot of features that were left out of version 1.0 because of time limits. Support for partial classes was added, which meant that classes could be spread between several files. Generics was added to.net 2.0 and therefore also to C#. Static classes were added to imitate the functionality of modules, which are used in many other procedural languages. Nullable types allowed any value type to be null. Other major features included generators and anonymous delegates, which are the predecessors of lambdas. C# 3.0 C# 3.0 was released in November 2007 along with.net Framework 3.5. It was highly inspired by functional programming languages and the introduction of LINQ (Language Integrated Query) to the Common Language Runtime. LINQ is a general purpose query language to access different kind of data sources. Object and

3 collection initializing was made easier with new syntax. Anonymous types and lambdas were also added. C# 4.0 C# 4.0 and.net framework version 4.0 were released in April The focus was to improve support with partially or fully dynamically typed languages and frameworks, such as the Dynamic Language Runtime and COM. C# 4.0 introduced dynamic member lookup which means that type checking is postponed until runtime. Default values for functions were also introduced. C# 5.0 C# 5.0 was released together with.net framework 4.5 June It has two key features: Async Programming and Caller Information. Async Programming, as the name implies, is used in asynchronous programming. Caller Information is used in tracing, debugging and diagnostic tools. C# 6.0 C# 6.0 is the newest version released July 2015 with a stack of new features. Nameof expressions allow to get a string from program element name. Simpler syntax was added for null checking and string formatting. Exception filters and parameterless constructors in structs also were added. Syntax The syntax of C# is very similar with C++ and Java. Statements are ended with semicolons. Statements can then be grouped with curly brackets into code blocks. Variables can be assigned using a single equal sign and variables are compared by using two consecutive equal signs. Arrays can be declared by using square brackets and the same syntax is used to get a value at a given index. Namespaces also are directly copied from C++, so they work in the same manner. The entry point of C# program is the Main method. Only one Main method can exist and command line arguments are passed to it as an array of strings. The Main method usually returns void but returning an integer is also allowed. Features Variables in C# are used quite similarly to C++ and C. The programmer can declare a type and a name for a variable, or can use the var keyword since C# also supports

4 implicit variables. C# is a type safe and a strongly typed language. This means that every variable and constant has a type, as does every expression that evaluates to a value. A typical C# program uses types from the class library as well as user defined types. The C# compiler guarantees that values stored in variables are always of the appropriate type by using type information. For example, if you declare a variable of type int, the compiler allows you to use the variable in addition and subtraction operations. If you try to perform those same operations on a variable of type bool, the compiler generates an error. All variables must be definitely assigned before its value can be obtained, meaning that every variable must be declared with a value. In C#, arguments can be passed to parameters either by value or by reference. To pass a value by reference, the programmer must use the ref or out keyword. Passing by reference enables function members, methods, properties, indexers, operators, and constructors to change the value of the parameters and have that change persist in the calling environment. Memory management is employed automatically in C#. This frees developers from manually allocating and freeing the memory occupied by objects. Automatic memory management policies are implemented by a garbage collector. In short the life cycle of an object is as follows: 1. The object is created and memory is allocated for it. The constructor is run, and the object is considered live. 2. If the object cannot be accessed by any possible continuation of execution, excluding the running of destructors, the object is considered no longer in use, and it becomes eligible for destruction. The C# compiler and the garbage collector may choose to analyze code to determine which references to an object may be used in the future. 3. At some unspecified later time the destructor (if existing) for the object is run. 4. If the object cannot be accessed by any possible continuation of execution, including the running of destructors, the object is considered inaccessible and becomes eligible for collection. 5. Finally the garbage collector frees the memory associated with that object some time later. Though primarily an imperative language, some support for functional programming is provided. For example, C# supports first class functions and closures in the form of anonymous delegates. Also a lightweight syntax for lambda expressions is supported as is, extension methods and a list comprehension syntax in the form of a "query comprehension" language. CLI

5 C# is designed to be compiled into Common Language Infrastructure (CLI). Therefore most of the intrinsic types of C# correspond to value types implemented by the CLI. However, it is not required by the specification and therefore C# compiler can directly generate machine code if it wants to. CLI is an open specification which allows for multiple high level languages to be used on different environments without the need of rewriting the code. CLI is composed of Common Intermediate Language (CIL) and Common Language Runtime (CLR). CLI also is developed by Microsoft. Quirks and special features Unlike C++, C# does not support multiple inheritance. This was a design decision to avoid complication and simplify architectural requirements throughout the Common Language Infrastructure. Some functionalities of multiple inheritance can be provided by using interfaces, since a class can implement any number of interfaces, similarly as in Java. An interface is similar to a class, but has no implementation. The only thing it contains are declarations of events, indexers, methods and/or properties. The classes and structs that inherits the interface must provide an implementation for each interface member declared. Using multiple interfaces is mostly considered a reasonable substitute for multiple inheritance, but without the added complexity. C# supports operator overloading unlike Java. Only the most commonly overloaded operators in C++ may be overloaded in C#. These include, but are not limited to, some unary operators such as +,, true and false; binary operators such as +,, * and /; and comparison operators if overloaded in pairs (if == is overloaded then!= must be also). Comparison with Java and C++ C# is best compared to Java and C++, since those two languages act as a basis for its inception; C# was designed, in some extent, to combine the efficacy of C++ and the accessibility of Java. Java and C# are quite similar programming languages. They both are strongly typed, type safe and class based pure object oriented languages. They are both also designed with semi interpretation or runtime compilation in mind and use garbage collection. Their syntax is also similar, both being "curly brace languages" like C and C++.

6 So what are the differences? Well, Java is the more flexible of the two. Compiled Java code can be run on almost any operating system. This allows developers to use any compiler they want on any platform to compile code, with the assumption that this compiled byte code will run on any supported operating system. C# is currently only fully supported on some Windows operating systems, although this is changing. C# is a more complex language than Java but less complex than C++. This means that the programmer cannot really shoot himself in the foot when using Java when this is almost bound to happen with C++. C# is somewhere in between them, it can be as harmless as Java using safe code, but can be as dangerous as C++ as the programmer can declare a part of the code unsafe, using the unsafe keyword. This allows the programmer to access methods that would be normally permitted by the Common Language Runtime. When C# is compared to C++, there are more difference and issues. C# is much more limited than C++. Some major features of C++ are not available or have no reasonable alternative. In addition to the already mentioned multiple inheritance from classes, these include declaring objects on the stack, deterministic destruction and allowing default arguments as function parameters. Applications built in C# also perform worse than those built with C++. C# s intrusive garbage collector combined with the.net framework, that has a big runtime footprint and requires that several versions of the framework be installed, worsens the runtime and memory requirements of C# based applications. The.NET complete framework is only available on the Windows OS meaning that the support for C# is limited, although some open source versions provide most of the core functionality, bringing support for GNU Linux OS. Some positive differences are the native support from a garbage collector and C# being more type safe than C++. For example, C# does not allow implicit conversions to occur between Boolean and integer values. Also a subtler difference is when using reference variables. In C#, reference variables must be declared with a specific keyword, when in C++ this is not necessary. This can lead to some confusing situations in C++, mainly when someone unfamiliar with the code has to look for unexpected changes in variable values.

7 References: z_programming_languages_c_/ https://en.wikipedia.org/wiki/c_sharp_(programming_language) https://en.wikipedia.org/wiki/common_language_infrastructure https://en.wikipedia.org/wiki/c_sharp_syntax https://en.wikipedia.org/wiki/c_sharp_2.0 https://en.wikipedia.org/wiki/c_sharp_3.0 https://en.wikipedia.org/wiki/c_sharp_4.0 of new f eatures in c 5 0.aspx https://en.wikibooks.org/wiki/c%2b%2b_programming/programming_languages/co mparisons/c_sharp https://msdn.microsoft.com/en us/library/aa645596(v=vs.71).aspx https://msdn.microsoft.com/en us/library/ms aspx#tchwhatsdifferentbetweenc java https://msdn.microsoft.com/en us/library/67ef8sbd.aspx https://msdn.microsoft.com/en us/library/ms228628(v=vs.90).aspx

10266A: Programming in C# with Microsoft Visual Studio 2010

10266A: Programming in C# with Microsoft Visual Studio 2010 10266A: Programming in C# with Microsoft Visual Studio 2010 Course Overview The course focuses on the C# program structure, language syntax, and implementation details with.net Framework 4.0. This course

More information

Objectif. Participant. Prérequis. Remarque. Programme. C# 3.0 Programming in the.net Framework. 1. Introduction to the.

Objectif. Participant. Prérequis. Remarque. Programme. C# 3.0 Programming in the.net Framework. 1. Introduction to the. Objectif This six-day instructor-led course provides students with the knowledge and skills to develop applications in the.net 3.5 using the C# 3.0 programming language. C# is one of the most popular programming

More information

Course 10550A: Programming in Visual Basic with Microsoft Visual Studio 2010 OVERVIEW

Course 10550A: Programming in Visual Basic with Microsoft Visual Studio 2010 OVERVIEW Course 10550A: Programming in Visual Basic with Microsoft Visual Studio 2010 OVERVIEW About this Course This course teaches you Visual Basic language syntax, program structure, and implementation by using

More information

C# 3.0 Programming in the.net Framework (MS50150)

C# 3.0 Programming in the.net Framework (MS50150) Duration: 6 days Course Description: This course provides students with the knowledge and skills to develop applications in the.net Framework 3.5 using the C# 3.0 programming language. The C# 3.0 revision

More information

C# 5.0 Programming in the.net Framework 6 days Course

C# 5.0 Programming in the.net Framework 6 days Course 50150B - Version: 2.1-17/09/2016 C# 5.0 Programming in the.net Framework 6 days Course Course Description This six-day instructor-led course provides students with the knowledge and skills to develop applications

More information

Programming in C# Jump Start. Jerry Nixon Microsoft Developer Evangelist Daren May President & Co-founder, Crank211

Programming in C# Jump Start. Jerry Nixon Microsoft Developer Evangelist Daren May President & Co-founder, Crank211 Programming in C# Jump Start Jerry Nixon Microsoft Developer Evangelist Daren May President & Co-founder, Crank211 Meet Jerry Nixon Colorado Microsoft Developer Evangelist Reaching Professional & Student

More information

"Charting the Course to Your Success!" MOC Programming in C# with Microsoft Visual Studio Course Summary

Charting the Course to Your Success! MOC Programming in C# with Microsoft Visual Studio Course Summary Description Course Summary The course focuses on C# program structure, language syntax, and implementation details with.net Framework 4.0. This course describes the new enhancements in the C# 4.0 language

More information

> Essential C# 5.0. Mark Michaelis. with Eric Lippert. AAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis San Francisco

> Essential C# 5.0. Mark Michaelis. with Eric Lippert. AAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis San Francisco > Essential p C# 5.0 Mark Michaelis with Eric Lippert AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo

More information

Course 10266A: Programming in C# with Microsoft Visual Studio 2010 OVERVIEW

Course 10266A: Programming in C# with Microsoft Visual Studio 2010 OVERVIEW Course 10266A: Programming in C# with Microsoft Visual Studio 2010 OVERVIEW About this Course The course focuses on C# program structure, language syntax, and implementation detailswith.net Framework 4.0.

More information

Programming in C# with Microsoft Visual Studio 2010

Programming in C# with Microsoft Visual Studio 2010 Course 10266A: Programming in C# with Microsoft Visual Studio 2010 Course Details Course Outline Module 1: Introducing C# and the.net Framework This module explains the.net Framework, and using C# and

More information

Course 10266A: Programming in C# with Microsoft Visual Studio 2010

Course 10266A: Programming in C# with Microsoft Visual Studio 2010 Length Five days About this Course The course focuses on C# program structure, language syntax, and implementation detailswith.net Framework 4.0. This course describes the new enhancements in the C# 4.0

More information

C++ for Game Programmers

C++ for Game Programmers C++ for Game Programmers Course Description C++ has become one of the favourite programming language for game programmers. Reasons for wide spread acceptability of C++ are plenty, but primary reasons are,

More information

C#5.0 IN A NUTSHELL. Joseph O'REILLY. Albahari and Ben Albahari. Fifth Edition. Tokyo. Sebastopol. Beijing. Cambridge. Koln.

C#5.0 IN A NUTSHELL. Joseph O'REILLY. Albahari and Ben Albahari. Fifth Edition. Tokyo. Sebastopol. Beijing. Cambridge. Koln. Koln C#5.0 IN A NUTSHELL Fifth Edition Joseph Albahari and Ben Albahari O'REILLY Beijing Cambridge Farnham Sebastopol Tokyo Table of Contents Preface xi 1. Introducing C# and the.net Framework 1 Object

More information

Course: 10266A: Programming in C# with Microsoft Visual Studio 2010

Course: 10266A: Programming in C# with Microsoft Visual Studio 2010 Course: 10266A: Programming in C# with Microsoft Visual Studio 2010 Description: The course focuses on C# program structure, language syntax, and implementation detailswith.net Framework 4.0. This course

More information

Dotnet Online Course - Smart Mind Online Training, Hyderabad. Dotnet Online Training Course Content

Dotnet Online Course - Smart Mind Online Training, Hyderabad. Dotnet Online Training Course Content Faculty: Real time and certified Dotnet Online Training Course Content Introduction to.net Online Training NET FUNDAMENTALS Why Dot Net? The Dot Net initiative Introduction to Dot Net frameworks Advantages

More information

Essential C# s.o. Mark Michaelis with Eric Lippert. t Series. l., Addison-Wesley. publications.

Essential C# s.o. Mark Michaelis with Eric Lippert. t Series. l., Addison-Wesley. publications. t Series. Essential C# s.o publications. NET Development mprehensive inal series has ologies and tools. ment technologies, Titles and resources eveloper needs to ologies. Mark Michaelis with Eric Lippert

More information

Object-Oriented Programming in C# (VS2015)

Object-Oriented Programming in C# (VS2015) Object-Oriented Programming in C# (VS2015) This thorough and comprehensive 5-day course is a practical introduction to programming in C#, utilizing the services provided by.net. This course emphasizes

More information

Course Description - C# Programming

Course Description - C# Programming Course Description - C# Programming LEANID VAITSEKHOVICH BrSTU, 2012 Table of content 1. Introduction...2 2. Overview...2 3. Course Objectives...2 4. Course Duration...2 5. Prerequisites...2 6. Hands-On

More information

10266 Programming with C# using Microsoft.NET Framework 4

10266 Programming with C# using Microsoft.NET Framework 4 10266 Programming with C# using Microsoft.NET Framework 4 Microsoft - Programação Preço: 1380 ( Os valores apresentados não incluem IVA. Oferta de IVA a particulares e estudantes ) Nível: Intermédio Duração:

More information

M4.1-R4: APPLICATION OF.NET TECHNOLOGY

M4.1-R4: APPLICATION OF.NET TECHNOLOGY M4.1-R4: APPLICATION OF.NET TECHNOLOGY NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions. 2. PART ONE is to be answered in the TEAR-OFF

More information

C Programming Language CIS 218

C Programming Language CIS 218 C Programming Language CIS 218 Description C is a procedural languages designed to provide lowlevel access to computer system resources, provide language constructs that map efficiently to machine instructions,

More information

Object-Oriented Programming in C# (v. 2010)

Object-Oriented Programming in C# (v. 2010) Course ID MSN150 Object-Oriented Programming in C# (v. 2010) Course Description This thorough and comprehensive five-day course is a practical introduction to programming in C#, utilizing the services

More information

INTRODUCTION TO C# 0 C# is a multi-paradigm programming language which is based on objectoriented and component-oriented programming disciplines.

INTRODUCTION TO C# 0 C# is a multi-paradigm programming language which is based on objectoriented and component-oriented programming disciplines. 0 Introduction of C# 0 History of C# 0 Design Goals 0 Why C#? : Features 0 C# & Object-Oriented Approach 0 Advantages of C# 0 Applications of C# 0 Introduction to.net Framework 0 History of.net 0 Design

More information

09336863931 : provid.ir

09336863931 : provid.ir provid.ir 09336863931 : NET Architecture Core CSharp o Variable o Variable Scope o Type Inference o Namespaces o Preprocessor Directives Statements and Flow of Execution o If Statement o Switch Statement

More information

Evolution of the Major Programming Languages

Evolution of the Major Programming Languages 142 Evolution of the Major Programming Languages Object Oriented Programming: Smalltalk Object-Oriented: It s fundamental characteristics are: Data abstraction, Inheritance and Dynamic Binding. The essence

More information

ASP.NET Course Content

ASP.NET Course Content ASP.NET Course Content INTRO TO WEB TECHNOLOGIES HTML Client side scripting langs lls Architecture Server side programming with ASP ASP objects Intro ASP.NET INTRO What is ASP.NET ASP VS ASP.NET Image

More information

An Introduction to.net for the J2EE Programmer

An Introduction to.net for the J2EE Programmer An Introduction to.net for the J2EE Programmer Jeroen Frijters Sumatra Software b.v. jeroen@sumatra.nl http://weblog.ikvm.net/ Jeroen Frijters An Introduction to.net for the J2EE Programmer Page 1 Overview.NET

More information

Java Review (Essentials of Java for Hadoop)

Java Review (Essentials of Java for Hadoop) Java Review (Essentials of Java for Hadoop) Have You Joined Our LinkedIn Group? What is Java? Java JRE - Java is not just a programming language but it is a complete platform for object oriented programming.

More information

CONSOLE APPLICATION USING C#.NET

CONSOLE APPLICATION USING C#.NET Microsoft Visual Studio 2010 CONSOLE APPLICATION USING C#.NET 4.0 Module 1:.Net Architecture 4.0 Introduction to.net Framework Installing.Net Framework SDK Base Class Library Common Language Specification

More information

Summary. Pre requisition. Content Details: 1. Basics in C++

Summary. Pre requisition. Content Details: 1. Basics in C++ Summary C++ Language is one of the approaches to provide object-oriented functionality with C like syntax. C++ adds greater typing strength, scoping and other tools useful in object-oriented programming

More information

IT Fresher Training Program. Course Contents

IT Fresher Training Program. Course Contents IT Fresher Training Program Course Contents Following courses are covered as a part of Fresher Training program Introduction to.net C# ASP.NET Core Java Advance Java Concept Overview SQL Server & MySQL

More information

Programming with the Microsoft.NET Framework Using Microsoft Visual Studio 2005 (VB)

Programming with the Microsoft.NET Framework Using Microsoft Visual Studio 2005 (VB) Programming with the Microsoft.NET Framework Using Microsoft Visual Studio 2005 (VB) Course Number: 4995 Length: 5 Day(s) Certification Exam There are no exams associated with this course. Course Overview

More information

A C# program structure About variables Predefined Data Types Flow Control Enumerations Arrays Namespaces The Main() method. Console IO Comments

A C# program structure About variables Predefined Data Types Flow Control Enumerations Arrays Namespaces The Main() method. Console IO Comments Basics of C# What are we going to study? A C# program structure About variables Predefined Data Types Flow Control Enumerations Arrays Namespaces The Main() method Compilation of C# program Console IO

More information

SYSTEMS PROGRAMMING C++ INTRODUCTION

SYSTEMS PROGRAMMING C++ INTRODUCTION Faculty of Computer Science / Institute of Systems Architecture / Operating Systems SYSTEMS PROGRAMMING C++ INTRODUCTION Alexander Warg WHY C++? C++ is the language that allows to express ideas from the

More information

Introduction to Java A First Look

Introduction to Java A First Look Introduction to Java A First Look Java is a second or third generation object language Integrates many of best features Smalltalk C++ Like Smalltalk Everything is an object Interpreted or just in time

More information

OBJECT ORIENTED PROGRAMMING IN C++

OBJECT ORIENTED PROGRAMMING IN C++ OBJECT ORIENTED PROGRAMMING IN C++ For Off Campus BSc Computer Science Programme UNIT 1 1. The goal of programmers is to develop software that are. A. Correct B. Reliable and maintainable C. Satisfy all

More information

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

KITES TECHNOLOGY COURSE MODULE (C, C++, DS) KITES TECHNOLOGY 360 Degree Solution www.kitestechnology.com/academy.php info@kitestechnology.com technologykites@gmail.com Contact: - 8961334776 9433759247 9830639522.NET JAVA WEB DESIGN PHP SQL, PL/SQL

More information

Introduction To.NET Framework 3.5

Introduction To.NET Framework 3.5 What is.net Framework Microsoft.Net Framework is a programming infrastructure created by Microsoft for building, deploying, and running applications and services that use.net technologies, such as desktop

More information

Cross-platform IL code manipulation library for runtime instrumentation of.net applications

Cross-platform IL code manipulation library for runtime instrumentation of.net applications Cross-platform IL code manipulation library for runtime instrumentation of.net applications master thesis subject for Markus Gaisbauer (0256634) in cooperation with dynatrace software GmbH July 5, 2007

More information

MS10266: Programming in C# with Microsoft Visual studio 2010

MS10266: Programming in C# with Microsoft Visual studio 2010 40 HORAS INTRODUCTION The course focuses on C# program structure, language syntax, and implementation detailswith.net Framework 4.0. This course describes the new enhancements in the C# 4.0 language by

More information

Course MS10975A Introduction to Programming. Length: 5 Days

Course MS10975A Introduction to Programming. Length: 5 Days 3 Riverchase Office Plaza Hoover, Alabama 35244 Phone: 205.989.4944 Fax: 855.317.2187 E-Mail: rwhitney@discoveritt.com Web: www.discoveritt.com Course MS10975A Introduction to Programming Length: 5 Days

More information

Keywords Compared in Various Languages

Keywords Compared in Various Languages Keywords Compared in Various Languages Visual Studio 2010 This topic lists common programming tasks that can be summarized with a language keyword. For more information about tasks that need code examples,

More information

NET ENTERPRISE ARCHITECTURE 3.5. C#.NET Language Basics. Objects Oriented Programming

NET ENTERPRISE ARCHITECTURE 3.5. C#.NET Language Basics. Objects Oriented Programming C# NET ENTERPRISE ARCHITECTURE 3.5 5 Hours. Introduction to the.net platform. Common Language Run Time (CLR). The Common Type Specification (CTS). The Common Language Specifications (CLS). Microsoft Intermediate

More information

Object-Oriented Programming, Iouliia Skliarova

Object-Oriented Programming, Iouliia Skliarova Object-Oriented Programming, Iouliia Skliarova Data types define the way you use the storage (memory) in the programs. By specifying a data type, you tell the sompiler how to create a particular piece

More information

2. Names, Scopes, and Bindings

2. Names, Scopes, and Bindings 2. Names, Scopes, and Bindings Binding, Lifetime, Static Scope, Encapsulation and Modules, Dynamic Scope Copyright 2010 by John S. Mallozzi Names Variables Bindings Binding time Language design issues

More information

INTRODUCTION TO NEW FEATURES OF VISUAL BASIC 2010

INTRODUCTION TO NEW FEATURES OF VISUAL BASIC 2010 Review Article INTRODUCTION TO NEW FEATURES OF VISUAL BASIC 2010 1 Mayur Patel, 2 Neha Patel, 3 Nirmit Shah Address for correspondence 1 Department of Computer Engineering, 2 Department of Information

More information

Advanced Computer Programming

Advanced Computer Programming Hazırlayan Yrd. Doç. Dr. Mehmet Fidan COURSE POLICY Grading: Midtem1-2 : %15 Projects : %15 Quiz : %15 Final : %40 SYLLABUS Introduction to Programming Introduction to Microsoft Visual Studio Data types

More information

C# Programming in the.net Framework 2.0

C# Programming in the.net Framework 2.0 C# Programming in the.net Framework 2.0 50152: C# Programming in the.net Framework 2.0 (5 Days) About this Course This five-day instructor-led course provides students with the knowledge and skills to

More information

05 Case Study: C Programming Language

05 Case Study: C Programming Language CS 2SC3 and SE 2S03 Fall 2009 05 Case Study: C Programming Language William M. Farmer Department of Computing and Software McMaster University 18 November 2009 The C Programming Language Developed by Dennis

More information

REALbasic versus Visual Basic

REALbasic versus Visual Basic REALbasic versus Visual Basic By Jerry Lee Ford, Jr. November 2006 When is comes to the development of Windows applications, REALbasic s main competitor it Microsoft s Visual Basic programming language.

More information

Praktikum im Bereich Praktische Informatik Entwicklung eines Ray-Tracing Systems. computer graphics & visualization

Praktikum im Bereich Praktische Informatik Entwicklung eines Ray-Tracing Systems. computer graphics & visualization Praktikum im Bereich Praktische Informatik Entwicklung eines Ray-Tracing Systems Organizational Weekly Assignments + Preliminary discussion: Tuesdays 15:30-17:00 in room MI 02.13.010 Assignment deadline

More information

DOTNET TRAINING CURRICULUM

DOTNET TRAINING CURRICULUM DOTNET TRAINING CURRICULUM.Net Framework.NET Programming Framework.NET Languages VB.NET Versus VBScript Common Language Runtime.NET Class Library VB.NET and C#, some common differences Introduction to

More information

CS 16: Assembly Language Programming for the IBM PC and Compatibles

CS 16: Assembly Language Programming for the IBM PC and Compatibles CS 16: Assembly Language Programming for the IBM PC and Compatibles First, a little about you Your name Have you ever worked with/used/played with assembly language? If so, talk about it Why are you taking

More information

Visual C# 2012 Programming

Visual C# 2012 Programming Visual C# 2012 Programming Karli Watson Jacob Vibe Hammer John D. Reid Morgan Skinner Daniel Kemper Christian Nagel WILEY John Wiley & Sons, Inc. INTRODUCTION xxxi CHAPTER 1: INTRODUCING C# 3 What Is the.net

More information

MPI and C-Language Seminars 2010

MPI and C-Language Seminars 2010 MPI and C-Language Seminars 2010 Seminar Plan (1/3) Aim: Introduce the C Programming Language. Plan to cover: Basic C, and programming techniques needed for HPC coursework. C-bindings for the Message Passing

More information

1. THE JAVA PROGRAMMING LANGUAGE

1. THE JAVA PROGRAMMING LANGUAGE 1. THE JAVA PROGRAMMING LANGUAGE What is Java? Java programming language is a high-level language that can be characterized by all of the following buzzwords: Compiled and Interpreted Architecture neutral

More information

C# and Other Languages

C# and Other Languages C# and Other Languages Rob Miles Department of Computer Science Why do we have lots of Programming Languages? Different developer audiences Different application areas/target platforms Graphics, AI, List

More information

2. Compressing data to reduce the amount of transmitted data (e.g., to save money).

2. Compressing data to reduce the amount of transmitted data (e.g., to save money). Presentation Layer The presentation layer is concerned with preserving the meaning of information sent across a network. The presentation layer may represent (encode) the data in various ways (e.g., data

More information

Chapter 12. Support for Object-Oriented Programming ISBN

Chapter 12. Support for Object-Oriented Programming ISBN Chapter 12 Support for Object-Oriented Programming ISBN 0-321-33025-0 Chapter 12 Topics Introduction Object-Oriented Programming Design Issues for Object-Oriented Languages Support for Object-Oriented

More information

Application Development,.NET

Application Development,.NET Application Development,.NET Orsys, with 30 years of experience, is providing high quality, independant State of the Art seminars and hands-on courses corresponding to the needs of IT professionals. Orsys

More information

qwertyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyuiopasd fghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq

qwertyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyuiopasd fghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq qwertyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyuiopasd fghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq Introduction to Programming using Java wertyuiopasdfghjklzxcvbnmqwertyui

More information

Programming in C# with Microsoft Visual Studio 2010

Programming in C# with Microsoft Visual Studio 2010 Introducción a la Programación Web con C# en Visual Studio 2010 Curso: Introduction to Web development Programming in C# with Microsoft Visual Studio 2010 Introduction to Web Development with Microsoft

More information

C++ Programming: From Problem Analysis to Program Design, Fifth Edition. Chapter 2: Basic Elements of C++

C++ Programming: From Problem Analysis to Program Design, Fifth Edition. Chapter 2: Basic Elements of C++ C++ Programming: From Problem Analysis to Program Design, Fifth Edition Chapter 2: Basic Elements of C++ Objectives In this chapter, you will: Become familiar with the basic components of a C++ program,

More information

Advanced Systems Programming

Advanced Systems Programming Advanced Systems Programming Introduction to C++ Martin Küttler September 23, 2016 1 / 21 About this presentation 2 / 21 About this presentation This presentation is not about learning to program 2 / 21

More information

Chapter 5 Names, Bindings, Type Checking, and Scopes

Chapter 5 Names, Bindings, Type Checking, and Scopes Chapter 5 Names, Bindings, Type Checking, and Scopes Chapter 5 Topics Introduction Names Variables The Concept of Binding Type Checking Strong Typing Scope Scope and Lifetime Referencing Environments Named

More information

The C Programming Language course syllabus associate level

The C Programming Language course syllabus associate level TECHNOLOGIES The C Programming Language course syllabus associate level Course description The course fully covers the basics of programming in the C programming language and demonstrates fundamental programming

More information

CIS 24: Project 2. Introduction to C# Authors: Steven Hamilton Adam Brown. CIS 24 Mondays 6:30 9:10 Dr. Kopec

CIS 24: Project 2. Introduction to C# Authors: Steven Hamilton Adam Brown. CIS 24 Mondays 6:30 9:10 Dr. Kopec CIS 24: Project 2 Introduction to C# Authors: Steven Hamilton Adam Brown CIS 24 Mondays 6:30 9:10 Dr. Kopec Introduction: C# (pronounced Cee sharp), coauthored by Anders Hejsberg (designer of the Turbo

More information

Moving from CS 61A Scheme to CS 61B Java

Moving from CS 61A Scheme to CS 61B Java Moving from CS 61A Scheme to CS 61B Java Introduction Java is an object-oriented language. This document describes some of the differences between object-oriented programming in Scheme (which we hope you

More information

Advanced compiler construction. General course information. Teacher & assistant. Course goals. Evaluation. Grading scheme. Michel Schinz 2007 03 16

Advanced compiler construction. General course information. Teacher & assistant. Course goals. Evaluation. Grading scheme. Michel Schinz 2007 03 16 Advanced compiler construction Michel Schinz 2007 03 16 General course information Teacher & assistant Course goals Teacher: Michel Schinz Michel.Schinz@epfl.ch Assistant: Iulian Dragos INR 321, 368 64

More information

AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping

AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping 3.1.1 Constants, variables and data types Understand what is mean by terms data and information Be able to describe the difference

More information

Java Interview Questions and Answers

Java Interview Questions and Answers 1. What is the most important feature of Java? Java is a platform independent language. 2. What do you mean by platform independence? Platform independence means that we can write and compile the java

More information

Visual Basic. murach's TRAINING & REFERENCE

Visual Basic. murach's TRAINING & REFERENCE TRAINING & REFERENCE murach's Visual Basic 2008 Anne Boehm lbm Mike Murach & Associates, Inc. H 1-800-221-5528 (559) 440-9071 Fax: (559) 440-0963 murachbooks@murach.com www.murach.com Contents Introduction

More information

Microsoft C# Presentation. Team Members: Jon Limpalair, David Rak, Casey Long

Microsoft C# Presentation. Team Members: Jon Limpalair, David Rak, Casey Long Microsoft C# Presentation Team Members: Jon Limpalair, David Rak, Casey Long Relevant Paradigm and Problem Domains Paradigms: *Imperative, Object Oriented, Event-Driven, Type-Safe, Generic, Reflective

More information

Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies)

Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies) Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies) Duration of Course: 6 Months Fees: Rs. 25,000/- (including Service Tax) Eligibility: B.E./B.Tech., M.Sc.(IT/ computer

More information

Comparative Study of C, C++, C# and Java Programming Languages Mrs. Partibha 1, Mrs. Ashu Khokhar 2

Comparative Study of C, C++, C# and Java Programming Languages Mrs. Partibha 1, Mrs. Ashu Khokhar 2 Comparative Study of C, C++, C# and Java Programming Languages Mrs. Partibha 1, Mrs. Ashu Khokhar 2 1,2 Lecturer, PG Department of Computer Science, Jat College, Rohtak, Haryana ABSTRACT: By the comparative

More information

Chapter 12. Support for. Oi t Programming

Chapter 12. Support for. Oi t Programming Chapter 12 Support for Object-Oriented Oi t Programming Chapter 12 Topics Introduction Object-Oriented Programming Design Issues for Object-Oriented Languages Support for Object-Oriented Programming g

More information

BHARATHIAR UNIVERSITY: COIMBATORE CENTRE FOR COLLABORATION OF INDUSTRY AND INSTITUTIONS(CCII) CERTIFICATE IN ADVANCED PROGRAMMING C++ LANGUAGE

BHARATHIAR UNIVERSITY: COIMBATORE CENTRE FOR COLLABORATION OF INDUSTRY AND INSTITUTIONS(CCII) CERTIFICATE IN ADVANCED PROGRAMMING C++ LANGUAGE Certificate in Advanced Programming - C++ Language Page 1 of 7 BHARATHIAR UNIVERSITY: COIMBATORE 641046 CENTRE FOR COLLABORATION OF INDUSTRY AND INSTITUTIONS(CCII) CERTIFICATE IN ADVANCED PROGRAMMING C++

More information

Stack Allocation. Run-Time Data Structures. Static Structures

Stack Allocation. Run-Time Data Structures. Static Structures Run-Time Data Structures Stack Allocation Static Structures For static structures, a fixed address is used throughout execution. This is the oldest and simplest memory organization. In current compilers,

More information

(e) none of the above.

(e) none of the above. 1 The default value of a static integer variable of a class in Java is, (a) 0 (b) 1 (c) Garbage value (d) Null (e) -1 2 What will be printed as the output of the following program? public class testincr

More information

Synchronization in Java

Synchronization in Java Synchronization in Java We often want threads to co-operate, typically in how they access shared data structures. Since thread execution is asynchronous, the details of how threads interact can be unpredictable.

More information

ADTs and Modules in Java and C

ADTs and Modules in Java and C CMPS 101 Algorithms and Abstract Data Types ADTs and Modules in Java and C Introduction This document introduces the concepts of Modules and ADTs, and describes how to implement them in both Java and C.

More information

An Easier Way for Cross-Platform Data Acquisition Application Development

An Easier Way for Cross-Platform Data Acquisition Application Development An Easier Way for Cross-Platform Data Acquisition Application Development For industrial automation and measurement system developers, software technology continues making rapid progress. Software engineers

More information

The Java Series. Java Essentials I What is Java? Basic Language Constructs. Java Essentials I. What is Java?. Basic Language Constructs Slide 1

The Java Series. Java Essentials I What is Java? Basic Language Constructs. Java Essentials I. What is Java?. Basic Language Constructs Slide 1 The Java Series Java Essentials I What is Java? Basic Language Constructs Slide 1 What is Java? A general purpose Object Oriented programming language. Created by Sun Microsystems. It s a general purpose

More information

Object-Oriented Programming with C#

Object-Oriented Programming with C# Object-Oriented Programming with C# Description: Prerequisites: Audience: Length: This course introduces the student to writing object-oriented programs in C#. Prior study in object-orientation and UML

More information

Introduction to Microsoft.NET Programming Using Microsoft Visual Studio 2008 (VB) Course Overview. Prerequisites. Audience.

Introduction to Microsoft.NET Programming Using Microsoft Visual Studio 2008 (VB) Course Overview. Prerequisites. Audience. Introduction to Microsoft.NET Programming Using Microsoft Visual Studio 2008 (VB) Course Number: 6368A Course Length: 1 Day Course Overview This instructor-led course provides an introduction to developing

More information

The Decaf Language. The following are keywords. They are all reserved, which means they cannot be used as identifiers or redefined.

The Decaf Language. The following are keywords. They are all reserved, which means they cannot be used as identifiers or redefined. The Decaf Language In this course, we will write a compiler for a simple object-oriented programming language called Decaf. Decaf is a strongly-typed, object-oriented language with support for inheritance

More information

Course: Introduction to Java Using Eclipse Training

Course: Introduction to Java Using Eclipse Training Course: Introduction to Java Using Eclipse Training Course Length: Duration: 5 days Course Code: WA1278 DESCRIPTION: This course introduces the Java programming language and how to develop Java applications

More information

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program.

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program. Name: Class: Date: Exam #1 - Prep True/False Indicate whether the statement is true or false. 1. Programming is the process of writing a computer program in a language that the computer can respond to

More information

ASP.NET [ASP.NET SYLLABUS] 1. Web technology. Introduction to Client / Server Technology Server Side Technology DNS Web Server IIS

ASP.NET [ASP.NET SYLLABUS] 1. Web technology. Introduction to Client / Server Technology Server Side Technology DNS Web Server IIS ASP.NET 1. Web technology Introduction to Client / Server Technology Server Side Technology DNS Web Server IIS 2. Html Introduction Html Tags Html Controls Form Controls Form Submission Methods Navigation

More information

C Primer. Fall Introduction C vs. Java... 1

C Primer. Fall Introduction C vs. Java... 1 CS 33 Intro Computer Systems Doeppner C Primer Fall 2016 Contents 1 Introduction 1 1.1 C vs. Java.......................................... 1 2 Functions 1 2.1 The main() Function....................................

More information

CHAPTER 2 LITERATURE REVIEW

CHAPTER 2 LITERATURE REVIEW CHAPTER 2 LITERATURE REVIEW From the beginning to end, my project went through a series of small, but necessary changes. Once I began the programming the code and design interface phase of my design, I

More information

Lecture 1 Introduction to Android

Lecture 1 Introduction to Android These slides are by Dr. Jaerock Kwon at. The original URL is http://kettering.jrkwon.com/sites/default/files/2011-2/ce-491/lecture/alecture-01.pdf so please use that instead of pointing to this local copy

More information

Dot Net Training Course Syllabus. .NET Framework. ASP.Net

Dot Net Training Course Syllabus. .NET Framework. ASP.Net Dot Net Training Course Syllabus Our.NET training course objective is to get familiarize with Microsoft.Net, C#, VB.NET and ASP.NET technologies along with some third party tools like CSS, AJAX, JAVA Script

More information

8/31/2012. Object Oriented Software Development. C# classes. C# example class code

8/31/2012. Object Oriented Software Development. C# classes. C# example class code Object Oriented Software Development 3. Creating C# classes C# classes Create an OO program by writing classes Need to understand structure and syntax of C# classes Programming language syntax is the set

More information

Chapter 2: Problem Solving Using C++

Chapter 2: Problem Solving Using C++ Chapter 2: Problem Solving Using C++ 1 Objectives In this chapter, you will learn about: Modular programs Programming style Data types Arithmetic operations Variables and declaration statements Common

More information

COURSE CONTENTS. 3 -months 8:30 am - 3:30 pm Mon - Fri. [Admissions strictly through written test based on Basic C and Aptitude]

COURSE CONTENTS. 3 -months 8:30 am - 3:30 pm Mon - Fri. [Admissions strictly through written test based on Basic C and Aptitude] COURSE CONTENTS 3 -months 8:30 am - 3:30 pm Mon - Fri [Admissions strictly through written test based on Basic C and Aptitude] Subhash Programming Classes Revision: January, 2016 All rights reserved Call:

More information

Adjusted/Modified by Nicole Tobias. Chapter 2: Basic Elements of C++

Adjusted/Modified by Nicole Tobias. Chapter 2: Basic Elements of C++ Adjusted/Modified by Nicole Tobias Chapter 2: Basic Elements of C++ Objectives In this chapter, you will: Become familiar with functions, special symbols, and identifiers in C++ Explore simple data types

More information

C++ INTERVIEW QUESTIONS

C++ INTERVIEW QUESTIONS C++ INTERVIEW QUESTIONS http://www.tutorialspoint.com/cplusplus/cpp_interview_questions.htm Copyright tutorialspoint.com Dear readers, these C++ Interview Questions have been designed specially to get

More information

SL-110: Fundamentals of Java Revision 15 October Sun Educational Services Instructor-Led Course Description

SL-110: Fundamentals of Java Revision 15 October Sun Educational Services Instructor-Led Course Description Sun Educational Services Instructor-Led Course Description Fundamentals of Java SL-110 The Fundamentals of the Java course provides students, with little or no programming experience, with the basics of

More information

COMP 356 Programming Language Structures Notes for Chapter 5 of Concepts of Programming Languages Names, Types and Scopes

COMP 356 Programming Language Structures Notes for Chapter 5 of Concepts of Programming Languages Names, Types and Scopes Some definitions: COMP 356 Programming Language Structures Notes for Chapter 5 of Concepts of Programming Languages Names, Types and Scopes a name is a string of characters (a word) that represents a program

More information