如同非常多刚開始学习的人一样,刚接触C#的时候,也是一头雾水,学习了好长时间,都搞不清楚一些基本名称是什么。什么是C#?什么是.net?什么是visual
studio?它们之间有什么关系?以下我们就从这几个问题入手,来探究C#。

关于上边的几个问题,我发现了一个神级的回答。假设我们把用开发软件比作写汉字,那么visual studio就是笔,.net
就是纸,C#就是汉字的书写规则,依次类推,我们就能够依照C#的规则,使用vs在.net上边编敲代码。

理解了这几个问题,我们就能够从C#的基础知识開始了,既然它是一种语言或者说是编程的规则,那么就能够跟我们之前学过的vb有一定联系。这两种语言必定会有共同点和不同点,我们从这些异同点入手,会更加easy理解。下边是我总结的这两种语言在语言基础的异同点。

通过比較,发现它们在语言环境、基本结构、和数据类型、运算符还是有一点区别的,C#也是微软公司开发,可是vb是基于对象的开发语言,C#是全然意义上面向对象的开发语言。C#还改进了数据类型,引入了值和引用数据类型;此外它还在基本结构上添加了命名空间,程序集等内容;相对于传统的程序控制结构,C#并没有做太大的改变,它继续沿用了传统的三大控制结构,顺序、选择和控制,仅仅是流程控制语句不太一样;运算符方面,也进行了创新,添加了溢出、兼容推断等keyword。以下是C#学习过程中的导图:

我把C#视频内容分为四个部分,公共基础部分,就是全部的程序设计语言都会有的内容;独有特征,C#所特有的部分;面向对象,C#的核心编程思想;软件project,程序设计必备知识。公共基础已经在上边提到,面向对象不是本博客探讨内容,软件project驶入案件开发内容,下边我将主要介绍C#的独有特征部分。

C#既然是一种独立于其它语言之外的编程工具,必定有它的独到之处,面向对象我们暂且不提,以下下来探讨它的独有特点。

运算符重载:运算符重载并非让运算符再出现一次,而是又一次对它进行定义,赋予它新的命令;

索引符:索引的作用就是能够让类像数组一样被标记并訪问;

字符串:C#中使用正則表達式实现字符串功能;

数据类型转换:这个功能实现了程序在执行过程中进行须要进行数据类型转换的功能。

托付:托付是一个类,它定义了方法的类型,使得能够把一个方法当做还有一个方法的參数来传递,增强了程序的可扩展性;

事件:类似于数据库中的触发器,当程序执行到某个步骤的时候,触发这个事件。

异常处理:如其它面向对象程序语言一样,当程序遇到反常情况下的异常(网络问题、文件丢失等)时,程序能够进行自行处理。

写到这里,C#的初步介绍就算完毕了,接下来会使用C#写一些程序,对C#的认识也会更加深刻。

C#初步接触的更多相关文章

  1. php大力力 [006节]初步接触认识phpMyAdmin

    phpMyAdmin 2015-08-22 php大力力006. 初步接触认识phpMyAdmin 以下是phpAdmin网络截图: 这是通过MAMP一键安装的. php中MyAdmin的使用-猿代码 ...

  2. avalon - 初步接触

    avalon - 初步接触 avalon的介绍http://rubylouvre.github.io/mvvm/ 按照作者的介绍,在HTML中添加绑定,在JS中用avalon.define定义View ...

  3. 初步接触CERNVM

    初步接触的来源是对ROOT数据分析工具的搜索,看到一个叫做Life as a Physicist的国外博客.知道了这个包含容器分发的软件,跟重要的是,这个欧洲核子中心开发的平台,对于我等科研人员是一大 ...

  4. Spring boot -环境搭建 ,初步接触(1)

    1. Eclipse 创建 maven project  项目目录如下: 2. pom.xml  配置文件 <project xmlns="http://maven.apache.or ...

  5. 为什么要使用puppet 及初步接触

    为什么要使用puppet 及初步接触   1.简介 云计算环境下,密度高,机器数量多,还要求弹性和伸缩性,这对于运维提出更高的要求.系统管理员需要经常安装操作系统,对系统参数进行配置和优化,对人员进行 ...

  6. 初步接触html心得

    接触HTML大概有七天,做一下小总结,过过记忆. html大致可分为三部分:Dtd头.Head.Body三大部分. Dtd头:是用于浏览器编辑的,也就是俗话说的给电脑看的的东西. Head:内细分下大 ...

  7. 实验记录一 初步接触cortex-M3

    应该说老早就在接触cortex-M3了.曾经没想到会接触嵌入式,结果由于导师的缘故.在选择项目管理时,就呵呵了.不废话.搭配环境非常easy,纯粹傻瓜式.可由于自己的马虎,却让自己一直困惑. 记得在前 ...

  8. java_web学习(四) 二维表的制作(初步接触MVC)

    我们需要做一个jsp页面,动态显示信息表的内容. 一.需求分析 1.  做一个实体类:StudentInfo (包含4个字段) 2.  如图模拟生成3条数据,本质上就是new StudentInfo ...

  9. Qt-QML-Loader初步接触

    先说说为什么用到了QML的Loader,这里我就要先扯点别的,那就是QML自带的ColorDialog,QML的机制 是优先调用系统提供的ColorDialog,如果系统的ColorDialog的不可 ...

随机推荐

  1. POJ22230 Watchcow (欧拉回路)

    Watchcow Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 6477   Accepted: 2823   Specia ...

  2. JAVA JNI

    jni非常好的一篇文章 http://m.blog.csdn.net/article/details?id=22827307 JAVA JNI介绍 http://blog.csdn.net/cyg08 ...

  3. 关于《平安iOS面试》小结

    面了下平安好医生iOS职位,结果不是很理想,也就是GG.写此文的目的在于,时刻提醒自己应该学到老,不要安于现状.也给那些以后去面试的coder一些"剧透"! 一.第一轮 妹子 面试 ...

  4. visual studio 2010 C语言声明异常

    如下这段程序,是C_Primer_plus_第五版内的一个复习题答案(感觉声明i的值有问题),在GCC上面可以运行,但是移植到VS2010就一堆错误, #include<stdio.h> ...

  5. ArcGIS添加鹰眼

    axMapControl1是主地图 axMapControl2是鹰眼地图 private void axMapControl1_OnExtentUpdated(object sender, IMapC ...

  6. 设置Proxy Server和SQL Server实现互联网上的数据库安全

    ◆首先,我们需要了解一下SQL Server在WinSock上定义协议的步骤: 1. 在”启动”菜单上,指向”程序/Microsoft Proxy Server”,然后点击”Microsoft Man ...

  7. PHP学习笔记五【方法】

    <?php $num1=34; $num2=90; $oper="+"; $res=0; switch($oper) { case "+": $res=$ ...

  8. JQ 事件

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. 原生的UITableViewCell高度自适应,textLabel自动换行显示

    /* * 设置子项cell **/ - (UITableViewCell *)getChildCell:(UITableView *)tableView and:(NSIndexPath *)inde ...

  10. MySQL安装配置过程

    1.下载压缩包,解压: 2: 修改  my-default.ini 文件 将一下代码前# 去掉修改成自己的地址 # These are commonly set, remove the # and s ...