分享

这么多编程语言,我该学什么呢?

 FXian100 2017-09-07

  编程语言那么多,改怎么选呢,作为一个编程刚刚了解的人,往往很纠结语言该怎么选!学习编程 的小伙伴是不是同样有这个困扰呢!

  冥思苦想

  听说流行Java,php是最好的语言,入门应该从C开始,满满的小纠结,这么大一堆语言无从入手,初期选择的时候难以决定,到底那个工资高,那个比较好找工作,那个比较好学等等问题困扰在选择期的小白,还有那个英语好难,怎么办,怎么办,想学又好纠结。


  展开剩余96%

  打开电脑,上网查哪个好

  自己纠结不清了,还是上网找人问问吧,java好,c好,html吧,还是来php吧.......结果网上也没找到自己想要的结果,此时的内心是奔溃的,到底该学什么,其实不单纯只是初次接触编程的小白有这个问题,学习一段的小伙伴们也会有,看见别的比较好,在想是不是要换去学那个语言呢?这个啥都没学会,要不要换个呢?


  想,问题在那?

  其实问题并不在于那个语言好,虽然编程语言看市场,看行情,但是这在学习编程的路上属于次要的。之所以犹豫不决,那是因为你没想好自己学编程目的,你需要给自己一个目标的定位。先想想自己学习编程为了什么,以后想开发什么,你要学那个方向。至于学那个语言,根据自己的想法去确认,比如你以后想往安卓的方向去开发,那你的入门语言可以从Java开始,如果你想搞网站开发,那你可以从HTML学起,当然很多小伙伴对游戏开发感兴趣,那你要想一想你是要开发的游戏的类型,然后随便找个接近的语言开始学。说白了,找个和自己目标接近的语言,挖个坑跳进去,先满满学,不管那个方向,要学的不仅仅是一门,两门语言的事情,路还很长,不要太过于纠结选择什么语言。


  脸黑!

  不知道,你是否解除了能一些心中的困惑,编程语言中有绝大部分的共同点,学习编程不是要去学习哪门语言,不管哪门语言,它不过是一个工具罢了,主要的还是去理解编程的思想,去观察不同语言中不同的特性!重视语言的特性,而不是语言本身,很多语言具有共同性,神秘人从C入门,学C 的时候顺风顺水好长一段时间,因为很多都学过,Java也差不多,所有语言共同点很多,当然很多语言不具备可比性,php里面有各种语言的特性,但是它和c/c 这些却没有可比性,你不可能用php去写一个桌面程序,所有程序是没有可比性的。


  思路似乎一下就开了

  是不是现在就清晰好多,学编程的小白,不要犹豫这些细节上的问题,开始干吧!学编程,学了好久终究觉得自己是小白,就是那天成为大神了,也会幽默的说自己不过是小白,马云说的一些话很有道理,明知道你自己顶级,你还是要默默的说自己第二.......

  职场中最受欢迎的九大编程语言

  Python

  当我们思考应该找哪一门语言入门时,往往会有人跟你推Python。Python是一门比较简单的编程语言,同时具有极高的可读性和灵活性,最近它已经成为大学院校在教授计算机专业时选择的入门语言之一。



  C语言

  C语言也是许多人极力推荐的入门语言,除了经典和应用广泛以外,相比Python,学习C语言可以充分了解计算机相关知识。并且C语言更适合写程序。


  C++

  C++也是在C语言的基础上开发的一种面向对象编程语言,应用非常广泛。常用于系统开发,引擎开发等应用领域,支持类、封装、继承、多态等特性。C++语言灵活,运算符的数据结构丰富、具有结构化控制语句、程序执行效率高,而且同时具有高级语言与汇编语言的优点。



  Java

  Java 是目前所有主流浏览器上唯一支持的脚本语言。Java入门难度较低,可在任何浏览器上开发及调试,不需要安装额外的软件。作为一门灵活的脚本语言,JS有很多用途:前端,后端,游戏脚本等。


  Ruby

  Ruby是一门有趣的开发语言,优雅而又不失实用。Matz在设计Ruby的时候就想方设法让Ruby成为一个“人性化”的语言,力求使Ruby程序员感觉到使用Ruby是一件愉悦的事情。你能从Mixin、程序块、元编程、极具包容性的语法等等当中获得一种喜悦。


  Java

  Java是一门面向对象编程语言,Java语言具有功能强大和简单易用两个特征。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。



  PHP

  PHP是一门简便的Web开发语言,可广泛用在网站开发,API接口开发,服务器端开发,广告系统开发,内部OA系统开发,移动端后台开发,游戏开发等。入门不难,难的是掌握好一整套开发体系。



  Objective-C

  通常写作ObjC或OC,是扩充C的面向对象编程语言。Objective-C的流行归功于iPhone的成功。编写iPhone应用程序的主要编程语言是Objective-C。



  C#

  C#是运行于.NET Framework之上的高级程序设计语言,由C语言和C++衍生而来。具有安全、稳定、简单、优雅的特点,C#使得C++程序员可以高效的开发程序。


  最有效学习编程的24条方法

  1Determine your area of interest明确你的兴趣点.

  你可以选择任意一门计算机语言起步,首先你要明确学习编程目的。这个可以帮助你确定编程语言的类型,是一个学习的好起点。

  如果你的目标是网页开发,也有一大堆不同的语言(有别与计算机应用程序)。移动应用开发也需要一组技能,有别于机器编程。这些决定都将影响你的学习方向。

  2Consider starting with a 'simpler' language考虑从简单的语言入门.

  不管你们的初衷是什么,编程入门应该选择一个简单的高级语言。这些简单高级语言对初学者很重要,它们会让你明白基础的概念和流程。

  最流行的是Python和Ruby。它们是面向对象的,支持Web应用程序 , 而且语法可读性好。

  面向对象是指,这个语言是基于对象、数据的集合及数据的操纵来构建的程序的。面向对象的概念在诸如C++,Java, Objective-C, 和PHP广泛应用。

  3Read through some basic tutorials for a variety of languages.阅读一些基础的教程

  如果你还不能确认学习什么编程语言,首先阅读一些基础教程。如果感觉一门语言比另外的语言更有意思,可以尝试一下。网上这类教程很多。

  Python - 这门语言是比较好的起步语言,功能非常强大。在编写Web应用程序,游戏应用广泛。

  Java -适用于很多的程序,从游戏到Web应用,到ATM机等,都有它的身影。

  HTML - 对Web开发者来说,这是必学的一门基础语言。对于开发各类Web应用程序,掌握它是非常必要的。

  C - 历史悠久的一门计算机语言,也是一个功能强大的工具,对于学习C++,C#,Object-C来说,它是它们的基础。

  4Learn the core concepts of the language.学习编程语言中一些重要与核心的概念。

  这部分内容,主要取决于你选择的编程语言。每门编程语言都有一些基本的概念,这些概念是编写程序的基础。尽早熟悉并掌握这些概念,让你更容易的解决问题,创建功能强大、高效的代码。下面是一些编程语言的核心的概念:

  Variables -变量:存储与修改数据的方法,变量可以变程序所操纵,一般会定义类型,如整形,字符串等,用来确定数据存储的类型。编写代码时,一般会指定变量的名称,其目的是起到标识并区别。更容易理解这个变量与代码其它部分的关系。

  Conditional Statements - 条件语句:指令根据条件的成立或者不成立,执行不同的代码 。最常用的表达式是If-Then结构。如条件成立(x=5的情况),做一件事情,如条件不成立(x<>5的情况)做另外一件事情。

  Functions or Subroutines - 函数或者子程序:它的真实的命名因程序语言不同而异。常常被叫做“过程”,“方法”,或者“调用单元”。在大程序中有小程序很重要。一个函数可以被程序调用多次,这样方便程序员编程时很高效。

  Data input - 数据输入:这是一个在很多程序中使用的很大的一个概念,包含程序如何处理用户输入数据,如何存储数据。数据如何收集也与不同类型的程序、提供的输入变量有关。如何输出数据,是通过显示器还是文件,也是同样道理。

  5Install any necessary software.安装所有必备的软件(工欲善其事,必先利其器)

  很多编程语言需要编绎器,它也是一些用来把代码转化成机器语言的程序。另外一些语言如Python无需编绎器,而过通过解释器边读取边执行的.

  一般程序编辑有一个集成开发环境(IDE),通常由代码编辑器,编绎器或者解释器,还有调试器等构成。这样程序员可以在同一个地方完成基本上所有的功能。IDE通常又包含可视化的对象层次结构的目录.

  现在网上有很多代码编辑器,这些程序提供各种彩色文本高亮显示和很多用户友好的工具,.

  6Focus on one concept at a time 同一时间段专注一个概念.

  程序界一般教一门新的语言会用“你好,世界”来起步。它只在屏幕上显示“你好,世界”的简单程序。它教会新手创建产基本程序结构的最简单的语法,及处理显示的输出。通过修改文本,你会了解程序如何处理基本数据。下面的链接是不同的编程语言显示“你好,世界!”:

  Hello World in Python

  Hello World in Ruby

  Hello World in C

  Hello World in PHP

  Hello World in C#

  Hello World in Java

  7Learn through deconstruction of online examples.通过剖析网络上大量案例来学习。

  网络上有大量的代码实例可供学习与参考,通过实例的学习,可以了解语言工作的方方面面及它们部件之间如何交互。可以从实例中选取部分代码来创建你的程序。

  8 Examine the syntax.检查语法的正确性。

  语法是编程语言的书写正确方式,这样编绎器与解释器才能够理解程序。每个语言的语法都是不一样的,尽管一些元素共享多门编程语言。学习语法知识是学习编程的基本功,编程代码也体现了程序员的思想。现实中也一样,语法是语言中其它高级功能的基础。

  9Experiment with changes.通过修改程序进行不断的实验

  修改样本程序,测试结果。通过大量实验,你会学会那些可行,那些不可行,这种方法比阅读书本与编程指南要高效与快速。不要害怕程序的中断,学会如何纠正错误是开发过程中一个不可缺少的步骤,新事情一般不可能第一次就能够正常运行。.

  10Start practicing debugging.开始练习调试代码

  一旦编写程序,你会经常遇到错误,它们会出现在程序任何地方。它们是不通过编绎或者解释的主要错误。找到并修正这个错误是软件开发环节中一个重要环节,所以不要紧张。

  修改基本程序时,经常会碰到程序问题.找到不同解决问题的方案,是作为程序积累经验与技巧的最佳途径。

  11 Comment all of your code.对代码进行必要的注释

  程序语言一般都注释这个功能,注释的内容编绎器与解释器是不会处理的。一般情况下,注释要求用简洁的,自然语言来解释代码的做什么。在大型程序中,这个方法可以帮助你记住代码的功能,在团队协助的环境下,也是让他人读懂你的代码的方法。.

  12 Code daily.每天都编写代码(拳不离手,曲不离口)

  掌握一门编程语言非常费时,即便是Python这个语言,也需要1-2天才能够理解基本的语法,掌握需要更多的时间。与其它技能一样,熟能生巧. 每天抽出一点时间编程,即使工作或者用餐中的间隙时间。

  13Set goals for your programs.为编写的程序设定一个挑战性目标

  设定一个可行但又有挑战的目标,这样能够解决问题,提出方案。先想出一个简单的应用程序,如计算器的开发及步骤。在编写过程中使用已学的语法与概念,并运用到实际中。

  14 Talk with others and read other programs.与高手交流,经常阅读别人的程序

  有很多的编程社区,致力于特写的编程语言或者相应学科。参于到这些你感兴趣的社区活动,你会接触大量例子,工具来帮助你学习。阅读别人的代码可以激发你的创造力,帮助你掌握一些核心的概念与思想。

  去看看编程的论坛,尽量参与进去,不局限于问问题。社区里有很多的协助,讨论,不局限于问答。不要羞于问问题,提交你的工作,打开的想像力,尝试不同的方法。

  积累到一定的程度,参加一些编程果酱,这些是个体或者团队定期开发一些功能性程序,一般面对一些特定的主题。这些活动好玩,也是接触其它程序员的好方法。

  15 Challenge yourself to keep it fun.挑战自己,让编程变得有趣好玩

  挑战一些你不知道如何做的事情。并研究提出解决问题的方法,并用你的程序实现问题的求解。为了不满足于简单的基本程序,尽量想办法让代码完美的运行起来。

  16 Take a few training courses.参加一些培训课程

  很多的大学,社区学院,社区提供一些编程课程或者就业课程,你可以参加这些课程。对新手来说也是一个非常难得的机会,你可以得到有经验丰富程序员及时的帮助,也可以与当地的其它程序员协作分享。

  17 Buy or borrow a book.购置或者借阅一些工具书

  编程方面的书籍多如牛毛。当然你的知识不可能都书本上来,书本只做一些重要参考与案例的解读.

  18 Study math and logic.学习数学与逻辑的知识

  编程一般涉及到简单的算术,.你还要学习更多的高级内容。这一点对于编写复杂的模拟或者涉及大量算法的程序。对于大多数日常工作的程序代码,并不涉及大量高级的数学知识。学习逻辑,特别是计算机逻辑,对于理解与解决复杂问题,编写高级的程序很有用。

  19 Never stop programming.不要两天捕鱼,三天晒网

  要成为某一行业领域的专家,有一个很著名的1万小时理论。虽然这个理论有很大的争议性,但还是有一定的普适性。时间与专注是不可缺少的先决条件,不可能一口气吃成一个胖子,如果你聚集于一点,不断学习,你就很可能成为这方面的专家。.

  20 Learn another programming language. 学习一门其它的编程语言

  精通一门语言固然好,很多程序员是通过学习多门语言帮助他们获得成功。他们的第二,三门语言是第一门语言的补充,他们能够开发出更复杂与有趣的程序。如果你第一门语言精通,也是学习一门新语言的好时机。.

  你会发现学习第二门语言时,学习速度比较快。一些核心的概念是通过语言再次呈现的,如果这些语言比较相似。

  21 Enroll in a four year program.参加四年的课程

  四年的大学学习计划,让你接触不同的语言,和机会与更多的专家与学生接触。但这个方法并不适用任何人,比如说很多成功的程序员并没有上过大学。

  22 Create a portfolio.制作个人简历

  编写程序的同时,也在扩展你的知识,确保你的所有好的作品写入履历中。在面试中你可以抛出你的履历作为你的工作案例,主非常有说服力。这些作品可以是你利用自己时间做的作品,也可以是你参与其它公司的项目。

  23 Do some freelance work.做一些特约的工作(兼职工作)

  程序员是一个很大的自由职业市场的工种,特别是对于移动APP的开发者来说。找一个自由工作,体验一下编程如何商业化。你可以通过自由市场构建你的履历、发布你的工作。

  24 Develop your own freeware or commercial programs.开发自己的免费或者商业化软件

  你也不一定非要就职于一家软件公司才能挣钱。如果你有编程技能,你能够自己开发软件,并在自己的网站或者其它的商业网站上发布软件出售它。不忘记要提供服务与后续的支持工作,因为顾客需要它来完成他们的工作.

  发布免费软件,是一种比较流行分发程序与工具的方式。开发者没有任何收益,但这是打造网络知名度并且让社区可见的一种好的方法。

  作者| 图文来自网络、如涉及版权问题,请联系我们以便处理。文章内容纯属作者个人观点,不代表本网观点。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多