C#基礎談(二)—- 建立第一個C#程式

來源:互聯網
上載者:User

    既然知道了C#是一個語言,那麼我們就把這個語言慢慢學好吧,很多參考書,包括MSDN的第一個例子都是"Hello World",那我們也遵照國際慣例吧。

   
首先建立你的第一個應用程式,C#是語言,不是工具,所以,要用C#開發程式,我們要使用支援C#語言的開發工具,現在市面上有很多的C#語言開發工具,
之前我說了,我是微軟的忠實使用者,而且C#就是微軟開發的,那我們自然是用微軟的Visual
Studio了。好的,那麼開始吧,開啟vs(當然你可能不一定使用vs,也可能是sharp
develop等等之類的C#開發工具,這裡我就以vs為例了),選擇左上方的“檔案”->建立,這裡你可以選擇“項目”,也可以選擇“網站”,都
無所謂的,因為我們這裡只介紹C#語言,並不介紹你如何開發winform或asp.net程式,這裡我們選擇“項目”,在彈出的“建立項目”對話方塊中的
左邊樹形列表中選擇"Visual
C#",那麼就會在右邊地區顯示已經安裝的模板,vs本身內建有多種模板,以供不同的程式開發人員選擇,當然也支援開發人員自己建立自己的項目模板,這個我們
以後可能會專門談一下。接下來,我們在“Visual
Studio已安裝的模板”中選擇“控制台應用程式”,如果你使用的是vs2008,你還會發現模板的右上方有個下拉框,讓你可以選擇建立項目的.net
framework版本,裡面有2.0,3.0和3.5,你可以根據自己的需要進行選擇,然後在下面的“名稱”和“位置”中填入你這個建立項目的名稱和在
電腦中的路徑,此時你會看到最底下的2行是關於解決方案的,預設就是為建立項目建立新的解決方案,解決方案有什麼用呢?比如現在的B/S系統,都分三層,
那麼就可以把這三層項目都放在同一個解決方案下,便於管理,也便於維護。回到主題,填寫好所有資訊後點擊“確定”,我們的第一個項目就建立完成了。

    
這裡我建立的是一個控制台程式,取名為CSharpBasic,當你在建立項目的對話方塊中點擊“確定”後,VS將會在你選擇的路徑下為你建立以下文
件:CSharpBasic.sln(如果你勾選了“建立解決方案”的話)和一個CSharpBasic檔案夾,檔案夾中又有如下內
容:CSharpBasic.csproj,Program.cs,bin檔案夾,obj檔案夾,Properties檔案夾。下面我們來一個一個說明這
些都什麼東西:

    1、.csproj:其實就是C Sharp Project的縮寫,代表C#專案檔,如果建立的是vb項目的話,就是vbproj,你只要用記事本方式開啟它,就會發現其實它就是一個XML檔案,裡面記錄了該項目的一些資訊,例如:

<?xml version="1.0" encoding="utf-8"?><br /><Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"><br /> <PropertyGroup><br /> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration><br /> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform><br /> <ProductVersion>9.0.30729</ProductVersion><br /> <SchemaVersion>2.0</SchemaVersion><br /> <ProjectGuid>{EDFF7D85-4E60-4767-94E0-0262B8EAB0F5}</ProjectGuid><br /> <OutputType>Exe</OutputType><br /> <AppDesignerFolder>Properties</AppDesignerFolder><br /> <RootNamespace>CSharpBasic</RootNamespace><br /> <AssemblyName>CSharpBasic</AssemblyName><br /> <TargetFrameworkVersion>v3.5</TargetFrameworkVersion><br /> <FileAlignment>512</FileAlignment><br /> </PropertyGroup><br /> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "><br /> <DebugSymbols>true</DebugSymbols><br /> <DebugType>full</DebugType><br /> <Optimize>false</Optimize><br /> <OutputPath>bin/Debug/</OutputPath><br /> <DefineConstants>DEBUG;TRACE</DefineConstants><br /> <ErrorReport>prompt</ErrorReport><br /> <WarningLevel>4</WarningLevel><br /> </PropertyGroup><br /> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "><br /> <DebugType>pdbonly</DebugType><br /> <Optimize>true</Optimize><br /> <OutputPath>bin/Release/</OutputPath><br /> <DefineConstants>TRACE</DefineConstants><br /> <ErrorReport>prompt</ErrorReport><br /> <WarningLevel>4</WarningLevel><br /> </PropertyGroup><br /> <ItemGroup><br /> <Reference Include="System" /><br /> <Reference Include="System.Core"><br /> <RequiredTargetFramework>3.5</RequiredTargetFramework><br /> </Reference><br /> <Reference Include="System.Xml.Linq"><br /> <RequiredTargetFramework>3.5</RequiredTargetFramework><br /> </Reference><br /> <Reference Include="System.Data.DataSetExtensions"><br /> <RequiredTargetFramework>3.5</RequiredTargetFramework><br /> </Reference><br /> <Reference Include="System.Data" /><br /> <Reference Include="System.Xml" /><br /> </ItemGroup><br /> <ItemGroup><br /> <Compile Include="Program.cs" /><br /> <Compile Include="Properties/AssemblyInfo.cs" /><br /> </ItemGroup><br /> <Import Project="$(MSBuildToolsPath)/Microsoft.CSharp.targets" /><br /> <!-- To modify your build process, add your task inside one of the targets below and uncomment it.<br /> Other similar extension points exist, see Microsoft.Common.targets.<br /> <Target Name="BeforeBuild"><br /> </Target><br /> <Target Name="AfterBuild"><br /> </Target><br /> --><br /></Project>

這裡面的資訊的含義,你沒有必要去知道,因為這些配置資訊,你是可以通過VS來設定的,當你用VS開啟這個檔案的時候,VS就會自動載入這個檔案裡的配置資訊,載入這個工程

   
2、Program.cs:cs就代表C
Charp檔案(如果建立的是VB項目,那麼就是Module1.vb),這裡面的代碼都是C#的代碼,而不能寫VB,javascript,java等
的代碼,當然你要寫也可以,別編譯就行,至於Program.cs裡面的內容,我們待會再講。

   
3、bin檔案夾:剛開始裡面可能只有一個名為Debug的檔案夾,裡面有一個.vshost.exe和一個.vshost.exe.manifest文
件,vshost.exe名為宿主進程,是 Visual Studio 2005
中的一項功能,能提高調試效能,支援部分信任調試並支援設計時錶達式計算。宿主進程檔案的檔案名稱中包含
vshost,並位於項目的輸出檔案夾中,善於調試的朋友應該就可以體會到這個東西的強大了,我們在調試的時候把滑鼠放在要調試的變數上,VS能幫我們計
算出這個值來,都是宿主進程的功勞,但是,啟用宿主進程可能會對某些 API
的調用產生影響。在這些情況下,有必要禁用宿主進程以返回正確的結果。禁用宿主進程的步驟如下:

  1. 在 Visual Studio 中開啟項目。

  2. 在“項目”菜單上單擊“屬性”。

  3. 單擊“調試”選項卡。

  4. 清除“啟用 Visual Studio 宿主進程”複選框。

禁用宿主進程後,將無法使用一些調試功能,或者將導致效能下降。

一般而言,禁用宿主進程後,將出現以下情況:

  • 開始調試 .NET Framework 應用程式所需的時間增加。

  • 設計時錶達式計算不可用。

  • 部分信任調試不可用。

    至於那個.manifest檔案,你用記事本去開啟,也可以發現它是一個XML檔案,用於組織和描述隔離應用程式及並行組件,其內部的資訊如<assemblyIdentity>元素則標識著一個唯一的程式集,和其他資訊一起,他們用於COM類、介面及庫的綁定和啟用,而這些資訊,以往都是儲存在註冊表中的。另外,Manifests也制定了組成程式集的檔案及Windows類。

 

    4、obj檔案夾:剛建立項目的時候裡面的檔案夾應該都是空的,那是因為你還沒有運行過程式,還沒有產生過中間代碼及臨時檔案,所以這裡面現在什麼都沒有。

    5、Properties檔案夾:裡面只有一個檔案,AssemblyInfo.cs,顧名思義,是程式集資訊檔,那什麼是程式集呢?這個我們以後再慢慢談。

 

    大致瞭解了VS給我們自動產生的檔案之後,我們回到VS裡來,看看都發生了什麼變化,可以看到“方案總管”中用樹形結構列出了這個項目的結構,首先是解決方案名稱,然後下一級是工程名稱,然後再下一級是項目的各個檔案夾及檔案。如果你的“方案總管”中沒有出現解決方案的名稱,可以通過以下方法設定:“工具”->“選項”->點選“項目和解決方案”->把“總是顯示解決方案”勾上即可。

 

    這次先講到這裡,下一篇我們再來講講這個項目的一些其他內容。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.