专做游戏辅助脚本需要学习什么?c#?c++?loadrunner java脚本?学了语言还需要学习什么,有情专业的回答,不想

跟数学无关,如果从Java跟C++中学者,建议初学者学习Java,主要理由:从比较两门语言来看:Java可以看成C++的一个子集,语法简单,容易上手,概念清晰明了,标准一比较明确。Java在各平台上可以认为是一致的,而C++有很多实现跟平台相关的。Java相对简单而不复杂,很多程序设计的概念都会涉及到了,从学习Java的基础知识开始,然后学习一些库的使用。做一些小项目练手,边做边扩大自己的知识面。而且Java有很多开源库,一般把包拿来就可以直接用了,很简单,不需要想C++那样,可能卖了很多坑。C++相对而言太复杂,为了兼容C,保留了很多C的东西,C语言很多地方非常灵活,但是对初学者来说,是个难点,也很容易犯错,相对来说,C++是我接触过的语言中,最复杂的一门语言,不仅仅是语法上。举个简单例子,if(a)这样的语句,在Java里面除非a是boolean类型,否则编译器就会报错;但是在C/C++中,a可以是任意东西,编译器不会帮你检查,而是运行期间才会求值处理。C++在内存管理上,虽然引入了新的new关键字用于分配内存,但还是需要自己去管理,而内存管理本身就够复杂的了。再加上C++的内存模型什么的,要搞清楚这些,都不是短期投入就能达到的。还有复制构造函数,运算符重载这部分,也要投入大量精力;最后可能发现还是事倍功半。模板库看起来花俏,真正用了之后,碰到的各种莫名奇妙的问题,会让你崩溃,欲死不能啊。牛人们都建议把C++当做一门语言联邦来学,从这点就可以看出它的复杂度了,学习曲线太陡峭。不过好处就是,然后真把C++学精了,那对计算机底层的机制也就会理解更深了。但是从总的投入产出比来看,还是觉得不太值得。真的想了解这些,可以先把Java学好了,然后学一门C什么的,都比直接上来学C++强。学东西还是从简单的开始学起,然后慢慢深入,先把简单的搞定,在学复杂的,学习曲线就不会那么陡峭了,希望对你有所帮助。
作为一个数学专业出身,因为数学没有学好而做码农的在这里回一下吧。首先要回答学习语言的目的是什么?* 科学计算或者统计方面的需求
如果是科学计算的需求的话,楼主还是学C/C++然后再加个老语言Fortran吧,搞科学计算的逃不开lapack。
如果是统计方面的需求,要不学个R看看,R作为一个专注于统计的语言非常适合统计方面的应用。如果觉得不好学的话可以试试SPSS、SAS。* 希望从事码农行业
如果希望从事码农行业的需要学习的就多了,C语言入门,学几个脚本语言(python、bash),学几个热门好找工作的语言(c++、java、erlang)。当然其实语言上很多东西都是共通的,如果自认为数学好的话,其实学几个编程语言也就分分钟的事情。我们真正应该关注的是更加深层次的内容,算法与数据结构。最后推荐题主学一下TeX,写数学文章不用LaTeX真的好痛苦。
适合Lisp和Haskell。我是认真的。=============下面认真答题。首先我认为这个问题没有意思。因为,学会一门语言不是目标,计算机语言只是实现我们想法的手段。所以,没有适合学哪一门语言,只有我们需要哪一门语言。所以,这个问题就相当于,我是广东人,适合学俄语还是法语,答案是,看你想去俄国还是法国。所以我回答的问题,其实是“数学好在学哪一门语言时更有优势”或者“哪一门语言中数学比较重要”。这里我没有限定在Java和C++,因为可能是题主暂时只知道Java和C++,但其实应该不介意了解更多语言。当然,如果题中数学好指的是高中数学成绩好,或者说“初等代数”好,那确实“学程序语言和数学没关系”。但这样也至少说明对数学有兴趣,很有可能对抽象代数继续有兴趣,那也还是有意义的。那么,我的答案是Lisp和Haskell,当然还包括其他functional语言。我这里保留的functional的英文,没有说是“函数式语言”,不是装逼,是因为这个词,在数学里有另外一个广为人知名字:“泛函”。(不过下面我直接说函数式语言了跟顺口一点。。。。)之所以说数学好学函数式语言更有优势。是因为1)相较其他语言,函数式语言和数学“更像”,2)函数式语言更依赖数学。说函数式语言和数学更像,最基本的就是“函数”。要注意,虽然都叫函数,但是其实二者是完全不一样的。数学中的函数是一个从定义域到值域的映射,而计算机语言中的“函数”至少包括两个意思:procedure和function(Pascal中就是分开的两个概念,呃。。。说出Pascal是不是就等于暴露了OI历史。。。),function还可以粗略的等于从参数的空间到返回值的空间的映射关系,但procedure完全就是程序跳转到另一个位置去执行,和“函数”这个东西基本没有任何关系。而在学C的时候,我们叫着函数,却基本都把它理解成procedure。既是是有输入有输出的函数,还有和数学中函数的一个最大的不同:确定性,或者说,副作用。一般来说,数学中的函数是一个从定义域到值域的确定的映射关系。换言之,确定的输入总产生确定的输出。但是过程式语言中这一点完全无法保证,例如允许对函数外的变量进行修改。而纯函数式语言中通常要求函数保证无副作用(比如通过强制变量不可变),这样保证了语言中函数和数学中的函数的一致性。再举个可能不太恰当的例子:在纯函数语言中,通常变量不可变。于是,困惑了无数小白的诸如“a=a+1”这样违背数学常识的语句也不太可能出现了。因为语言中的函数和数学中的函数统一了,递归这个概念也好理解多了。因为递归不再是“一段代码调用本身”这么拗口的概念,就是数学中的递归定义或者递推公式而已。再者,配合函数式语言中常见的模式匹配,函数式语言仅仅是“看上去”,也更像数学。比如Erlang中实现斐波那契数列:fib(0)-&1;
fib(1)-&1;
fib(N)-&fib(N-1)+fib(N-2)
基本就是数学定义。然后,泛函。数学上,泛函通常是指定义域为函数的函数,而函数式语言中,函数是first-class的,即和普通变量一样,函数可以操作函数。看,又和数学统一了。使用函数式语言,完全就是从数学的角度看问题了。这种操作在C和Java中不能直接实现。当然,C可以使用指向函数的指针,Java通常借助一个接口。但这样,都是从机器的角度思考,或者从面向对象的角度思考,而不是从数学的角度思考。另外,学习函数式语言也确实需要数学基础。过程式语言,包面向对象语言等等,都可以用图灵机来理解,但是函数式编程则不然,理解好函数式编程你需要理解lambda演算,然后不可避免需要形式系统的推理和证明,这些还真的需要数学基础。而Haskell更进一步,即使不碰monad,至少需要集合论的知识甚至部分泛函(向量空间)的知识,而如果涉及到monad,没有抽象代数和范畴论的概念基本很难真正理解。(是的我要承认我还没有真正理解)综上,如果数学好,“适合”学函数式语言,而我所举的,是其中两个典型。另外有人提到clojure,我认为clojure可以视为Lisp的一种方言。其他推荐学习的函数式语言包括Erlang和OCaml。然后再来回答一下原来的问题,如果以后会搞计算机,那这两门语言都跳不过去,但是两者选其一,建议先学Java,因为C++太复杂(抱歉我是C++黑,不争论)。但是,更建议C和Lisp。学C,推荐的教程只有一本:《程序设计语言》,作者K&R,不要去看任何其他的书。学Lisp,推荐的教程也不用多说:《计算机程序的构造和解释》。然后,虽然我大部分时间会使用Python,但我坚决不同意一个专业的程序员从Python入门。虽然Python上手很快,但是无益于理解计算机的运作方式,也无益于理解程序的数学本质。当然,Python是个好语言,(Perl?哈哈哈哈,逃~)。说这么多,不是表达Lisp和Haskell比Java和C++高端,或者Java和C++是inferior languages。C/Java/C++应用比函数式语言广泛毋庸置疑,而函数式语言学习的更大好处其实是学习其中的思想不是为了工程应用(大多数情况下,Lisp在人工智能领域应用很广)。数学和机器都是计算机的一部分,对机器感兴趣,就去学C,学体系,对数学感兴趣,就去学Lisp,学计算理论,最后会发现,殊途同归。只不过,选择一样的时候,记得对另一样保持好奇心。计算机很好玩的!!!!!我们不要再(让别人乱)黑了好不好!!!!!最后,也别全信《黑客与画家》,那就是一本Lisp软文集。。嗯哼~
来知乎,参与讨论当前访客身份:游客 [
当前位置:
我 在大学读软件技术专业,大一第一学期我学了c语言,没有学c++,到大一第二学期直接学java了,请问学长们我还需要自学c++吗?
共有4个答案
<span class="a_vote_num" id="a_vote_num_
这个要看你未来的目标了,理论上讲,掌握一门开发语言足以。如果未来偏重于算法设计,系统应用开发,应该需要学习掌握c++,如果偏重与企业级应用开发,java比较擅长。c/c++是编译语言,适合于对效率要求较高的开发项目,java是解释性语言,适合快速开发。
--- 共有 1 条评论 ---
我现在学着java,以后做安卓应用开发,应该不做安卓底层开发先,那我现在要自学c++吗?我读大专的,
(4个月前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
我现在学着java,以后做安卓应用开发,应该不做安卓底层开发先,那我现在要自学c++吗?我读大专的
<span class="a_vote_num" id="a_vote_num_
如果学有余力,就自学C++吧,我偏重于建议你学习C++,理由是:具备c/c++知识,即便是不用它来开发软件,但对于更加深入的理解和使用java等其它开发语言,是非常有帮助的。
--- 共有 1 条评论 ---
就大一第一学期我学了c语言,没有学c++;现在学java,还需再自己学c++,吗
(4个月前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
喜欢就学,还有数据结构,编译原理,操作系统,数据库原理,设计模式,软件工程等等,什么快来什么吧。
--- 共有 1 条评论 ---
(4个月前)&nbsp&
更多开发者职位上
有什么技术问题吗?
很开心遇...的其他问题
类似的话题为什么培训机构很少有培训 C 语言的,大部分都是 Java,C# 什么的?
按投票排序
起点低 见效快 用途广谁用谁知道
培训机构都是市场导向,当市场上大量需要什么人才的时候就会培训什么。。。
上手快,经过比较短的时间的培训就能进行生产
面向嵌入式软件方向的必需培训C语言。现在只要是说嵌入式LInux都是要上一段时间C语言
因为培训机构的目的是让你培训完以后上来就可以干活,而假如教你C语言,你还是什么都做不了,你不可能用沙子泥土这类的东西去盖房子,而是用别人已经造好的部件去拼,但是大学里却教了你C语言,因为他是为了尽可能让你适应你以后所能接触到的语言,比如C#或者JAVA或者别的什么脚本语言,大学教你一种编程的思想,编程的感觉,让你知道最基本的原理。但是大学里教的内容太少,学计算机网络的时候不会教你怎么用C语言写web应用程序,学数据库的时候也不会教你用C语言连数据库,太过于理论了,一般人也不会学的很明白。不过假如真有个大学这么教的话,底层里的东西太过于繁琐,如果想全弄懂的话,至少一门得需要一学期吧,但现实是你一学期要学好几门课程,再加上大学生又不是很努力在学习的话根本学不完,因此,如果培训机构要是教会了你用C语言的东西不借助任何第三方库来写网络程序,连数据库,实现web服务器,甚至架构网站。能用C语言做出一个企业能用得上的网站。那得培训1~2年才有可能达到目标。就算借助了第3方库,要理解底层原理也得花大量的时间,再有,就算培训成功了。企业里一般情况下也不会用C语言去开发网站而是用C#,JAVA这类的语言去开发网站。你到时候还得再学C#JAVA特有的面向对向,各种第三方库。综上,所以你觉得企业里有培训C语言有必要么?时间长,以后还不一定能用上。
这个是显然的..你还看到培训有汇编??因为这些语言不是作为应用软件开发的主流语言,培训起来还得深入到理解指针内存什么的,这对于培训来讲这是不实际的,他们培训对象根本不需要理解语言内部的机制,只需要能编出东西,尤其是面向对象完全可以不管对象的方法的实现,只要调用方法就好,但是面向过程就不好办了.
可能是现在市场上JAVA程序员的需求量比较大吧,所以好多培训机构都会开JAVA的课程。不过像东软实训这种比较正规的机构课程很丰富,C/C++、java、嵌入式、测试的课程都会开设。
这么高级的语言,非常专业的领域才用得到,当然也要配合非常专业的知识,当然,工资也不是一般的高。一般人学了也没用。& 此文仅代表个人观点
&&& 很多学员有这样的问题:我们应该学习什么语言,java、还是c&#43;&#43;?好像很多公司都找会VC的人,java和有用吗?甚至有人说java或是小公司用的语言,是大公司用的语言。
&&& 注:下面讨论的不是指。net framework下的托管C&#43;&#43;而是指非托管的C&#43;&#43;.
&&& 首先解释一下java、C#、C&#43;&#43;和VC的关系。
&&& java,C#是C&#43;&#43;后出现的语言,VC是比较早就开始有的开发工具,C/C&#43;&#43;也是比较早的语言。java的开发工具有JBuilder、JCreator、Eclipse等,而C#的开发工具就是微软的Visual Studio系列。
&&& java、C#和C&#43;&#43;各有个的优点,C&#43;&#43;兼容性好,不依赖平台,java、C#依赖各自的虚拟机(C#的虚拟机是。net framework)运行,离开了虚拟机便不能运行;
&&& 、C#开发效率高,几乎是VC的几倍以上,C&#43;&#43;运行效率高但是开发比较麻烦,学习也比较难。
&&& 语言没有优劣之分,这些高级语言都是现在大量使用的流行语言,任何一种语言都可以开发出大型系统,但是实际运用往往根据需要选择,除非是做底层类库开发一般不选C&#43;&#43;,因为它开发成本太高,还有用C&#43;&#43;的是为了部署简单,例如网络游戏,为了避免每个用户都安装虚拟机就不选用java或C#,除这些之外,一般选择开发效率较高的java、C#,这样可以降低公司的开发成本。
&&& 现在学习编程的人大多数都学习java、C#,因为简单啊,很快上手,C&#43;&#43;确实越来越少人学了。
&&& 不要看着难学的VC挺cool的就去学,要看实际应用和自己的兴还有学习环境,C&#43;&#43;学习最好有实际应用环境不然学起来累死不讨好,最后失去了信心。要知道VC已经是好几年前的技术了,微软现在基本不会升级它了,也就是说用VC你的生产效率就是几年前的,很低。
&&& 现在很多高校都把C&#43;&#43;作为一种必须掌握的基础语言,甚至有些非计算机专业的学生都要学习C&#43;&#43;,但是那些要求仅仅是对C&#43;&#43;基础知识的掌握,要熟练运用到实际开发中去还是有一段距离的。
&&& 学java或C#有没有用呢?
&&& 我觉得现在java和C#的前景很难分出高低,所以学java和C#差不多,而且他们都比较类&#20284;,基本可以一通“两通”。
&&& 学习一样东西有没有用要看它的使用价&#20540;,现在公司需要的不单单是会简单的编程,而且是全方面的,业务和其他能力也很重要,可以说学了java你可以做一个程序员,找到工作也没问题,但是要真正深入企业业务,要工资有所提升则还要实践一段时间,充分融入到企业的业务中去。
&&& 例如有些外包公司,他们对程序设计的要求比较低,只要会用一些主流的语言就可以了,但是对外语要求很高,例如对日外包公司对日语的要求,这样如果掌握了java或C#之后能够学习一门日语是很好的。现在有招聘单位打着日语二级软件工程师月薪1万的旗号。
&&& 当然还有其他业务,在工作过程也是可以慢慢积累的,例如有些公司用到的GIS(地理信息系统)。
&&& 有些学员说:
&&& 可是我知道现在的电信行业,nokia,moto还挺需要这方面技术的人。而且薪资给的还比较高。
&&& 我们并不是要抵制学习C&#43;&#43;,而是说学一样东西必须看到成果,如果你有环境学C&#43;&#43;,例如公司有项目,那就跟着学,这样有人可以问,有环境压力才能学好。我看见很多人说要学C&#43;&#43;,但是因为实际没有用到最后几年过去了还是只背得一些基本语法。
&&& 那VC不热的原因也是他的市场小是吗?
&&& 其实VC也不能说不热,很多公司还是要用它的,它用得相对少,但是会的人也少,我面试过VC的人,来面试的很少有人合&#26684;的,简历写得不错,可是一问连strcpy复制了多少内存都不清楚。C&#43;&#43;还是很缺的,相反会java、C#的人比较多。
&&& 应该选择学习什么语言呢?
&&& 我的建议是:
&&& 对于原来没有多少计算机基础的人,建议从java、C#学起,如果以后以此找到了一份比较好的工作,你可以继续深入研究它,也可以把计算机技术和公司的业务多结合,计算机只是工具,要跟业务结合才能产生价&#20540;。如果以后有C&#43;&#43;学习的需要,例如公司业务的需要,那可以在项目中学习它,因为有环境的需求压力和前面的编程基础学起来会比较容易一点。
&&& 对于已经有一定的程序设计基础的人,如果你想做一些比较底层的开发,或者有实际项目的需要,可以选择学习VC.
&&& 最后我要说:VC绝对不是大公司用的,、C#绝对也不是小公司用的。语言和工具在这里没有可比性,只存在各自的优缺点。
转至:/others/924.html
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:53385次
排名:千里之外
原创:12篇
转载:77篇
(1)(4)(4)(6)(3)(10)(17)(7)(2)(1)(3)(4)(6)(2)(6)(1)(1)(10)(1)

我要回帖

更多关于 java执行shell脚本 的文章

 

随机推荐