|
本帖最后由 hushaoxin 于 2015-12-14 09:20 编辑
从我身边看一些人学习C#的过程来看,我总结有两种模式
1、循序渐进模式
2、破解模式
循序渐进模式特点:
1、本来是计算机专业,对计算机有从硬件到软件全面的了解。
2、对Windows、Linux有比较全面的了解。
3、对面向对象编程思路有全面的、深刻的理解,至少有一门面向对象编程语言基础。
4、对.Net平台的架构也有个全面的了解和理解。
5、总的来说是本专业出身的,理解C#的概念简单一些,走的是正规军道路。
再说说我们电工使用C#的过程,我总结为破解模式:
1、对C语言、汇编语言有较深刻的理解,都是听说有C语言基础上手C#比较快。但是学习C#一般都是遇到一个问题解决一个问题,然后记住这种方法,一个个问题破解。
2、对计算机一知半解,对Windows只会用,偶尔能改改注册表,杀个毒,装个系统什么的。
3、没有面向对象编程基础,大概知道“类”这么个概念,什么构造函数,析构函数,那就晕菜了。
4、.Net平台是什么?没感觉
5、总的来说,由于有着一些编程语言基础,很快就能搞几个按钮点点,写几句代码,驱动个串口,做个简单网页,然后信心爆棚。
6、很难有提高,遇到什么问题都是baidu,baidu,baidu,baidu........
我就是以破解模式学习C#的,我身边有个电工,也是从破解模式硬是成长为一个高手了,但是那过程太艰辛了,想当年看他为了学习TCP/IP编程,硬是将TCP/IP卷一、卷二、卷三从头到位钻研,最后也算是小有成就,自己写了一个在单片机系统上的TCP/IP协议栈,C#的书籍那是堆成一堆一堆的,基本上京东上有的C#的书,他都买了,现在俨然高手一个,各种控件应用自如,做网页、应用软件我个人感觉完全达到专业水平,自己封装各种类,各种远程管理,SQL数据库也是用得很熟悉,产品都是自己做的远程监控界面。总的来说应付电工的做工控需求绰绰有余。现在都有想法去读个计算机专业的研究生(本身是学电力系统)。但他这种破解模式学习,过程太残酷了,头发掉得一把一把的。
再说说我的学习过程,看能不能引起一些共鸣:
1、为了实现各种显示功能,把VS能拖动的控件,基本都试了。
2、C#入门经典也在看,看了后觉得明白的还是明白,不明白的还是不明白,还不如自己试试更加直观。
3、基本上都是百度解决问题,一个问题看看各位大神怎么解决,坚决不复制代码,坚决不按照大神的代码变量名取名,尽量让自己先从感官上熟悉这些过程。各种解决办法都试一遍,不明白的记个笔记。
4、给自己定一个功能,努力的去实现,从以往学习单片机的思路来看,可以先不太懂,但是要不停的尝试,多了自然明白了。
再说说我现在会干点啥:
1、驱动个串口,搞个通讯,没啥问题。
2、操作access数据库,基本的查询、插入、删除没有什么问题。
3、做个简单的人机交互界面,搞个简单的多线程,保证界面不卡,是没问题的。
4、搞个socket通讯,多客户端。最近想通过socket通讯远程推送固件升级单片机程序,说白了是基于socket通讯的modbus(以往做过串口modbus推送固件),这种通讯方式我看modbus官方组织的白皮书里提到过,但没有哪家做?不知道为啥。不是TCP/IP ModBus,也不是RTU在TCP/IP上实现。具体可以看看modbus的官方网站的白皮书关于socket介绍。
5、读取个数据库,显示波形、历史记录啥的。
6、总的来说都是非常基础的操作,感觉没法提高。
说说我的困惑:
1、感觉这种破解模式的学习方法对于单片机适用,但对于C#这种大型的编程语言,有些不适用,需要“破解”的问题太多了。
2、每个问题只知道怎么做,不明白为什么,C#封装得太严密了,一切都是类,但我如何知道这个类有哪些方法、属性。
3、要记的东西太多了,而且没法连贯。打个比方C语言的指针啥的看似也很复杂,啥结构体指针、结构体数组指针、数组指针、字符串指针等等,但是有个共同点,那就是说白了还是一个地址而已,C语言我基本每写一句,大概知道翻译成汇编是什么样子的,而C#就感觉在天上飘啊飘啊,不着地。
4、永远都停留在表面,都是别人怎么弄,自己怎么弄,依葫芦画瓢,比如说我以往做的一个设备,量不多,也只有个一百台,自己做一个后台远程管理一下没有问题,但随着设备增多,I3处理器、4G内存,电脑居然开始卡了,你叫腾讯上亿用户怎么办。当然我采用比较笨的办法,每个设备socket.TCP/IP长连接,每个设备一个线程,数据量也很小。像这种问题基本上也是没有好办法。网上的例程都是很基础的,基本上都是做毕业设计使用的。
非计算机专业出身的电工学习C#太困难了,想成为高手感觉路漫漫,不知道有没有电工有我一样的困惑,求挺过去的电工指条路,我那位身边的电工,人很好,但是不大会分享。所以在这里发帖寻找同类人共勉,寻找高手指路。
都是一气呵成写的,没来得及检查,想到哪里写到哪里,给你的阅读造成麻烦,请见谅。
修改原因:修改几个错别字 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。
|