有python基础学c语言、c++多久才能学会_你们用多久学会了C++?

文章讨论了学习编程语言,特别是C++,并非如某些说法所言能在短时间内掌握。作者通过自身经历,阐述了理解复杂语言如Haskell和C++所需的时间和努力,强调了深入理解语言概念的重要性,如静态多态类型、模式匹配和Monad等。对于C++,即使有其他语言基础,也需要时间适应其特有的符号体系、运算符重载和模板等高级特性。作者认为,快速学习的概念忽略了语言的深度和实际应用的挑战。
摘要由CSDN通过智能技术生成

如何学习编程语言(一):一个小时学会C++?某天上课的时候听到一个同学说,“C++其实只要一个小时就学会了”。

当时我没说什么,只是脸上的表情有点不自然。

那个讲课的老师是个ED(Enterprise Developer),那同学的发展方向也像是一个ED。而他这句话,令我表情不自然的原因貌似就是关于语言学习的问题。

学习一个语言究竟要多久?究竟该如何学习一门编程语言?

Haskell Wiki上有一篇关于Haskell入门介绍,貌似叫做“十分钟学会Haskell”,可是那篇文章费了我很久的时间也没有能够看懂多个大概。然后等到在学校图书馆找到一本《Real World Haskell》后,花了三天时间没有写出一行代码,单只是在那里理解静态多态类型是什么,然后后来遇到模式匹配也卡壳很久,到了Monad就已经决定放弃了,转去回头看Scheme了。

或者是我理解东西理解起来有点慢吧。

可是,一个小时,对于C++这么庞大而复杂的语言来说,真的不知道是什么概念。

我带过新手,初入门的时候,大概用了一个月的时间,学习C语言,他能够理解到了基本控制结构和数组。然后就看他就不太怎么继续的下去了。而即便是接触过其他命令式编程语言甚至是C语言的老手,接触C++然后并学会的话,也不知要多久:至少从非花括号系的语言转换过来适应语法就应该要不止适应一个小时吧,从C语言过来也要理解C++加入的那么多非OO相关的新元素(常类型、引用语义等等,这些概念不是一般的耗时)。

嗯,好吧,你不是新手,你也用过花括号语言,你了解OO,或者直接说你就是一个无敌了的Java或者C#的高阶ED而且还有C语言编程基础的那种。但如果你是新入门C++的话都很难保证一个小时学的完。(好吧,我可能会把ED的重视工程应用而忽略高阶应用的特长给忽略掉,那样的话他只要对比一下某些东西有什么不同就可以把Java/C#的习惯移植过来了。)除非能够在短时间内了解C++强大的符号体系和运算符重载的威力,当然,不要忘了模板。

你也许会说,那又怎么样?都不在话下的:这些放到我脑袋里面就跟玩儿似的全部都给保存下来了,自带扫描仪和OCR系统外加高容量高速度存储的人你比得过吗?

好吧,那么,试问下,泛化类型你需要理解多久?traits技法你需要理解多久?编译期生成/运行代码你需要理解多久?如果说你在一个小时之内搞得定,OK,你赢了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值