应该支持鼓励用中文编程

exiaoran_again 2018-07-19 08:31:24
俺不是专业程序员,前两天发了个帖子提问,贴了图片,好几位朋友的关注点居然在是不是用中文做变量和函数名.
人工智能日新月异,编程都可以靠AI了,很多朋友思想还是很老派,觉得代码要全部是英文字母才像样子.
英文编程这一关,要难倒多少初入门的爱好者?很多生产环境,光术语就一大堆,全部用英文,能够完美的表达变量的含义么?
不要固守陈规,用什么语言不重要,逻辑和实现才是关键中的关键.
Unicode为什么出现?好好想想吧.
...全文
2353 76 打赏 收藏 转发到动态 举报
写回复
用AI写文章
76 条回复
切换为时间正序
请发表友善的回复…
发表回复
五维思考 2018-08-24
  • 打赏
  • 举报
回复
楼主自己说了是业余的,这点很重要,业余的永远体会不到专业人员的感受,只能意淫一下,想当然一些结论,套用流行的一句话“贫穷限制了我的想象”,改一下“业余限制了你的想象”
qq_41318540 2018-08-24
  • 打赏
  • 举报
回复
然而我只想说,中华文化博大精深。
jiuzaizuotian2014 2018-08-01
  • 打赏
  • 举报
回复
反正计算机都是把Unicode(可以表达各种人类语言)最终转换成计算机自己的语言(二进制)的,因为计算机自身的语言既不是英文,也不是中文,也不是日文,而是人类看不明白的01010011101101010101010100101011100101
jiuzaizuotian2014 2018-08-01
  • 打赏
  • 举报
回复
不过对于程序员来讲,如果写的不需要别人接受或不接受,自己怎么写都可以的,别说用中文了,你用日文、韩文、泰文、越南语、法语还是德语的,都是可行的
jiuzaizuotian2014 2018-08-01
  • 打赏
  • 举报
回复
用什么语言都不重要,毕竟很多编译器都认识Unicode字符。只要自己习惯就好了,但用别人的库是无法要求别人取的名字是用什么语言的。
正是因为大量的库是外国人写的,而且计算机科学的大多数技术源自于以美国为首的英语世界,所以这些库基本都是英文的,从而导致大量中文世界程序员也跟着用了英文来起变量、类和函数的名称。
但是如果自己写的东西要让别人接受,那得要符合别人的认知能力。不懂中文的人肯定不接受中文写的,因为他看不懂。懂中文的程序员里,如果一致都用英文写程序,习惯于看各种驼峰类的变量名称,乍一看中文写的程序就会抓不着重心,也就很难接受,有一定经验的程序员估计都是这样的。而对初学的人来讲,由于学的都是英文的,所以接受中文程序也有一定困难,克服起来也需要一定代价。所以导致中文编程毫无市场可言
exiaoran_again 2018-08-01
  • 打赏
  • 举报
回复
都是一群心口不一的家伙,事实上如果别人给他们一个项目,让帮忙研究改进一下,如果全是中文变量名,中文函数名,中文数据库表名,他们心里是暗爽的,但是嘴上就是觉得自己多正统.
和心口不一的人讨论什么都是白费,面子永远比自己的内心重要.
exiaoran_again 2018-08-01
  • 打赏
  • 举报
回复



引用 77 楼 a410787073 的回复:
我不说啥,给你看看 我们的数据库吧。


非常正派,让上面的大牛们翻译一下,英文要如何命名?哈哈哈哈
猫熊 2018-07-26
  • 打赏
  • 举报
回复
引用 73 楼 exiaoran_again 的回复:
[quote=引用 10 楼 raynors 的回复:]
IsOrderClosed 这个函数名,一眼就能看出返回BOOL。

订单已关闭 不遵守任何标准,不说换人维护了,等过几年回头你自己都看不懂。

那么我们可以加上 “是否”作为BOOL值的关键字 譬如 是否订单关闭,但在使用上...

if 是否订单已关闭 ,怎么用怎么都觉得糙。而且还有一个硬伤,IDE环境对中文索引支持不好,你得自己输入“是否” 后面的才会出来。

所以我的建议是混合命名

"Is订单已关闭"

难道is你不用输入?????

引用 64 楼 a135a135 的回复:



知道为什么英文需要驼峰么,因为英文没有空格是没法阅读的.
日常英文全都是有空格的,所以编程中变量函数名不允许空格,他们没法写.
中文本身就不带空格,这是个优势.
你是知其然,不知其所以然.[/quote]



louzhushigezhizhang
a410787073 2018-07-26
  • 打赏
  • 举报
回复
我不说啥,给你看看 我们的数据库吧。
小灰狼 2018-07-26
  • 打赏
  • 举报
回复
引用 74 楼 exiaoran_again 的回复:
[quote=引用 71 楼 hemowolf 的回复:]
[quote=引用 18 楼 daixf_csdn 的回复:]
我跟你说实话吧,菜鸟才会用并喜欢中文编程。你也说了你是非专业人员,所以,bingo!



并且是资深级菜鸟,多次尝试摆脱菜鸟这顶帽子却一直在门外徘徊。所以总得找个客观一点的理由来安慰一下自己受伤心灵吧,显然“中国人不习惯用英语”这个由头成了不错的一个选择!
[/quote]

菜鸟才能随心所欲的写自己乐意写的东西,同时专注逻辑,而非规范.
您大概是那种每个变量每个函数名都被老板限制的死死的"码农"吧
难怪会反对,每个毛孔都被驯服了.[/quote]

谁告诉你菜鸟才会专注逻辑?
随心所欲的人不适合写程序,适合写科幻小说!
一个软件研发项目,除非从头到尾只有一个程序员,否则就所有的程序员就必须遵循一定的规则,不允许出现独行侠。项目越大,团队里的成员就越是要被“驯服”,越要收敛自己的个性!
exiaoran_again 2018-07-25
  • 打赏
  • 举报
回复
引用 71 楼 hemowolf 的回复:
[quote=引用 18 楼 daixf_csdn 的回复:]
我跟你说实话吧,菜鸟才会用并喜欢中文编程。你也说了你是非专业人员,所以,bingo!



并且是资深级菜鸟,多次尝试摆脱菜鸟这顶帽子却一直在门外徘徊。所以总得找个客观一点的理由来安慰一下自己受伤心灵吧,显然“中国人不习惯用英语”这个由头成了不错的一个选择!
[/quote]

菜鸟才能随心所欲的写自己乐意写的东西,同时专注逻辑,而非规范.
您大概是那种每个变量每个函数名都被老板限制的死死的"码农"吧
难怪会反对,每个毛孔都被驯服了.
exiaoran_again 2018-07-25
  • 打赏
  • 举报
回复
引用 10 楼 raynors 的回复:
IsOrderClosed 这个函数名,一眼就能看出返回BOOL。

订单已关闭 不遵守任何标准,不说换人维护了,等过几年回头你自己都看不懂。

那么我们可以加上 “是否”作为BOOL值的关键字 譬如 是否订单关闭,但在使用上...

if 是否订单已关闭 ,怎么用怎么都觉得糙。而且还有一个硬伤,IDE环境对中文索引支持不好,你得自己输入“是否” 后面的才会出来。

所以我的建议是混合命名

"Is订单已关闭"

难道is你不用输入?????

引用 64 楼 a135a135 的回复:



知道为什么英文需要驼峰么,因为英文没有空格是没法阅读的.
日常英文全都是有空格的,所以编程中变量函数名不允许空格,他们没法写.
中文本身就不带空格,这是个优势.
你是知其然,不知其所以然.
  • 打赏
  • 举报
回复
还有人发这种帖子?
小灰狼 2018-07-25
  • 打赏
  • 举报
回复
引用 18 楼 daixf_csdn 的回复:
我跟你说实话吧,菜鸟才会用并喜欢中文编程。你也说了你是非专业人员,所以,bingo!



并且是资深级菜鸟,多次尝试摆脱菜鸟这顶帽子却一直在门外徘徊。所以总得找个客观一点的理由来安慰一下自己受伤心灵吧,显然“中国人不习惯用英语”这个由头成了不错的一个选择!
懒笑翻 2018-07-24
  • 打赏
  • 举报
回复
当乱码的时候满心的心塞???????
liups 2018-07-24
  • 打赏
  • 举报
回复
纯属扯淡
sprints_昊天 2018-07-24
  • 打赏
  • 举报
回复
引用 18 楼 daixf_csdn 的回复:
我跟你说实话吧,菜鸟才会用并喜欢中文编程。你也说了你是非专业人员,所以,bingo!

点个赞
女神打Boss 2018-07-23
  • 打赏
  • 举报
回复
难道不是英文比较简单吗
小灰狼 2018-07-23
  • 打赏
  • 举报
回复
引用 56 楼 exiaoran_again 的回复:
[quote=引用 18 楼 daixf_csdn 的回复:]
我跟你说实话吧,菜鸟才会用并喜欢中文编程。你也说了你是非专业人员,所以,bingo!

专业程序员要编写稳健的程序,且是在一定软件工程约定命名规则下的, 所以无所谓语言,因为来来回回就那么百来个项目相关的"专业词汇".
而想让编程普及,每个人都能在自己领域内,写程序解决一定问题,那光给类和类变量起名,就可以难倒一大堆人了.
比如母鸡这个类.
飞你会拼.
下蛋你会拼么
咕咕叫你会拼么.
孵化你会拼么.
我不是主张表达式和关键字都是中文.
而是说变量名,函数名之类的,用中文无所谓.
鼓励英文可以养活百万个程序员.
鼓励中文,可以方便每一个需要用电脑做重复繁琐工作的脑力劳动者.[/quote]

对非软件人业人员而言,就会点类似于在Excel编写个公式之类的,就算比较高端了。
编程本来就是专业人干的事,没有普及的必要。某些说什么中小学生编程之类的,纯属扯淡。真要玩好软件,要学的东西可不少,并且都是比较专业性的知识。
leileilove100 2018-07-23
  • 打赏
  • 举报
回复
没必要,除非是ai
加载更多回复(56)
AutoCAD .net开发人员手册中文版 文档介绍: 当前版本为20101128版,为第一个CHM版本,如需更新版本,请及时关注http://www.01vb.com,也可以查看CHM文件中的前言部分的版本通知。 因本版本制作仓促,还有如下不完善的内容。 1、还有一章内容没有翻译完成; 2、目录部分和索引部分还是英文版本,但具体页面中全部是中英文对照(有些在提示中有些在翻译上面)。 本《AutoCAD .NET 开发人员手册》由01VB编程站翻译并提供,版权所有,原英文版本版权归原版权所有者所有。本手册为免费版本,可在网上随意发送,但必须注明出处(01VB编程站及网站链接http://www.01vb.com)及翻译者。 序言 自从 AutoCAD 支持使用 .NET 开发以来,所有关于 .NET 的官方开发资料全部是英文版本,给国内开发者的学习带来了一定的阻碍,为了给广大 .NET 爱好者提供更多方便,于是决定翻译一部分资料。 因本人英文水平及CAD二次开发水平有限,翻译的资料中也许有表达不清楚的地方,请大家谅解,也可以在资料底部找到留言的链接,给我留言或直接点击QQ联系我。 01VB编程站是一个非营利性的网站,但是,网站要生存,必须有经济来源。因此,本人在本手册中的投放了广告,但是,广告都是在正文内容的底部,不影响阅读。原则上我不鼓励大家点击上面的广告,除非真的对广告内容感兴趣。因广告给您带来的不便,还望谅解。 最近一段时间,老婆一直生病,始终没有痊愈,在此,我希望老婆能快点儿好起来, 并想对她说一句:老婆,别哭,好好养病,病痛在你身,也疼在我心。你累了,我会背你;钱花光了,我会去挣,身体是第一位的。如果你也想给我老婆送上祝福,请留言,谢谢!(2010.11.24) 翻译历史 2010年8月中旬 开始,期间由于本人生病,中断了几天,还有部分内容没有翻译完成,仍然在翻译中。 11.6 更新《图层状态管理器的使用》部分。 11.07 更新《文字样式》部分 11.08 更新完《创建和编辑AutoCAD图元》这章。 11.11 更新 《标注的概念》 部分 11.12 更新《创建标注》部分 11.15 更新完 《创建引线和注释》 部分 11.20 更新完《形位公差》 部分 11.24 更新到 《在三维空间中编辑 》 11.28 修正手册中的脚本错误,进行CHM格式文档的制作并在01VB编程站首发。 感谢 《AutoCAD .NET 开发人员手册》的翻译过程得到 明经通道 网站 "明经 AutoCAD.NetApi 群"中许多网友的帮助,像 MCCAD、雪山飞狐、Still等等,另外还有其它人记不清楚了,因为太多太多,总之两个字,谢谢。 版权 本开发人员手册版权属01VB编程站网站所有。 翻译者:黄明新(平凡)
Python基本程序 什么是Python? 内容提要Python是一种具有动态语义的解释型,面向对象的高级编程语言。 它的高级内置数据结构与动态类型和动态绑定相结合,使其对于快速应用程序开发以及用作将现有组件连接在一起的脚本或粘合语言非常有吸引力。 Python的简单易学语法强调可读性,因此降低了程序维护成本。 Python支持模块和包,这鼓励了程序模块化和代码重用。 Python解释器和广泛的标准库可以以源代码或二进制形式免费提供给所有主要平台,并且可以免费分发。 通常,程序员会因为提高生产力而爱上Python。 由于没有编译步骤,所以编辑-测试-调试周期非常快。 调试Python程序很容易:错误或输入错误永远不会导致分段错误。 相反,当解释器发现错误时,它将引发异常。 当程序未捕获异常时,解释器将打印堆栈跟踪。 源代码级调试器允许检查局部和全局变量,评估任意表达式,设置断点,一次单行执
Cocoa入门-使用Objective-C助您轻松体验Cocoa开发,不仅是阅读,还有动手实践。介绍完Xcode和Interface Builder之后,您将很快接触到Objective-C的面向对象编程概念,它是创建Mac OS X应用程序的首选语言。每章中都提供了不同的示例程序供您构建,通过循序渐进的指导来教给您Cocoa编程的基础。每章中学到的技巧都作为基础铺垫后面章节中介绍的更高级的技巧和概念。您将学到: ·高效地用好苹果的开发工具套装,包括Xcode和Interface Builder ·构建单一的和多窗口的基于文档架构的应用程序 ·用Cocoa的文本处理能力操作文本数据 ·用Cocoa来绘图 ·本地化您的应用程序以支持多语言 ·完善您的应用程序,添加用于Dock上的图标、提供帮助和打包发布。 在每章的结尾您将看到一些练习,挑战您改进刚创建的应用程序,或为早先的示例增添新功能。 尽管附录中提供了解决方案,但仍旧鼓励您通过自己尝试来学习。 Cocoa入门-使用Objective-C最初由苹果公司的内部人员编写,并由James Duncan Davidson修订成新版,在译为中文版时又将内容更新至基于Mac OS X 10.5 Leopard版本。 Cocoa入门-使用Objective-C包含了Cocoa框架的最新更新,还包括了便利的API速查参考卡,以及在附录中给出很多重要资源,对任何Cocoa开发人员无论初学者还是高手都很重要。
本书助您轻松体验Cocoa开发,不仅是阅读,还有动手实践。介绍完Xcode和Interface Builder之后,您将很快接触到Objective-C的面向对象编程概念,它是创建Mac OS X应用程序的首选语言。 每章中都提供了不同的示例程序供您构建,通过循序渐进的指导来教给您Cocoa编程的基础。每章中学到的技巧都作为基础铺垫后面章节中介绍的更高级的技巧和概念。您将学到: ● 高效地用好苹果的开发工具套装,包括Xcode和Interface Builder ● 构建单一的和多窗口的基于文档架构的应用程序 ● 用Cocoa的文本处理能力操作文本数据 ● 用Cocoa来绘图 ● 本地化您的应用程序以支持多语言 ● 完善您的应用程序,添加用于Dock上的图标、提供帮助和打包发布。 在每章的结尾您将看到一些练习,挑战您改进刚创建的应用程序,或为早先的示例增添新功能。 尽管附录中提供了解决方案,但仍旧鼓励您通过自己尝试来学习。 本书最初由苹果公司的内部人员编写,并由James Duncan Davidson修订成新版,在译为中文版时又将内容更新至基于Mac OS X 10.5 Leopard版本。 本书包含了Cocoa框架的最新更新,还包括了便利的API速查参考卡,以及在附录中给出很多重要资源,对任何Cocoa开发人员无论初学者还是高手都很重要。 本书的范例源代码从这里下载: http://www.oreilly.com.cn/codeexample/learningCocoa2/ 访问网址超出本站范围,不能确定是否安全 继续访问 取消访问http://www.oreilly.com.cn/codeexample/learningCocoa2/ 参考网址: http://www.oreilly.com.cn/book.php?bn=978-7-5083-6561-9 访问网址超出本站范围,不能确定是否安全 继续访问 取消访问http://www.oreilly.com.cn/book.php?bn=978-7-5083-6561-9

7,763

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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