龙空技术网

C#编程初探(1)学前准备

自由践行 3194

前言:

而今小伙伴们对“c语言的矩阵怎么编程”可能比较珍视,小伙伴们都需要知道一些“c语言的矩阵怎么编程”的相关资讯。那么小编在网上搜集了一些有关“c语言的矩阵怎么编程””的相关资讯,希望兄弟们能喜欢,你们一起来学习一下吧!

从今天开始进行C#教学专栏的创作,计划用是2年的时间写50~100个专栏。目标是让每一个想学C#编程的零基础小白都能入门。

专栏内容各有侧重点,大家可以根据自己的情况有选择的进行学习。

第一个专栏(本专栏)的名叫《C#编程初探》,目标是让一个零基础的小白了解到学习C#是什么,能用它来做什么,以及如何开始C#编程、到实现第一个可以运行的程序。

C#的来历

C#是C Sharp的简写,读做“C煞普”,也有人掺杂了方言读成“西井”,我第一次听到都憋不住乐。C#是一位名叫安德斯·海尔斯伯格(Anders Hejlsberg)的丹麦小伙在微软公司时主持开发的,大名鼎鼎的Delphi也是这个伟大的家伙主持开发的,他被同时誉为Delphi和C#之父。有关于C#的历史和恩怨情仇,这就说来话长了,有兴趣的读者可以参考下我曾经写过的一篇文章:给大家说说C#的来历。

安德斯·海尔斯伯格(Anders Hejlsberg)

至于C#这个名称的来历,网上有几个版本。我比较倾向的是这个逻辑:一般认为C++比C要高级,然后比C++更高级的就是C++++,但是这样写太长了,所以摞起来就是C#。

C#能做什么

C#能做的事情可太多了

基于Windows系统下的工具软件

包含但不限于管理信息系统、维护工具、调试工具、工控软件、windows服务、数据采集、批量处理、图形图像、网络工具等等一切windows系统下的软件。

B/S架构的网页应用及后台

大中小型的各类企业网站,后台应用、微服务等等还有些新的技术框架我都叫不上来名。

苹果、安卓下的APP

苹果和安卓系统下运行的各种原生应用。

游戏

主要是基于Unity做跨平台的游戏,游戏界的顶流王者荣耀就是用它搞的。

可以说,基本上市面上能见到的软件产品,用C#都可以实现,可以说是无所不能。我本人也是自2006年之后从VC转成C#后,就很少再用其他语言做开发了。我的6-7款软件产品和官网都是用C#来开发的。

与其他语言相比的优劣

在2022年12月份的统计中,C#在所有编程语言中占比为第5位。

2022年12月 编程语言排行前10

Python是脚本语言,属于胶水语言,跟谁都能搭上,缺点是运行效率差很多,不适合做软件产品;主要应用场景是用于科学计算、人工智能、个人小工具等;

C和C++属于王者,环境依赖最小,运行效率第一,缺点是学习难度较大,开发成本较高,开发效率相对低些。主要应用场景是硬件、驱动、高并发服务器等;

Java适用面很广,啥都能干,框架多,上手快,入门难度相对较低,是培训学校和打工者的首选语言,找工作相对容易;缺点是Windows系统下的软件产品占用内存较高,运行效率较差。由于历史原因,国内许多大厂都是以Java为主,切换到其他语言一需要试错,二是人才数量不够;

C#介于C/C++与Java之间,国内用的人明显没有Java多。也是基本啥都能干,运行效率不比C/C++慢,与Java相比Windows系统下表现优越。之所以普及度不够,是因为微软的战略失误,跨平台开展的太晚了,现在.net core虽然可以跨平台了,但是市场大部分也都让Java占据了,不过这些年随着.net core的发展,在跨平台开发上也陆续有了一定的市场份额。我个人认为它是个人软件开发者的最佳选择。

要想学会有哪些条件

英文要懂一点

主要是开发过程中需要使用大量的类库,这些类库绝大部分都是用英文来命名的,英文熟练的话就很容易理解含义,快速定位。

要有兴趣

编程需要极强的专注力,有时候为了解决某个问题甚至需要进入“入定”的状态。如果没有兴趣,长时间的坐在电脑前可能就会觉得如坐针毡,效率低是一方面,很有可能就一直卡在那里无法突破。

逻辑思维要稍强些

编程是讲因果的。之所以看到这样的结果,必然是因为你的代码写成了那个样子。所以,在编写的过程中,你要预判你的代码会怎样执行;反过来,看到问题,你要去追溯,找到是哪些代码引起的问题。

数学要稍微懂点

在做某些编程时,需要用到一些数学知识。最基本的比如加减乘除、取余取整、进制转换、位运算等等这些小学初中都学过,图形图像方面可能需要平面坐标系、坐标转换、各种比例换算、各种三角函数等等这些高中的知识,3D游戏就涉及到三维坐标系、矩阵、向量等大学的知识,人工智能就涉及到微积分、概率、最优解等等,再往上就超出我认知了。应该说数学知识可以决定你涉及领域的上限,我是大专,高数学的也不好,所以3D游戏就已经是我无法触及的了。

当然,任何限制在兴趣面前都可以突破,只要你想学,就没什么学不会的。至于学历,我个人认为没啥关系。大部分应用级的编程,只要高中毕业都可以完全学会,有兴趣的中小学生也未尝不可。

小白能学得会吗

我写这些专栏的定位就是面向什么都不会的小白。

我会结合每个专栏的目标,从最基础的讲起。可能每个专栏讲的内容不多,但会讲得很细。细到为什么要这样,它的原理是什么,目的就是让小白能够充分理解,只有真正的理解才能灵活运用。

当然每个人的情况都不同,我也不可能保证每个看了我专栏的人都能100%理解并掌握,我能做的就是尽可能认真的写好每一篇专栏。至于自己适不适合这种学习方式,能否接受我这种写作风格,需要你们自己来考量。

教程的形式

之前在写教程的时候,有网友建议我采用视频的方式。

确实很多教学都采用了视频的方式,不过我并不认为视频的方式更好。

图文你哪里没看懂,就停在哪里,联系上下文可以反复再看,更有利于思考和理解,效率更高;视频你就一直听我讲,根本都没有思考的时间,等听完了,回过头来啥也想不起来了,至少我看视频是这种感觉;

还有一个重要的原因,我做什么都比较慢,做图文慢,做视频更慢:(

大家有什么想要学习的方向,也可以发上来,我集中参考下,慢慢的排入计划:)

标签: #c语言的矩阵怎么编程