现在学哪种编程语言最好

如题所述

1.零基础,打算自学编程,应具备哪些的知识?
答:
对于入门阶段,对知识水平的要求并不算高,或者说很低,大家都应该听说过xxx小学生编程如何如何这般这般怎么样之类的话题,这里,我们不谈长期发展,只谈如何入门。首先,我觉得你应该具备计算机的基本操作能力,如果说你连新建一个文件夹或者说从网上下载资料都不会,那么你应该先买本《windows xx从入门到提高》看,然后再考虑编程这件事,如果你觉得对计算机的基本操作已经熟练后,请继续向下看。
2.学编程应具备哪些条件?
答:
第一:硬件保证,首先你应该具备一台电脑,不管是笔记本还是台式,也不管性能高低,性能对前期学习编程几乎无任何影响,就入门来看,操作系统还是首选windwos。
第二:有xx语言的入门本书,纸做的,具体xx语言是哪种语言,后面我们再讨论这个问题。虽说现在铺天盖地的都是电子书了(保留这句话的确定性),到处是扫描版,还高清呢,但我还是推荐看纸做的书,好处有两点,其一是便于携带,可以随时翻阅;其二是避免眼疲劳,我不信你一直晚盯着显示器看电子书眼睛不会酸;还有一点,尊重图书作者的版权。
第三:时间保证,如果你每天都有一大堆事等着你去处理,先去处理那些事吧,处理完后把剩余时间划出一整块的给编程,进行随时可能被打断的学习,在编程这块,我不认为这是在用功学习,零碎时间去背单词?应该是个不错的选择。
3.你确定要学编程?
答:
这个问题看起来有点多余,但为什么要提出这个问题?要知道,编程不是一朝一夕的事,如果你只是一时的冲动,或者仅仅是要完成心目中的某个小工具,并没有长期写程序的打算,这样的话,编程不学也罢,毕竟编程从入门到能独立写软件会有很长的一段路要走,中途一旦放弃就前功尽弃,并且已经浪费了你大把的宝贵时间,实在是得不偿失。不过,你尽管吐槽说是这是你的业余爱好,有个爱好也挺好,那么,继续往下看吧。
4.如何才能入门?
答:
到底怎样才能入门?其实,只要你有毅力,慢慢折腾个一年半载,肯定能入门,但写这篇文章的目的就是为了把这个周期缩短些,不是吗?所以,下面我就以个人的观点来谈谈怎么才能更快的入门,这里先笼统的介绍下,对于每点,后面单独介绍。
–1>.去了解计算机的基本组成,计算机的发展史和编程的发展史,看起来和编程没什么关系,潜在的影响还是十分大的;
–2>.选择一门简单的语言作为入门语严;
–3>.学会使用搜索引擎;
–4>.知道如何看书;
–5>.要”像”个高手;
–6.>应具备的学习态度;
4.1:了解这些历史的意义:
了解一些编程的实质远比知道如何编程更有意义,不要在编程是怎么回事的情况下就去学习编程,这样对你的学习是十分不利的,作为一个编程爱好者,知道计算机的工作原理,这应该是一件再正常不过的事,你难道不想去知道吗?
4.2>.选择入门语言:
这个问题在入门阶段一直是争议十分大的问题,n多语言,n多推荐,到最后搞到新手一会听说这种语言适合新手,于是学习这种语言,一会又有人说xx语言是垃圾、弱爆了,学了也没用,之类的话,开始推荐你xxx语言,于是新手们又开始学习这种语言,搞到最后,什么语言都没搞懂,时间大把大把的流失,热情消耗殆尽。要解决这个问题,首先要明白一个根本问题,怎样挑选适合入门的编程语言?我推荐从难度这个角度来考虑,这门语言必须简单易学,有趣,而且要有一定的热度,有热度才能有更多的人一起交流讨论,翻开编程语言列表,发现有100多种编程语言,而且这个数还是在不断增加的,这里我们一起来看下2012年5月份的编程语言排行榜,能进排行榜前20的,首先在热度上都已经差不多了,现在要做的就是从排行榜里找到一门简单有趣的语言。
2012年5月编程语言排行
对于上述的语言,这里不可能一个个详细介绍,篇幅有限,最主要的是,这些语言的介绍只需要你打开搜索引擎(百度?谷歌?还是其他?随便你喽。),输入这项语言的名字,搜索一下,就能看到他的详细介绍了,如果你说你不会搜索,那么,请返回第一个问题,一般来说,如果你去论坛提问什么语言适合入门,得到最多的结果应该是C语言,没错,就是上述排行榜排行第一的那个,强烈推荐C语言入门的同学如果看到这篇文章可能会很想吐槽,因为这里笔者要推荐的不是C语言,笔者认为,Python语言对于零基础更适合入门,很多人推荐C语言原因我猜测可能有两个,一是全国大部分的高校的编程课C语言是都有开设的,也可以说是学习过C语言的用户基数大,第二是C语言自身的强大,可谓是口碑好。基数大+口碑好,足以让你得到的结果是C语言居多。
笔者是Python语言入门,接触编程时完全是零基础,现在接触了C、接触了C++、JAVA,Visual Basic 6,回味了下,如果让我再次选择一门入门语言,我绝对不会后悔选择Python,建议每位同学去百科搜索下Python,看下是否真的简单易学,并且强大,如果你想快速写GUI(图形用户界面 )的软件,Python有一大把图形库供你选择,不像C语言,半年下来,还是停留在黑框框里,大大打击了初学者对软件开发的信心,对于写游戏,Python也是绝对不会让你失望的,pygame模块为你提供简单快速的游戏开发,Pygame是 跨平台 Python模块,专为电子游戏设计。 包含图像、声音。 虽说没法和Direct X相比,但对于新手来说,独立写个2D游戏不也是一件很愉快的事吗?
对于Python,笔者就不再详细介绍了,只是推荐,具体选择什么语言,决定权还是在你手里,无论是C语言也好,Python语言也罢,下面所介绍的学习方法都是适用的。
4.3>.学会使用搜索引擎:
之所以推荐使用搜索引擎的目的是培养更好的独立解决问题的能力,通常来说,刚学编程时,可能我们有时候连使用什么软件作为编程环境都不知,或者下载安装了编程环境却不知如何使用,这时搜索就派上大用场了,跑到搜索引擎里输入”xxx 使用教程”,结果就出来了,简直太方便了。
而且,新人都喜欢加很多xx语言的编程群,而且大都是挑人多的加,一旦编程中出现了一点小错误,就立马到群里提问,这是一个很不好的习惯,假如说群里有人在线,为你解决了这个问题,那么你独立解决问题的能力就降低了一分,假如没人在线,你就可能面临着等待,或者把问题放这,不去管它,这样积累的后果你是知道的,最好的方式就是动用搜索引擎,不需要等待,还可以锻炼独立解决问题的能力,何乐而不为?还有一点,许多新人反应说许多知识搜索不到,我很负责任的说,不是搜索不到,是你不会使用搜索引擎,至少我现在在编程上还没有遇到过搜索不到某个知识点的情况,对于搜索的使用技巧,如果你还不知道,去搜索吧。
总之,有问题,就要去搜索。
顺便说句,加很多群不是一个好习惯,群里并不能让你学到太多知识,他的功能在于能找到一群有共同话题的朋友,真实的情况是大多时间都在时一起闲扯一些与编程无关的话题。
4.4>.知道如何看书:
无论是电子书还是纸做的书,都会有页码(txt?当我什么都没说过),要做好学习的计划,每天看多少页?这倒不是,不要忽略目录这个好东西,先认真看下一本书的前言和目录,了解本书的知识点的分布,这样有利于更快的融入这本书,然后按章节作学习计划,按页来你就不怕把一个知识点切成两半?笔者看书时第一遍喜欢浏览,也就是走马观花的看,花一上午或一下午从头把书悠闲的翻一遍,不求记住知识点,只求记住几个名词,知道书里面有这些东西,给大脑一个模糊的印象。
从第二遍开始认真看,不放过任何一句话,碰到不明白的名词,没关系,搜索解决。看书要及时复习,推荐“看五退三”(笔者自造的词)式看书,也就是说一次看五页,下次看书式再向后退回三页,这样可以起到很好的复习效果,遇到确实看不懂的地方,也不要停留太长时间,很有可能当你继续向下看,再返回这个问题时,发现你已经可以理解了,这种情况很常见。
代码是一定要亲手调试一遍的,要亲手输入一个字符一个字符的输入,不是机械的复制粘贴,复制粘贴的后果就是你自己感觉学的差不多都理解了,然后到你上机亲手写代码时,要么写不出来,要么一运行报错一堆。所以,书上的每段代码都要亲自调试(再次强调:学编程,就必须得要亲手实践,不要想着走捷径,捷径在哪?有捷径我早走了。)
对于代码报错,作为新手,正常的不能再正常的一件事,这里说两点,注意单词的拼写错误和符号是不是在英文状态下输入的;还有就是坚持自己找出代码错误,坚持,代码报错不求人,自己解决。
4.5>.要”像”个高手:
在写这几个字的时候我还是在担心等等这句话会不会造成误解,像个高手,并不是让你打肿脸充胖子,而是一种激励自己学习的一种方法,具体就是,要多帮助其他新人,帮助别人可以提高自己的话就不说了,在论坛或群,你可能遇到新人们各种各样的问题,要么代码报错自己检查不出错误,或者想解决某个问题却找不到方法等等,诸如此类的问题,如果你能解决,一定要记得解答一下,不断这样下去,你在你的圈子里说话就会越来越有分量,别人也就更信任你的能力,正式由于这种信任,也渐渐使你背负上了一种高手的责任感,别人请教问题我能不会?即使出于虚荣心,我们也得不断学习,维护我们在别人心中高手的形象,这样也就达到了刺激自己不断学习的目的。
但是需要记住几点;
一:不要误导其他新人,自己不确定的知识不要回答;
二:对于那些弱爆了的问题,你已经回答过很多遍了,如果别人没指明让你回答,那么就把这个机会让给别人吧,确实没必要再在这些弱爆了的问题上浪费时间;
三:每天冒泡回答问题的时间不要过长,否则会影响到你的正常学习进度;
四:发现自己错了就要勇敢承认,等高手出来吐槽时只会让你更难堪,不要以为新手好忽悠,当新手有天成为高手时,他会记得当初是谁在挖坑让他跳;
(悄悄告诉你:假如有人问题你确实不知道的知识,而你觉得这个问题你能解决的时候怎么办?咳咳、有点事,离开一下,一会再回答你。这时候,不用说了,抓紧时间去翻书、上网搜索,高手的形象不能丢哇!)
4.6>.需要具备的态度:
–①:恒心?专注?相信自己?每当看到有人告诉新人学习方法讲要有恒心,要学会坚持不懈之类的我就想吐槽,做什么事不需要这样的态度?编程,要有激情,要有想象力,不局限于书本上的知识点,大胆实验,尝试把已经学习的话知识点组合成新的知识点,就拿C语言的链表来说,几乎所有的C语言入门书都把链表作为单独的一个知识点,如果说所有的书都取消链表这个知识点,当你学完指针、结构体、再告诉你malloc函数的用法,你能想到可以组合成链表这有趣的知识点么?
–②:学会稳定自己的情绪,当在论坛或群意见不合,或者有人无理取闹时,不要动怒,立即潜水,因为没必要动怒,谁对谁非,旁观者自然能看到,有个词,叫冷暴力。
人往高出走,尽量和高手混在一起,尽管在高手眼里你可能会仅仅是个菜鸟,但这样做确实有利于你提高自己,有压力才有动力。需要叮嘱一点:永远不要指望技术大牛经常出现在xx群,高手在哪里?高手多半都在写程序,会有时间泡群?
笔者的阅历,暂时只能提出这么多建议了,不管建议是好是歹,也算是表达出了心中一直想对新同学们想说的话,所有准备踏入编程这片天空的同学,祝你们学习愉快,早日实现心中的那份梦想。
最后,引用《黑客防线》上的一句话,作为本篇文章的结束语,这句话我一直记在心中:程序员是值得尊敬的,程序员的双手是魔术师的双手,他们把枯燥无味的代码变成了丰富多彩的软件。
温馨提示:内容为网友见解,仅供参考
第1个回答  2007-11-11
建议你先学C
像C++,C#以及Java都是基于C的基本语法衍生的;所以你可以认为C是基础。不过当你到达一定境界你会发现语言只是一种工具而已,只不过每种语言的编程思想不同:
C是支持面向过程编程,它的出现是为了取代汇编语言,不过它的可移植性和简洁、强大使它很快流行,至今仍在大型系统开发、游戏开发、嵌入式开发等领域占有很大市场。
C++的出现是为了在C的语言级别支持面向对象,加入了“类”的概念,它是和C语言兼容的(除极少特性)。后来随着发展,C++变成了一门庞大的语言,它同时支持面向过程,基于过程,面向对象和泛型编程,功能可谓最全。不过它的过于庞大使它难以学习。更重要的是,C++在大学里比较流行,很多学过C++的新手自以为掌握了最难懂的语言,写的程序拙劣无比、漏洞百出。以现在情况看,C++的开发效率太低,在很多领域已经被其他快速开发语言取代。
总的看来,C/C++产生较早,注重程序运行的效率,它们的宗旨是“相信程序员”。所以你既可以享受一切尽在掌握中的乐趣,又可能倍受错误的折磨。
对于C++的种种弱点,Sun的专家推出的Java力求弥补。Java的一大宗旨是“防止程序员犯错”(必然的损失是效率),Java程序比C/C++更安全,不会有那么多隐藏的漏洞,而且它是平台无关的,可以在任意支持Java虚拟机的平台运行。Java是网络时代的产物,网络编程的不错选择。
至于C#,是微软模仿Java的作品,是.Net平台的主打语言。相对于Java平台,.net平台胃口更大,它试图把其他语言包容进来。不过平台之争与你我无关,简言之,C#是类Java,它们相互学习,不断改进,都挺不错的。
不过,最重要的一点:学编程不仅仅是学习语言,更重要的是学习编程思想,学习技巧,培养能力。语言只是工具!
我个人认为新手应从C开始,踏踏实实理解面向过程编程,多读源代码,多写程序。然后接触一下面向对象,理解一下为什么要一切抽象化。
PS:永远不要理会那些语言之争,那更多的是他们的信仰之争。只有最好的程序员,没有最好的语言。一路顺风!
第2个回答  2018-08-04
java现在大红大紫,开发android应用软件必需使用的语言,oject-c因iphone走红,.net的C#微软在大力推广。web开发,php正是鼎盛时期,但python正有取代php之势。C/C++高薪酬的行业,也是最难学的。没有什么比较好,只有不断学,你才能不致于被时代淘汰。本回答被网友采纳
第3个回答  2019-01-16
互联网行业的迅速发展,让越来越多的人开始走进计算机行业,并从事相关的工作。
要成为一个更优秀的程序员,需要经常性地练习编程并用不同的语言和技术拓宽你的经验,但是语言是如此之多,很多时候你不知道从哪里开始,也不知道该选择什么语言才适合你要解决的问题风格。

如果你还没有想好具体的语言,并且想要先试验下的话,建议你搜索求职网站,看看是什么语言抢手。你可以牢牢掌握一些特定的语言,然后开始研究和试验。
不管你恰巧遇到或选择了什么语言,关键是经常练习。尝试不同的语言,通过一些小例子编码,然后用它们构建小的项目。一旦你找到了能与你产生共鸣的一种或一系列语言以及如何处理问题的方法,坚持下去,并经常性地定期实践练习。
如何更高效率地学习编程?
和一种语言一起成长和点燃学习激情的最好办法是,使用你学到的知识来帮助解决令你感到苦恼的问题。不仅要学习语言本身,也要学习语言可以如何应用到实际生活中的问题。
可以尝试一下以下几种学习方式:
1、写博客,展示你正在学习的东西
向世界展示你正在学习,以及你有主动的学习意愿,就可以让你领先于95%以上的同行业开发人员。你也可以练习你的写作技巧,这个过程也能让你学到很多关于自我方面的东西——你如何处理问题,如何分解和解决。你还需要整理一下你常用的思考方式,如何学习和成长,以及如何取得进步。
2、在软件开发社区中表现活跃
解决问题,看别人怎么解决问题,说出自己的声音和意见。这还不是宽容的文化,因为你将会遇到一些非常眼尖的开发者咆哮你怎么在伪代码中忘记了后面那个括号,但这能让你与其他的开发者交流,使得具备接受诚实批评的经验,并知道其他人可能会如何处理问题,从而打开思考问题的新思路。
3、学会如何简明扼要地解释给技术和非技术人员听
要真正掌握高效的沟通,你需要对实际工作中你需要工作于什么有一个基本的了解并彼此交互。如果你能掌握简练,实事求是,通俗易懂的沟通方式,并将复杂的问题和解决方案分解为可理解的小块,那么你就能在软件开发领域立于不败之地。
第4个回答  2018-09-20
java现在大红大紫,开发android应用软件必需使用的语言,oject-c因iphone走红,.net的C#微软在大力推广。
相似回答