1 why c# and why.net in the undergraduate is curriculum isecon november 3 -7, 2004, newport, ri...

19
1 Why C# and Why .NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi Raoufi Southwestern Oklahoma State University John Maniotes Purdue University Calumet

Upload: shanon-underwood

Post on 25-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

1

Why C# and Why .NET in the Undergraduate IS

CurriculumISECON November 3 -7, 2004, Newport, RI

Association of Information Technology Professionals

Mehdi Raoufi Southwestern Oklahoma State University

John Maniotes Purdue University Calumet

Page 2: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

2

INTRODUCTION What is C#? What is .NET?

C# is Microsoft's latest object-oriented programming language developed for .NET platform and .NET is Microsoft’s latest platform technology for creating web services

C# is a C++ based language and was developed to provide portability for distributed applications over network and internet

Application development in .NET platform can be done in multiple languages including C#, C++, and Visual Basic

Page 3: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

3

What is C# and .NET?

Programs developed in all of these languages are compiled to Microsoft’s Intermediate Language (IL) and executed within Common Language Runtime (CLR) similar to Java code that is translated to bytecode and executed by VML (Virtual Machine Language)

.NET is not a programming language; it's a virtual-machine technology

Page 4: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

4

What is C# and .NET?

.NET has a framework that provides capability to run a variety of web applications

The .NET framework class library provides a set of classes that provide essential functionality for applications built within the .NET environment

Web functionality, XML support, database support, and distributed computing support is provided by the .NET framework class library

Page 5: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

5

What is C# and .NET?

.NET codes are translated to Microsoft Intermediate Language (IL) and run within CLR

A single .NET application may consist of several different languages

ASP.NET is an upgraded version of Active Server Pages (ASP). Developers can create COM objects in Visual Basic, Visual C++ or C# and then use ASP.NET page to call on those objects for a web interface

Page 6: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

6

Teaching First Programming Course Using C#

Both C# and Java improve on C++ in a similar ways

We will be explaining weaknesses of Java as an introductory programming language

Page 7: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

7

Teaching First Programming Course Using C#

Java has several weaknesses as introductory level programming language

It forces novices to learn several sophisticated concepts even to write a very simple program

Students who are new to programming should sort through some complicated issues before learning the main programming concepts

Page 8: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

8

Teaching First Programming Course Using C#

This becomes very frustrating with some students who discard programming without giving it a good chance to succeed

One of the difficulties of Java for beginning students is standard input

Input operations in Java are very complicated for beginning students to understand

Page 9: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

9

Teaching First Programming Course Using C#

To read a simple integer or a real value from console a student should use a large number of codes, which include while loop, Boolean variable, string operations, wrapper classes and exceptions

To read a simple integer using GUI, students should learn GUI before writing a simple program, which requires input

Page 10: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

10

Teaching First Programming Course Using C#

Another difficulty with Java is exception handling; Java requires every method to catch the exception generated in the body of program or verify the possibility of these exceptions in a “throws” clause

Java programmers should learn and use exception for a simple program

Page 11: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

11

Teaching First Programming Course Using C#

In an introductory course, usually students are left to choose from many different environments to compile and run a Java program

In many cases, beginning students are required to use too much effort without proper guidance to download software, and configure their computer to run a simple Java program

Page 12: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

12

Teaching First Programming Course Using C#

This makes some students so frustrated that they put programming away without giving it a fair chance to succeed

Students are overwhelmed with number of environments and how to choose the best one

Page 13: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

13

Teaching First Programming Course Using C#

These environments range using command line to compile and execute a Java program using notepad, to smart editors as textpad, or IDE (Integrated Development Environment)as JBuilder

Students, who do not use IDE have difficulty developing a medium size program and difficulty dealing with large number of classes and their methods

Page 14: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

14

Teaching First Programming Course Using C#

Microsoft has made using its Visual Studio .NET available almost for all students in institutions of higher learning with a nominal fee of a few dollars

Using Visual Studio .NET gives a single easy way to learn IDE for students who are using C# as an introductory language

Students use skills learned in IDE of Visual Studio .NET to learn other programming languages in .NET environment (VB .NET)

Page 15: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

15

Teaching First Programming Course Using C#

The concept of using “getter” methods to encapsulate internal object properties is a design pattern that spans object-oriented languages. It isn't limited to C# or Java.

C# has taken the concept of properties a step further by actually building “getter” methods into the language semantics.

Page 16: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

16

Teaching First Programming Course Using C#

An object property has a type, a set method, and a get method. The set and get methods of the property determine how the property's value is set and retrieved

Page 17: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

17

Conclusion

C# provides a more proper language for teaching introductory course for beginning students

Microsoft Visual Studio .NET provides a more proper environment to teach introductory course for beginning students

Java platform is neutral with respect to operating systems

Page 18: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

18

Conclusion

On the other hand, we cannot ignore the tremendous financial and technical resources of Microsoft

Microsoft is the dominate force on the PC Windows Operating Systems. If C# .NET is released from its Windows dependency, we think that Microsoft's dominance and financial muscle may propel C# over Java in the IT community

Page 19: 1 Why C# and Why.NET in the Undergraduate IS Curriculum ISECON November 3 -7, 2004, Newport, RI Association of Information Technology Professionals Mehdi

19

Conclusion

Questions

Comments

Observation