1. C# 是一種計算機語言
(1)微軟開發
(2)微軟爲.NET技術平臺的開發語言,是由C、C++、Java發展而來的計算機高級語言。
(3)什麼是.NET?是微軟用來實現XML、Web Services、SOA和敏捷性的技術。
可以這麼說,通過微軟開發出來的產品都使用的是.NET技術。
(4)什麼是.NET Framework?
其實.NET是一個比較抽象的概念,.NET Framework就是把.NET落到了實處。
它是實現.NET這個技術所需要的資源庫。C#語言,微軟已經提供了大量的資源庫(現成的模塊)
,平時開發的時候,我們只需要調用就行了。我們做開發都是站在巨人的肩膀上。
它是.NET所需平臺,包括虛擬機、即時編譯器、類庫、各種建立在.NET上的技術,比如ASP.NET
WCF WF WPF,也包括語言規範、編程語言等等。(說的簡單一下就是它是實現.NET這個技術所需要的資源庫)
(5)什麼是Visual Studio?
它是基於.NET Framework的開發的工具(產品)
2. C#之父
(1)Anders Hejlsberg
C#專門爲Microsoft.NET程序框架而創造的語言
(2)爲什麼要學習C#
C#擁有豐富的類庫,對於初學者來說相對來說比較簡單的
C#是完全面向對象的、類型安全的語言
程序開發的邏輯和麪向對象的概念都是一樣,C#學好,Java完全不是問題
對微軟產品比較熟悉
3. 學習C#後期可選擇的方向
(1)桌面應用程序--Windows Form 窗體
(2)Internet應用程序--Asp.net
比如:MSDN、CSDN、攜程、京東、噹噹網...
(3)手機應用程序--windows Phone
現在window phone用的比較少 Android iOS比較多
(4)Unity3D遊戲開發或者虛擬現實
Unity3D後臺用的語言是C#
(5)微軟產品二次開發:活動目錄、SharePoint、Dynamics CRM、Dynamic AX
4. .NET開發環境的搭建
(1)操作系統 windows7企業版以上
(2)數據庫平臺:SQL Server 2008 R2/2012/2014/2016
(3)軟件平臺:Visul Studio 2010以上
5. 控制檯應用程序
類似DOS
演示:輸入兩個小於1000的 正整數,求兩個數的和
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyCalculator01
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("我的計算器"); //Console.WriteLine()輸出後帶回車的
Console.WriteLine("========================");
Console.Write("請輸入第一個數字:"); //Console.Write()不帶回車
int num01 = Convert.ToInt32(Console.ReadLine()); //定義個變量num01保存輸入的值 因爲屏幕輸入的是字符串,所以要轉換成int
Console.Write("請輸入第二個數字:"); //Console.Write()不帶回車
int num02 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("計算結果:{0}+{1}={2}",num01,num02,num01+num02); //{0}{1}{2}爲佔位符
Console.WriteLine("計算完成!!!");
Console.WriteLine("========================");
Console.ReadKey(); //讓程序等待
}
}
}
漏洞分析:
(1)程序存在的漏洞
如果輸入的是空格、字母、什麼都不輸入等非數字字符,軟件會崩潰,
(2)題目要求的是輸入兩個小於1000的正整數,這裏輸入兩個負數照樣會等到結果,這叫不符合客戶的要求
namespace MyCalculator01
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("我的計算器"); //Console.WriteLine()輸出後帶回車的
Console.WriteLine("========================");
InputNum01: //標籤
Console.Write("請輸入第一個數字:"); //Console.Write()不帶回車
string str01 = Console.ReadLine();
//判斷有沒有輸入(空格也算沒有輸入)
if (str01.Trim().Length == 0)
{
Console.WriteLine("沒有輸入有效的字符!");
goto InputNum01;
}
InputNum02: //標籤
Console.Write("請輸入第二個數字:"); //Console.Write()不帶回車
string str02 = Console.ReadLine();
//判斷有沒有輸入(空格也算沒有輸入)
if (str02.Trim().Length == 0)
{
Console.WriteLine("沒有輸入有效的字符!");
goto InputNum02;
}
//Console.WriteLine("計算結果:{0}+{1}={2}",num01,num02,num01+num02); //{0}{1}{2}爲佔位符
Console.WriteLine("計算完成!!!");
Console.WriteLine("========================");
Console.ReadKey(); //讓程序等待
}
}
}