C#最大的缺点就是可记忆度太低。

电动飞机制造商 2021-02-04 02:06:14
要做一件事的时候,该怎么搭建流程,该应用哪些类、属性和方法,根本就是一头雾水。一个类有哪些属性和方法,事先根本不知道。这让我这个来自于PLC编程的人真的很不适应。
PLC要做一件事,该搭建的流程和该应用的指令是非常清晰的,不需要强记。指令就在工具箱里,直接拉过来就可以用。各数据从哪里、到哪里去,都有位置(比如DB块、M区、I区和Q区)。
说C#难的,我觉得主要就是因为它需要人们去强记。如果不要强记,由C#就不算一门难懂的语言。然而,强记是好事吗?显然不是。强记只是它的无可否认的缺点。
...全文
2456 62 打赏 收藏 转发到动态 举报
写回复
用AI写文章
62 条回复
切换为时间正序
请发表友善的回复…
发表回复
JDD1997 2021-02-18
  • 打赏
  • 举报
回复
看得我茅厕顿开.
luj_1768 2021-02-12
  • 打赏
  • 举报
回复
可以与微软中国,传新国际,或者BAT华为,这样的大公司交流,看看哪家合适(这种工作小公司做不下来,只能找顶级公司合作)。
luj_1768 2021-02-12
  • 打赏
  • 举报
回复
系统剪裁常常涉及版权,即使开源软件和免费软件也是如此。另外的技术要领就是闭包测算,既需要懂计算机技术还需要懂专业技术;然后就是依赖封闭;然后就是优化与维护。所以,一定要找软件厂商配合,才能够做到。
wanghui0380 2021-02-12
  • 打赏
  • 举报
回复
所以你真想做 1.抽象出Trasnfer层,这个微软已经给了你抽象IDuplexPipe接口,在其基础上封装好所有你自己常用的Trasnfer工具箱(COM,TCP,串口,蓝牙--------------) 2.抽象出协议解析层----------------------这个可以参考netty的coder编解码(本来dotnetty其实就是可以用的东西,不过一是他是azrue组练手的项目,现在已经停止更新,二是他是仿的java的设计,很多东西在netcore下显得多余,比如内存管理,线程池调度这类东西netcore本来就有,在弄个仿java的设计就毕比较多余,况且netcore本身已经把他的精华抽取出去了,所以直接在netcore下设计更精简点。所以者这东西唯一可以做参考的就是他的coder编解码部分) 3.抽象出一个通用使用层--------------那个就可以参考这个Rsocket了,很明显这个使用层接口已经相当完备了,就算在要进行往下的扩展,顶多是跟go学个Chanel 4.使用一个合适总线层----------目前总线层项目不要太多了,我就不讲了 5.最后这一层我个人就不想封了,总的留点余地给后续项目扩展。比如你说的,我要A+B的时候做C,我们可不是神仙,什么都能考虑到。我们只能说,我保证你可以随时随地可以加个A,也可以加B,还可以写个C让C根据A和B的状态执行动作(对,如果你把上面4个都做了,这个5其实并不是难事,换成个水货程序员他就是用最傻的定时器给我定时轮询A和B也搞了,所以这到不是我现在考虑的事情。起码最水的人都可以往下搞,项目可以往下进行下去,顶多是俺们coder review不给他过,告诉他下次在做的时候怎么做更好点就是)
wanghui0380 2021-02-12
  • 打赏
  • 举报
回复
引用 59 楼 电动飞机制造商 的回复:
[quote=引用 58 楼 luj_1768 的回复:]啊。工业应用。可能需要先剪裁一下系统,确定一个很小的工作集:比如,建立一个namespace{}; 然后根据设计选型需要,把要用到的域、库、结构、对象、统统拉进来(相关工作可能需要软件提供方配合),以后就可以在这个稳定基界上安全地进行开发与维护。虽然初期费用可能比较高,但是长远来看、成本一定比使用公用版本低不少。
还有专门的工具箱。 其实中国要是有人做这种版本的C#,一定很有前途。可惜我刚学这个,开发不了[/quote] 实际上呢,东西都有!而且很多,只是那个XX园的一个是看不清的喜欢瞎嚷嚷,而看的清的自己用了就是,懒得跟他们扯皮。(你就是真告诉他们,他们也不会听不回看的,因为他们的心不在上面) 如果你真有这个心,去搞这个。建议放开些,多看看最近这些年的东西 1.先看一下Azure 的东西,包括Azure IoT,Azure eventbus(放开些,大的,小的,云上的,本地的其实都一样。哪怕那个园子里整天嚷嚷的DDD,微服务。你要真看明白了,他们其实都是一模一样的设计。这里我先按下不表,最后来说) 2.在看看上次给你说的Rsocket,想想你另一个帖子。想想看这个玩意除了他是socket的范例,他还是什么? 一个transfer层就只是tcptransfer么,他可以是comtransfer不,可以是udptransfer不 他的核心业务接口逻辑:主从问答,双工问答,只发不答,流式订阅设计为啥如此
public interface RSocket extends Availability, Closeable {
    /** 
    * 推送元信息,数据可以自己定
    */
    Mono<Void> metadataPush(Payload payload);
    /**请求/响应
    * 当你发送一个请求并接收一个响应时,该协议也比 HTTP 更具优势,因为它是异步且多路复用的
    */
    Mono<Payload> requestResponse(Payload payload);
    /**即发即忘
    * 请求/响应的优化,在不需要响应时非常有用,比如用于非关键事件的日志记录
    */
    Mono<Void> fireAndForget(Payload payload);
    /**请求/流
    * 类似于返回集合的请求/响应,集合将以流的方式返回,而不是等到查询完成,例如,发送一个银行帐号,使用一个实时的帐户事务流进行响应
    */
    Flux<Payload> requestStream(Payload payload);
    /**通道
    * 允许任意交互模型的双向消息流
    */
    Flux<Payload> requestChannel(Publisher<Payload> payloads);
    /**健康度检查
    * double值可以作为权重,如1.0表示处理能力非常好,0.8一般
    */
    default double availability() {
        return isDisposed() ? 0.0 : 1.0;
    }
当我们忽略所有的transfer,无论用什么transfer 都可以用这个接口,他会怎么样。 是的,东西不是没有,好东西多的是。但是你要看的清 用你另一个帖子来说。 假设你说你是西门子的S7协议又如何呢? 一个comTransefer,一个S7协议解析(当然这个玩意rsockect代码没有,因为他的设计思路是故意不留协议解析,他想统一传输层封包,让你不必关心封包部分只关心transerfer和那个使用接口),一个使用接口 那么你另一个帖子其实就已经设计好了。对其实已经设计好了,如果你用netcore的话 你的要的设计,人家早已做出,就看你们到底是跟着园子混,还是跟着真正的工程项目混 var S7使用接口= comTransefer() .S7协议() S7使用接口.requestStream() //订阅推送式,我们当然知道S7协议是有订阅推送的,如果硬件支持协议支持,我们就可以用订阅推送 s7使用接口。 requestRespons()//主从问答式,如果硬件不给推,我们当然只能采用主从一问一答。那么调度引擎有么当然有 然后你说结果反馈,有么。当然也有传统状态机,那个园子说的老鼠和猫(所谓观察者),响应式编程,stream流式数据处理,管道处理通通都有 3.之所以另外跟你提Ros机器人系统,其实也是给你提个醒。具体的手段是2,总体架构其实就是1跟3. 这里我就说前面按下没说的,别跟那个园子整天瞎扯。其实你要的东西,从来就有。一直都在。 无论20年前的windows,还是现在Azure云,还是他们号称的DDD,微服务,从来就是一种东西。 windows怎么实现的各个硬件的注册,消息通讯啊-------------Pnp即插即用设备驱动,通用pci总线bus,消息iqr Azure云怎么实现啊-----------------------azrueiot即插即用,azrue eventbus行为事务总线,消息订阅和发布 DDD------------------那个园子吹了10多年的DDD,就没有一个能落地的。现在倒是落地的一个abp,可惜的是如果没有netcore那个service.add(即插即用),没有netcore的pipeline(总线bus),他们依旧只是吹个泡泡 Ros机器人系统------------------依旧是这个套路,node节点的注册(即插即用),node节点消息bus 这就是我们说,为啥明白的不说,因为没啥可说的。你说的工具和手段多年前就已经有了。我们其实并没有要说的,我们只是写 设备插件(热插拔)把设备注册进去,然后利用消息总线互相通讯和控制(哪怕是libview其实都是一个思路,libview的工具箱,对啊,编写一个特定功能工具箱注册进去,然后利用他内部总线通讯)
腰疼怎么办 2021-02-10
  • 打赏
  • 举报
回复
引用 46 楼 电动飞机制造商 的回复:
[quote=引用 38 楼 我和我的代码互怼 的回复:]楼主,我看了你的历史发帖内容,差不多清楚你为什么要学c#,我这给你个建议,如果你学习c#只是为了给PLC做个辅助,大可不用学习c#,因为你的PLC本质上和C#在编程理解上就不一样,你可以试试更为相近的python,这个神奇的语言在处理很多事情的时候非常短小精悍,能把“人生苦短,回头是岸”体现得淋漓尽致,其他语言要实现一个结果,可能要逐个boss击溃,但python类库里面的大神直接提供一个类似 kill boss()的方法,一行秒杀出结果,大呼神器! 以下是对python做的一些简单说明: 1、适合做控制台之类的东西(没有软件界面,纯命令的那种,就像CMD),什么读写数据库,网络通信,串口通信,GPIO硬件控制等等一大堆,大神门都是封装好的,并且语法简单,一看就会; 2、在各个系统间移植非常方便,几乎不需要做什么更改,windows,mac,linux这些99.99%几乎拿来就能用(有些库会限制环境); 3、最后提示,这个python做的东西大多数是命令行的东西,如果要做个界面也可以,但python做界面真的是脑子都要炸了,光布局就花掉你70%的经理,所以我特别不推荐用这家伙做界面,我是深受其害!
我学C#是为了开发上位机。上位机就是控制机器的界面。这个不是嵌入到机器里,而是在电脑上,然后人工可以在电脑上操作机器。 上位机的开发软件主要是C#,当然也有VB, Labview。 我没有把C#与PLC等同起来,这二者是面向不同的事物,它们的思路、风格没有可比性,只是刚从PLC转到C#就会有一些新感叹[/quote] 楼主,你好,我的工作也是PLC。想问个不大相关的问题,现在用C#做HMI的很多,为什么不用PLC自带的HMI软件,比如AB有FactoryTalk Studio, 西门子有Wincc。比较通用的还有wonderware,还有你提到的LabView。这些都是现成的软件,使用起来简单方便。是有其他需求,还是有成本考虑?
腰疼怎么办 2021-02-10
  • 打赏
  • 举报
回复
引用 40 楼 早打大打打核战争 的回复:
小青蛙你越界了~
这年头不玩点跨界怎么能在同行中显山露水啊😄
腰疼怎么办 2021-02-10
  • 打赏
  • 举报
回复
哈哈。我也是玩PLC的。刚学了两个月的C#,一开始也有类似的感觉。不过现在搜索引擎很强大,基本上总能搜到我想要的东西。MSDN不用下载啊,直接在线查就好了,也不用花钱啊。你说的记忆性不强,只是还不熟而已,而且C#的编程比PLC的编程要庞杂的多。上手了就好了。什么库,类,不就相当于PLC的功能块嘛,给它输入,它给你输出。
  • 打赏
  • 举报
回复
引用 58 楼 luj_1768 的回复:
啊。工业应用。可能需要先剪裁一下系统,确定一个很小的工作集:比如,建立一个namespace{}; 然后根据设计选型需要,把要用到的域、库、结构、对象、统统拉进来(相关工作可能需要软件提供方配合),以后就可以在这个稳定基界上安全地进行开发与维护。虽然初期费用可能比较高,但是长远来看、成本一定比使用公用版本低不少。
还有专门的工具箱。 其实中国要是有人做这种版本的C#,一定很有前途。可惜我刚学这个,开发不了
luj_1768 2021-02-10
  • 打赏
  • 举报
回复
啊。工业应用。可能需要先剪裁一下系统,确定一个很小的工作集:比如,建立一个namespace{}; 然后根据设计选型需要,把要用到的域、库、结构、对象、统统拉进来(相关工作可能需要软件提供方配合),以后就可以在这个稳定基界上安全地进行开发与维护。虽然初期费用可能比较高,但是长远来看、成本一定比使用公用版本低不少。
  • 打赏
  • 举报
回复
引用 56 楼 腰疼怎么办 的回复:
[quote=引用 46 楼 电动飞机制造商 的回复:][quote=引用 38 楼 我和我的代码互怼 的回复:]楼主,我看了你的历史发帖内容,差不多清楚你为什么要学c#,我这给你个建议,如果你学习c#只是为了给PLC做个辅助,大可不用学习c#,因为你的PLC本质上和C#在编程理解上就不一样,你可以试试更为相近的python,这个神奇的语言在处理很多事情的时候非常短小精悍,能把“人生苦短,回头是岸”体现得淋漓尽致,其他语言要实现一个结果,可能要逐个boss击溃,但python类库里面的大神直接提供一个类似 kill boss()的方法,一行秒杀出结果,大呼神器! 以下是对python做的一些简单说明: 1、适合做控制台之类的东西(没有软件界面,纯命令的那种,就像CMD),什么读写数据库,网络通信,串口通信,GPIO硬件控制等等一大堆,大神门都是封装好的,并且语法简单,一看就会; 2、在各个系统间移植非常方便,几乎不需要做什么更改,windows,mac,linux这些99.99%几乎拿来就能用(有些库会限制环境); 3、最后提示,这个python做的东西大多数是命令行的东西,如果要做个界面也可以,但python做界面真的是脑子都要炸了,光布局就花掉你70%的经理,所以我特别不推荐用这家伙做界面,我是深受其害!
我学C#是为了开发上位机。上位机就是控制机器的界面。这个不是嵌入到机器里,而是在电脑上,然后人工可以在电脑上操作机器。 上位机的开发软件主要是C#,当然也有VB, Labview。 我没有把C#与PLC等同起来,这二者是面向不同的事物,它们的思路、风格没有可比性,只是刚从PLC转到C#就会有一些新感叹[/quote] 楼主,你好,我的工作也是PLC。想问个不大相关的问题,现在用C#做HMI的很多,为什么不用PLC自带的HMI软件,比如AB有FactoryTalk Studio, 西门子有Wincc。比较通用的还有wonderware,还有你提到的LabView。这些都是现成的软件,使用起来简单方便。是有其他需求,还是有成本考虑?[/quote] 我也不解。我还曾说过,触控屏本就是C#之类的语言开发的,开发触控屏本来就是为了把常用的功能摆出来,方便人们使用。我们软件工程师能想到的,开发触控屏的企业早就想好了,因而触控屏有了我们所需要的所有功能。既然这样,那还要上位机干䗫? 我做电气多年,此前从未遇到哪家公司用上位机。不过只是现公司需要,就以我了解到的而论,C#用了两个地方: 一,MES。我公司的MES是自己开发的,不是买的。开发软件就是C# 二,与CNC结合起来,做机床相关的一些控制 三,处理特殊情况,我公司用了描扫软件,又用了机器人,于是C#在扫描软件和机器人之间做一些连接的功作。具体的我也不大清楚,因为这些是别的软件工程师做的
wanghui0380 2021-02-08
  • 打赏
  • 举报
回复
1.C#是通用语言和梯形图那种特殊领域语言不一样。他要通用性弱化特定性 2.如楼上所说,C#在不停发展中,如今的C#开发方式和手段和20年前完全不一样了。只是国内的教材和资料跟不上(哪怕是这个坛子也跟不上,所以你也经常在这里看到的现象是“鸡同鸭讲”------没有办法的事情他学的是20年前的,用的是现在的,中间差了N年,跟不上的被淘汰了,或者发现俺们说的跟他看的20年的根本搭不上),所以你需要看最新的 3.大局上你需要先看书(不知道为啥,这里的人很讨厌别人让他看书。但是我们说基础的东西你不看书,你还能指望别人么?) 按你的要求大概有两本书 《net大局观》-----------台湾侯杰在20年前写的,侯杰的观念和你要的一致,侯杰也认为需要先在大局上有个了解,所以写了这本书,但是我个人现在不推荐,毕竟成书20年了很多东西已经过时了 《c#高级编程》-------------此高级非彼高级,这本书本质上只是一本和新华字典类似的工具书。他也是你要的。当然成书目的不是和侯杰那样的做大局观,他成书目的是和msdn一样的字典编目,但是书和msdn不一样,写书的目的是分门别类列出来,成体系列出来。(msdn这种超链接方式其实不适合学习,因为超连接方式,到处跳,跳着跳着就不知道去哪里了,不成体系)----------我个人推荐这个,虽然是工具书,好在这本书在不停修正,每次C#版本更新都会新增,修订内容 4.因为你从plc过来,我想你也是冲着上位机而来。那么核心问题其实是网络对接(包括tcp,串口,蓝牙)协议分析,数据流处理,Chanel,Bus这类。(UI,数据库这种通用篇不是核心,这种是X鸟,某内的核心,这种不是你的核心),所以你不妨在看完上面《c#高级编程》后有大局观以后,在进行专业方面的公关 目前我个人觉着,这个直接从开源项目出发,直接看人家的源代码,学学人家现在用什么 我个人推荐几个项目 1.Rsocket------------------------https://github.com/rsocket/rsocket-net 这个是处理网络,协议,数据流的一个范例。虽然netcore本身也是,但是相对来说,这项目刚起步,核心尚保持简单,更能容易看出编写者的思路 2.https://github.com/SmallChi/JT808 JT808协议、GB808协议、道路运输车辆卫星定位系统-北斗兼容车载终端通讯协议(支持2013、2019版本). 其实作者最终目的是编写一个网关,所使用的东西如果抛掉UI,数据库。他就是一个上位机架构代码的核心设计 5.适当关注一下 ROS#的资料 实际上Ros作为一个机器人操作系统,他本身就可以看成一个上位机控制系统的架构(你自己做plc的,当然能理解一个机器人的控制系统代表什么) 而Ros#是ros系统下的netclient,当然他的价值在哪里,你应该也清楚
泡泡龙 2021-02-08
  • 打赏
  • 举报
回复
你用vs2019,属性都是智能提示的
  • 打赏
  • 举报
回复
引用 51 楼 wanghui0380 的回复:
1.C#是通用语言和梯形图那种特殊领域语言不一样。他要通用性弱化特定性 2.如楼上所说,C#在不停发展中,如今的C#开发方式和手段和20年前完全不一样了。只是国内的教材和资料跟不上(哪怕是这个坛子也跟不上,所以你也经常在这里看到的现象是“鸡同鸭讲”------没有办法的事情他学的是20年前的,用的是现在的,中间差了N年,跟不上的被淘汰了,或者发现俺们说的跟他看的20年的根本搭不上),所以你需要看最新的 3.大局上你需要先看书(不知道为啥,这里的人很讨厌别人让他看书。但是我们说基础的东西你不看书,你还能指望别人么?) 按你的要求大概有两本书 《net大局观》-----------台湾侯杰在20年前写的,侯杰的观念和你要的一致,侯杰也认为需要先在大局上有个了解,所以写了这本书,但是我个人现在不推荐,毕竟成书20年了很多东西已经过时了 《c#高级编程》-------------此高级非彼高级,这本书本质上只是一本和新华字典类似的工具书。他也是你要的。当然成书目的不是和侯杰那样的做大局观,他成书目的是和msdn一样的字典编目,但是书和msdn不一样,写书的目的是分门别类列出来,成体系列出来。(msdn这种超链接方式其实不适合学习,因为超连接方式,到处跳,跳着跳着就不知道去哪里了,不成体系)----------我个人推荐这个,虽然是工具书,好在这本书在不停修正,每次C#版本更新都会新增,修订内容 4.因为你从plc过来,我想你也是冲着上位机而来。那么核心问题其实是网络对接(包括tcp,串口,蓝牙)协议分析,数据流处理,Chanel,Bus这类。(UI,数据库这种通用篇不是核心,这种是X鸟,某内的核心,这种不是你的核心),所以你不妨在看完上面《c#高级编程》后有大局观以后,在进行专业方面的公关 目前我个人觉着,这个直接从开源项目出发,直接看人家的源代码,学学人家现在用什么 我个人推荐几个项目 1.Rsocket------------------------https://github.com/rsocket/rsocket-net 这个是处理网络,协议,数据流的一个范例。虽然netcore本身也是,但是相对来说,这项目刚起步,核心尚保持简单,更能容易看出编写者的思路 2.https://github.com/SmallChi/JT808 JT808协议、GB808协议、道路运输车辆卫星定位系统-北斗兼容车载终端通讯协议(支持2013、2019版本). 其实作者最终目的是编写一个网关,所使用的东西如果抛掉UI,数据库。他就是一个上位机架构代码的核心设计 5.适当关注一下 ROS#的资料 实际上Ros作为一个机器人操作系统,他本身就可以看成一个上位机控制系统的架构(你自己做plc的,当然能理解一个机器人的控制系统代表什么) 而Ros#是ros系统下的netclient,当然他的价值在哪里,你应该也清楚
拜服。 我确实是冲着学上位机来的,其余的没有必要学。 最后问一下,《c#高级编程》是指哪个人写的、哪个版本?叫这个名字的书很多,我不好选择
  • 打赏
  • 举报
回复
引用 42 楼 圣殿骑士18 的回复:
如果c#难学,java就更难了。c#这些高级语言和plc的模式相差太多了,没有可比性。你需要从对象化编程的方向上重新学c#。 也不要学datatable了,你是哪里找的资料,怎么初学者动不动就学datatable这些老早过时的东西。
忘了是怎么学上datatable的。请问这个怎么是过时的?
老王就是我 2021-02-07
  • 打赏
  • 举报
回复
直接.出来,不喜欢的话自己写一个工具类,封装常用的东东,然后写好注释。最后点出来一个个慢慢找就是了
  • 打赏
  • 举报
回复
引用 38 楼 我和我的代码互怼 的回复:
楼主,我看了你的历史发帖内容,差不多清楚你为什么要学c#,我这给你个建议,如果你学习c#只是为了给PLC做个辅助,大可不用学习c#,因为你的PLC本质上和C#在编程理解上就不一样,你可以试试更为相近的python,这个神奇的语言在处理很多事情的时候非常短小精悍,能把“人生苦短,回头是岸”体现得淋漓尽致,其他语言要实现一个结果,可能要逐个boss击溃,但python类库里面的大神直接提供一个类似 kill boss()的方法,一行秒杀出结果,大呼神器! 以下是对python做的一些简单说明: 1、适合做控制台之类的东西(没有软件界面,纯命令的那种,就像CMD),什么读写数据库,网络通信,串口通信,GPIO硬件控制等等一大堆,大神门都是封装好的,并且语法简单,一看就会; 2、在各个系统间移植非常方便,几乎不需要做什么更改,windows,mac,linux这些99.99%几乎拿来就能用(有些库会限制环境); 3、最后提示,这个python做的东西大多数是命令行的东西,如果要做个界面也可以,但python做界面真的是脑子都要炸了,光布局就花掉你70%的经理,所以我特别不推荐用这家伙做界面,我是深受其害!
我学C#是为了开发上位机。上位机就是控制机器的界面。这个不是嵌入到机器里,而是在电脑上,然后人工可以在电脑上操作机器。 上位机的开发软件主要是C#,当然也有VB, Labview。 我没有把C#与PLC等同起来,这二者是面向不同的事物,它们的思路、风格没有可比性,只是刚从PLC转到C#就会有一些新感叹
  • 打赏
  • 举报
回复
引用 41 楼 K3314007 的回复:
[quote=引用 28 楼 电动飞机制造商 的回复:]这几天学习DataTable,今天才学会,便是要创建自己的表格确实还是难,比如要删除一行。我就不会,不得不去把老程序里的相关语句复制过来,如下: dt.Rows.RemoveAt(dataGridView1.CurrentCell.RowIndex); //dt是一个DataTable实例化的对象。 括号里的东西我根本记不住。打入“.”号后固然会出现相关的属性和方法,但是太多,而且有好多级,根本找不到后面的CurrentCell.RowIndex。当然由于我现在写了这句话,可能还记得住。但是此前我只记住了RemoveAt。看来C#确实不方便记忆
你这想记忆的想法就是错的,编程语言方法参数无穷无尽,根本不可能记忆。你思维应该转为这样:我要删除一行,删除英文是delete或remove,你打一下试试VS就会自动给你提示(再不行打个“.”一个个看简介),你选一个你想要的方法,按照方法要求(RemoveAt)要输入参数(行号),你要删除表选中的行,那就是告诉程序“表格控件”有什么?当前选中的行啊,当前选中行有什么啊?选中行的行号啊!这样一级一级告诉程序不就搞定了(或者逆过来推也行)。,基础编程就是造零件,记忆是这些零件怎么拼,不要用拼电脑的思维去拼CPU。[/quote] 非常好。受教了!
会动的木头人 2021-02-07
  • 打赏
  • 举报
回复
想要知道一个类有那些属性和方法,最好就是直接去微软的官方文档搜索这个类,官方文档的地址是:https://docs.microsoft.com/zh-cn/。如果你编译器用的是Visual Studio的话,你也可以用鼠标选中这个类,然后按F1进入官方文档,或者按F12查看这个类是怎么定义的。
圣殿骑士18 2021-02-07
  • 打赏
  • 举报
回复
引用 48 楼 电动飞机制造商 的回复:
[quote=引用 42 楼 圣殿骑士18 的回复:]如果c#难学,java就更难了。c#这些高级语言和plc的模式相差太多了,没有可比性。你需要从对象化编程的方向上重新学c#。 也不要学datatable了,你是哪里找的资料,怎么初学者动不动就学datatable这些老早过时的东西。
忘了是怎么学上datatable的。请问这个怎么是过时的?[/quote] datatable是vs刚出来的时候就有的,02/03年的技术了吧;后来有了linq to sql,后来又有了orm,比如官方的entity framework,第三方的dapper,都比datatable好太多了。
加载更多回复(42)

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧