设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 4191|回复: 15
打印 上一主题 下一主题

[讨论] 【4.17版聊】你的编程语言学习经历

[复制链接]

Lv1.梦旅人

梦石
0
星屑
60
在线时间
705 小时
注册时间
2007-12-23
帖子
874
跳转到指定楼层
1
发表于 2016-4-17 14:01:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 gonglinyuan 于 2016-4-17 14:03 编辑

2016年4月的TIOBE排行榜:许多同学“童年的回忆”——Visual Basic已渐渐淡出,Ruby上升势头迅猛,C系语言仍然占据主流。
http://www.tiobe.com/tiobe_index?page=index

投票:你学过哪些语言呢?

讨论:为我们讲述一下你的编程语言学习经历和学习方法吧,比如看了那个网站的教程,读了哪些书,参与了哪些项目。对于编程语言的褒贬也是允许的,但是要说明理由哦~
多选投票: ( 最多可选 20 项 ), 共有 25 人参与投票

投票已经结束

9.91% (11)
12.61% (14)
12.61% (14)
6.31% (7)
6.31% (7)
2.70% (3)
10.81% (12)
0.00% (0)
16.22% (18)
2.70% (3)
0.90% (1)
3.60% (4)
0.90% (1)
4.50% (5)
0.00% (0)
2.70% (3)
2.70% (3)
2.70% (3)
0.90% (1)
0.90% (1)
您所在的用户组没有投票权限
买了正版RMMV的同学进来看一下,谢谢~
https://rpg.blue/thread-393237-1-1.html

Lv3.寻梦者

梦石
0
星屑
1293
在线时间
995 小时
注册时间
2014-12-14
帖子
3016

开拓者

2
发表于 2016-4-17 14:11:31 | 只看该作者
c和j都没学过啊,想随便投一个然后水贴的,怎么投完了就跳出这么多语言...
【RMVA教程】
---------------------
欲买桂花同载酒,终不似,少年游.
回复

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2207
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

3
发表于 2016-4-17 14:21:11 | 只看该作者
本帖最后由 taroxd 于 2016-4-17 18:40 编辑

看到主楼是「学过」而不是「学会」,于是厚颜无耻地投了很多项

方法:
  1. read_tutorial if your_first_language?
  2. take_part_in_project while read_doc and read_code and googling
复制代码

点评

“学会”的话大神们就太谦虚,什么都不敢选了。而且不同的人对“学会”的理解不一样。。。。看文档、看代码的确是好办法,效率比单纯的看书高  发表于 2016-4-17 17:54
回复

使用道具 举报

Lv4.逐梦者 (版主)

百合控

梦石
0
星屑
6438
在线时间
1274 小时
注册时间
2013-8-21
帖子
3657

开拓者

4
发表于 2016-4-17 14:33:18 手机端发表。 | 只看该作者
不会编程,只是来看看大神

点评

浴巾大美女,我们来百合吧233  发表于 2016-4-17 15:21
挤挤  发表于 2016-4-17 14:59
挤挤  发表于 2016-4-17 14:46
回复

使用道具 举报

Lv4.逐梦者

水月·镜花

梦石
10
星屑
403
在线时间
1181 小时
注册时间
2005-10-22
帖子
1183

开拓者

5
发表于 2016-4-17 15:26:45 | 只看该作者
沒有HTML和C/AL不幸福【大霧

点评

都说了是TIOBE前20.。。  发表于 2016-4-17 17:55
回复

使用道具 举报

Lv4.逐梦者 (版主)

梦石
0
星屑
9497
在线时间
5073 小时
注册时间
2013-6-21
帖子
3580

开拓者贵宾剧作品鉴家

6
发表于 2016-4-17 16:04:27 | 只看该作者
本帖最后由 RyanBern 于 2016-4-17 17:09 编辑

看到主楼是「学过」而不是「学会」,于是厚颜无耻地投了很多项,如果是学会,那么一个都没有。

不会编程,只是来看看大神。

学习经历:
C:跟着学校学
C++:花了一寒假自学
Java:无聊了选一门课跟老师学,现在已经基本忘光
C#:无聊了选一门课跟老师学,现在还记得一点点
Ruby:对着RGSS脑补,学了很多错误的东西
Matlab:填坑用,自学
R:填坑用,自学

希望加上FORTRAN选项,感觉以后要学了。

目前的状况:
填坑主力为C/C++,有时也用Matlab,因为不搞统计所以R今后感觉不会用。
不过现在使用C/C++混合代码是不是不太好?感觉要放弃一个,要不写出来的东西不伦不类的。
FORTRAN可能成为新欢。

学习的基本思路:
最好还是买一本书,动物书看起来不错。然后就开刷,边刷边实践。
原理弄懂了就看官方的文档,切记不要到百度知道啥的地方搜,否则学了错误的东西进来本人概不负责。
然后就是需要经常做项目(填坑),我学习Java和C#的经历几乎完全一样,但是C#比Java记得多一点,主要的原因是我上那门课的时候用C#做了个大项目。
至于Matlab/R这样的数学软件,先把语言的语法弄清,然后就面向Google编程吧,同学们都是这样会的。

个人偏好的话,还是喜欢C/C++,最重要的原因还是因为效率(你丫去学汇编好了)。
C 代码复制
  1. for(i = 0; i < n; i++){
  2.   a[i] += b[i];
  3. }

C 代码复制
  1. for(i = 0; i < n; i+=4){ // suppose that n % 4 == 0
  2.   a[i] += b[i];
  3.   a[i+1] += b[i+1];
  4.   a[i+2] += b[i+2];
  5.   a[i+3] += b[i+3];
  6. }

据说下面那种写法运算速度更快,显然,好像没人喜欢这种写法。(我没试验过,不要打我脸,疼)

喜欢C/C++仅仅是因为效率高而已,没有别的原因了。

恩,没了。

点评

触瞎。感觉讨论班有讲的东西了。  发表于 2016-4-17 18:54
rb 可以 google 一下 duff's device  发表于 2016-4-17 18:42
我看过FORTRAN的一些代码,说实话看起来很不友好,不流行似乎很正常,用它的好像多半是有特殊需求?无奈貌似我走上了一条反OO的不归路……  发表于 2016-4-17 18:19
这里列举的是TIOBE前20的语言,FORTRAN现在的确不流行了;在现在编译器上,开了优化之后第一种会被自动转化为第二种编译的,这样写没什么意义。。  发表于 2016-4-17 17:56
回复

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止访问)

梦石
0
星屑
88
在线时间
631 小时
注册时间
2014-8-4
帖子
3600
7
发表于 2016-4-17 16:51:03 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
705 小时
注册时间
2007-12-23
帖子
874
8
 楼主| 发表于 2016-4-17 18:29:55 | 只看该作者
我的学习路线是这样的,走了很多弯路,因此印象很深:
1. 首先学的是VB,看的是国内的《XXX从入门到精通》《21天学会XXX》这种脑残教材,里面的概念十分老旧,代码也有不少错误,十分不建议学习语言的同学们看这种教材。因此我VB其实也只局限于会考水平。。这是绝对的反面例子。
2. 接下来接触C++,看的还是国内书店里畅销的脑残教程,前半本书勉强能够理解,后面那些OO、template这些抽象的概念就难以理解了,因为教材太死板。另外书上用的还是VC++6.0,也是过时的东西。到目前为止我也只会C++的基本语法,碰到类模板、多继承这些变态的东西还是犯迷糊。
3. 接下来是为了搞信息学竞赛学的Pascal,因为我们初中老师只教Pascal,有了C++的基础Pascal的语法也很快就学会了,但是也只局限于那些用来表示算法的语法。
4. 后来我又看了一本信息学竞赛的书,里面最先介绍的是C语言。有了C++的基础,学习C语言如同探囊取物。而且这本书写的还算不错,介绍了现代的gcc编译器和gdb调试器,让我知道编程序原来还能不用IDE。。。
5. 因为我对Ruby不太感兴趣,只对RPG Maker感兴趣,所以我只学了RGSS,看的是F1帮助,然后花大量时间通读了RMXP的自带脚本,研究了几个6R上面的脚本,也自己做了点不像样的东西。如果想快速做出东西来,最快的方法是阅读、模仿别人的代码,这是我学习Ruby(RGSS)得到的经验
6. 之后我一度迷上Renpy游戏引擎,然后就学了学python。看的是廖雪峰的python教程(因为他/她写的git教程很不错,所以我就看了她的python教程),一开始学得很快,但是到了那些我以前没有接触过的复杂抽象的东西(比如生成器yield,还有简单的函数式编程思想,比如map),这种简明型的教程就不够用了。需要更多的时间来理解;不过一种特性一旦学过了,就可以很快地在学习其它语言的时候举一反三。
7. 我个人感觉学得最成功最系统的是Java。看的是Oracle官方的Java Tutorial。Java太流行了,以至于一搜索Java全是培训班的广告,所谓的速成教程也有一大堆。但越是在这种情况下越要擦亮眼睛。官方的教程写得很仔细,例子非常多,原理讲得也很透彻。之前在RGSS3里自己觉得一直很迷惑的Fiber,当我读完Java Tutorial的concurrency这一整章之后就豁然开朗。Java可能看起来比较老旧,不够新颖、高大上,但是Java确实是最容易学习的。教程、文档都很多、很详细。虽然Java Tutoria乍一看是密密麻麻的英文,而且章节数目特别多,但是每天坚持学两个小时,两个月也能看完一半了,因为例子和解释特别详细,所以基本不会出现脑子拐不过来弯的情况。时间投入虽然很大,收获当然也是非常大的。
8. 接下来,我换了一台电脑,买电脑的时候研究电脑配置,因此就对底层产生了兴趣,于是就买了本(盗版的)CSAPP,里面介绍了x86-64上的汇编语言。虽然汇编语言实用价值低,但是掌握汇编语言对于编写高级语言也是有帮助的。汇编语言给我的感觉就是需要记忆的东西很多,尤其是CISC指令集的x86-64,需要记忆16个寄存器的名字和茫茫多的指令,同时有些指令的功能还很特殊。现在我仍然无法直接编写汇编语言,最多只能做一些简单的代码填空,或者照着书本阅读较短的汇编代码
9. 随着RMMV的流行,我去学了JS。看的是Mozilla官方MDN上面的简明教程。我个人觉得如果学过其它脚本语言,学习JS并花不了多少时间,因此看看这种简单的教程也就足够了。

总之,如果是第一次学习编程,一定要找一套好一点的教材,中文还是英文无所谓,但是一定要讲得足够详细;强烈推荐从Java开始,从Java Tutorial开始(如果是C++建议C++ Primer Plus);十分不建议一上来就看速成教程。
其次,碰到一种没有接触过的语言特性(比如函数式编程、泛型编程、Ruby元编程、多线程),一定要放慢脚步仔细研究;如果实在不能理解,多去社区搜索搜索有价值的文章,其中不乏很生动形象的解释。
在其它情况下,如果原理都已经完全理解,学习新语言无非就是学习一套新语法而已,去W3Cschool、MDN、廖雪峰这种网站快速浏览一下即可,然后就可以直接开始写代码了——碰到问题再回去查文档也不迟
买了正版RMMV的同学进来看一下,谢谢~
https://rpg.blue/thread-393237-1-1.html
回复

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
8025
在线时间
7346 小时
注册时间
2010-7-16
帖子
4915

开拓者

9
发表于 2016-4-17 19:35:36 | 只看该作者
有了github和stackoverflow之类的网站,学什么语言都容易了。
学了C++,再学其他什么语言都容易了。
可惜现在的工作一般都要求Java。不过也没办法,RM还只能用Ruby呢。

点评

虽然C++和Java孰优孰劣已经是一个古老的话题,但我还是觉得用过了C++再去用其他语言会有一种“曾经沧海难为水”的感觉。  发表于 2016-4-18 09:05
其实我根本不会用C++的模板,也就是当做泛型来用的。。指针的确麻烦,而且写出来的程序还容易漏内存。。。  发表于 2016-4-18 07:39
用惯了模板再去用只有generic的c#和java就会很不习惯。另外编译出错还好吧,野指针造成内存污染才让人抓狂。  发表于 2016-4-18 06:40
C++的确包罗万象,包含大量复杂语言特性,但是似乎也有点乱啊,尤其是用GCC编译的时候,类模板使用的时候稍微错一点报错就开始刷屏。。。  发表于 2016-4-17 20:41
回复

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

10
发表于 2016-4-17 20:07:25 | 只看该作者
都没学过。
没上过大学。以前高中有VB,不过也没怎么讲。
重点是怎么应用一直没讲。
你只告诉我什么是变量,什么是IF
可你没告诉我这些用在哪里。
还是RM好,很直观,能直接使用
话说以前搜索过很多次想看看代码怎么应用起来,可是没找到答案
想尝试着学下各种语言的,可是翻开后就是讲变量,IF,循环这些。没有找到怎么实用起来的方法,就弃了。

点评

但是如果真的打算进入主流编程社区,最好还是找一门经典的语言踏踏实实学下来比较好  发表于 2016-4-17 20:46
建议您学习易语言,基本都是应用,连循环语句都不会就能做出东西来。那些鄙视易语言的人,说不定电脑上还有用易语言做的注册机呢。  发表于 2016-4-17 20:45
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-4-20 16:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表