现代编程语言的清单确实很长。 这就是为什么希望自己一生从事软件开发的初学者迷失在第一步的原因:他们不知道选择哪种编程语言。 实际上,选择比乍看起来似乎要简单得多。 如果您以后不想后悔,请先尝试找出:
- 这种语言受欢迎吗?容易学习吗?为没有经验的“这种语言”开发人员找到第一份工作容易吗?
另外,问自己一个重要的问题,可以归因于选择的主观原因:
- 您是否知道要发展什么,或者您尚未决定要在其他领域尝试?
根据以上这些问题,我写了一篇关于五种非常流行和不同语言的利弊的文章。 我基于TIOBE和PYPL受欢迎程度指数,其他一些互联网资源以及我自己的经验。 在过去的10年中,有超过50%(实际上更多)的代码正是用这5种语言编写的。
What do you need to know about Java
Java是一种通用语言。这意味着它几乎对所有事物都有好处。 它或多或少地被广泛应用于许多不同的领域。 我将在下面详细讨论。
Java的设计牢记“一次编写,随处运行”的原则。跨平台概念的思想变成了Java虚拟机(中间层),使Java代码可以在不同的设备上工作。 例如,首先创建了PC版的Minecraft,后来又轻松地将其移动到了不同的平台。 Minecraft首先是用Java编写的。
Java是一种面向对象的语言。这意味着Java中的所有内容都是具有其状态和行为的对象。 较旧的语言大多是面向过程的,因此程序是逐步说明的一种。 一个小例子:我们有两架钢琴。 如果要以过程语言风格描述它们,请描述第一架钢琴,然后描述第二架钢琴。 如果使用面向对象的语言,则描述的是对象—“钢琴”,并描述其一般功能,例如“制造商”,“创作年”,“所有者”。 每架钢琴都有一种行为-音乐家按下某些键时会弹奏。
因此,您可以创建一个类别-“钢琴”,并可以将其用于一台,两台或一百万台特定的钢琴。 这非常有用,尤其是对于大型程序。
从第8版开始,您可以自由使用函数式编程范例和面向对象的范例。
最新版本的Java(截至撰写本文时)已于2019年3月发布,下一个将于同年9月发布。 Java正在不断开发和更新。
Java罗y,这是初学者使用该语言的主要弱点。
Java有多种库解决几乎所有您可以描述的问题。
Java is blessed with a huge community that supports you while you’re learning. For example, powerful StackOverflow community, where you can ask questions.
Where Java is used
Java几乎无处不在,从最新的Tesla汽车到小型智能茶壶或您的Android手机。 大型公司正在使用Java,例如Airbnb,Uber,LinkedIn,eBay,Pinterest,Spotify等。 别忘了Google,这家巨头的产品主要是用Java编写的。
Java在两个主要领域都比其他任何人都强大:巨大的企业级服务器应用程序和Android设备的移动程序。 由于安全级别最高,因此许多政府Web应用程序都是用Java开发的。
Java在视频游戏开发中(不包括Android游戏)不如C ++大,但即使对于编程游戏,它也是一种合适的语言。 Minecraft是历史上最成功的游戏之一,就是一个很好的例子。
Java的简要列表:
- 企业级Web服务器应用程序API接口大数据云计算Android应用银行应用嵌入式系统桌面应用
Java非常多样化。 因此,如果您对列表中的一个感兴趣或尚未决定,那么您想要什么,Java对您来说是一个非常好的选择。
Is Java beginner friendly?
Java是一种非常简单的语言,逻辑合理且结构良好,但不是最简单的语言。 它比C ++更容易,也更安全,但是Java的基础知识比Python的基础难学。 不过,将Java作为第一语言似乎是个好主意,因为它从一开始就教会您编程的良好基调(例如,不同于JavaScript)。 如果您知道Java,那么切换到Python是一个非常简单的过程,如果您已经了解Java,那么“艰难”的C ++似乎更容易学习。
对于初学者来说,Java的主要缺点是它的冗长性以及并非所有单词都能立即被理解的事实。 因此,为Java学生解决许多实际的编码任务尤为重要。 它们有助于理解Java语法和“自动化”标准操作。
但是,实践是学习任何编程语言中最重要的一点。因此,对于任何新手程序员,我的第一条建议是:尽可能多地练习。 为了找到适当的练习编码问题,例如,将Internet资源与任务和代码验证结合使用
CodeGym — lectures and a lot of coding practice, only Java, from scratch to upper intermediate.
CodinGame — different languages, from pre-intermediate and higher.
CodeWars — different languages, from pre-intermediate and higher.
Is Java popular?
Java is one of the most popular languages. It is number one in TIOBE rating and number two in PYPL index. According to iDatalabs more than 164, 000 companies use Java, most of them located in the US.
Is it easy to find the first job for inexperienced Java developer?
Java是第一份工作的最佳选择,因为有许多大型项目不仅需要经验丰富的程序员,而且也需要Junior。 Java通常用于大型企业软件。 通常,它的设计着眼于多年的工作。 不断需要对其进行修改和维护。 有时会添加新的块。 新代码需要包含在单元测试中,并且这类工作通常委托给初学者Java Junior Developers。
What do you need to know about Python
Python是一种通用语言,因此您可以将其用于解决不同的问题,通常用于网络。
Python具有极其纯净和优美的语法。您无需在代码段中使用大括号,而在空格或制表符前加冒号即可。 这不仅方便了代码,而且迫使程序员正确地组织了代码,否则将无法工作。 Python使用一个单词,而Java使用三个单词。 但是,Python语法学习其他语言不是很容易。
Python是一种动态类型的语言这使其非常灵活,您可以使用不同的方法来解决问题。 但是,据此,您的错误不会像Java或其他静态类型的语言那样明显。 动态类型也使程序相对较慢。
Python有很多库这不仅可以帮助您编写代码,而且还可以解决您第一步中遇到的有趣问题。
Python拥有强大的社区可以帮助您学习和解决编码问题。
Where Python is used
您可以在任何地方使用Python,Instagram,Pinterest,Dropbox和Reddit等许多知名项目都使用基于Python的Web应用程序。
Python的主要主题是后端Web开发,但它是一种通用语言,因此可用于不同领域,例如生产力工具,游戏和桌面应用程序。 它是数据科学(机器学习,分析,AI)和脚本(用于自动化一些简单任务的简短程序)中最受欢迎的语言之一。
Python的简要列表:
- 后端网页机器学习数据分析人工智能脚本编写
Is Python beginner friendly?
如今,Python是研究编程的第一语言。 几乎所有的课程,高中学院和大学都将这种语言用于学习目的。 与其他语言相比,Python程序要短得多,它的语法很简单,并且即使对于一个新手来说,代码也易于阅读。 但是,在Python之后学习其他语言并不是那么简单。 它的语法太清晰,某些基本操作与其他语言有所不同。
As usually, it is important to have some practice on Python. You may try GeeksToGeeks for coding tasks and python.org to learn the basics.
Is Python popular?
Undoubtedly, Python is a very popular language, and its popularity is growing fast, thanks to clear syntax and educational institutions that use it for learning issues.It is #4 according to TIOBE and #1 in PYPL index. iDatalabs says, that there are more than 79,000 companies using Python.
Is it easy to find the first job for inexperienced Python developer?
在某些市场上,新手Python程序员的需求不是很大,但是在美国,有可能找到对新秀后端开发人员或脚本编写者感兴趣的公司。 我注意到,对于新手来说,如果他们知道Java,而不是Python,会容易得多。
对于数据科学,所有事情同时变得更加容易和复杂。 该行业正在积极发展,但是它是科学密集型的,不仅需要语言知识,还需要一定水平的科学知识。
What do you need to know about JavaScript
经典JavaScript(不是Node.JS)是用于前端开发的脚本语言。这种语言可帮助您创建动态更新的内容,控制多媒体,从而使您在网站上看到的一切或多或少。 因此,如果您对此感兴趣,JavaScript是您最好的朋友。
通常将JavaScript嵌入HTML代码中。如果您想成为前端开发人员,请学习HTML,CSS和JavaScript。
JavaScript是一种解释型语言。因此,不需要编译它。 JavaScript以交互方式呈现网页。
JavaScript是浏览器的母语。因此,您可以从浏览器开始对JavaScript进行编码,而无需设置任何开发环境。 真的很方便,但是…
尽管所有浏览器都“了解:JavaScript,相同的代码有时在不同的浏览器中表现不同。
JavaScript具有一些特定的设计概念,使初学者可以轻松地破坏所有问题,而没有答案“我的网站发生了什么?”。 例如,JavaScript是一种动态非类型化语言,因此您可以根据上下文阅读同一段代码。
JavaScript具有最大的StackOverflow社区而且还在不断增长。 这对每个开发人员都非常有用,特别是对于新手。
了解JavaScript的基础知识对每个程序员都是一个好主意即使您没有成为前端开发人员的计划。
Where JavaScript is used
纯JavaScript(通常带有jQuery和Angular等框架)用于前端(客户端)编程。 NodeJS是用于后端编程的JavaScript。
Is JavaScript beginner friendly?
据说这是获得编程职业的最简单途径。 直接从浏览器开始编写JavaScript很容易。 使用这种语言的简单程序真的很容易。 但是,JavaScript不适合作为第一语言,因为它是动态无类型语言而且很难调试代码。
因此,我的建议是:即使您想成为前端开发人员,也最好学习另一种语言(Java或Python)的基础知识,然后再使用JavaScript。
If you want to learn JavaScript, first learn a bit of HTML and CSS. You can find many good JavaScript (as well as HTML + CSS) courses and tutorials for newbies, such as CodeCademy and w3School.
Is JavaScript popular?
It is extremely popular because front-end is everywhere. JavaScript takes 7th place in T一世OBE and the third in PYPL.
Is it easy to find the first job for inexperienced JavaScript developer?
这很容易,因为JavaScript几乎使用每个公司。 但是,您应该知道,公司中前端开发人员的数量通常少于后端开发人员的数量。
What do you need to know about PHP
根据专业开发人员的说法,PHP不是最好的语言。原因是“设计不良”,这意味着没有明确的PHP哲学。 尝试在PHP上编写一个长程序会使开发人员的生活陷入死地。
但是,PHP仍被广泛使用。该语言的主要盟友是历史(许多站点是在1990年代及以后使用PHP编写的)和免费和开源内容管理系统Wordpress。
PHP的输入方式较弱,这表示在字符串,数字等之间进行无提示自动转换。 PHP非常软且有错误,在找到有问题的部分之前,您可以编译并运行程序。 尝试跟踪PHP脚本的正确性是一件艰辛的工作……
PHP社区很大,因此您可以在互联网上寻求帮助。
Where PHP is used
PHP是专门为服务器端Web开发而创建的首批专门语言之一。 因此,PHP非常流行就不足为奇了。 前一千万个网站中,有80%用PHP编写或部分使用PHP。 最突出的例子是Facebook和Wikipedia。
Is PHP beginner friendly?
对此有不同的意见。 一些专家认为,PHP的入门门槛很低。 但是,您应该考虑语言设计的功能,这些功能可以使您忽略错误。 对于没有经验的程序员,这是一个非常困难的考验。
If you are interested in learning this language, just start practicing. A good interactive and free tutorial is learn-php.org.
Is PHP popular?
如上所述,PHP非常流行,在前1000万个站点中,约有80%用PHP编写或部分使用PHP。 但是,情况正在改变,其受欢迎程度正在下降。 后端Web开发人员更喜欢使用更简单,更强大的Python,而不是PHP。 这并不意味着PHP很快就会消失,这是不可能的:有太多的PHP站点无法使它们立即消失。
Now PHP is #9 in TIOBE and #5 in PYPL index. According to iDatalabs there are more than 3,5 million companies use PHP.
Is it easy to find the first job for an inexperienced PHP developer?
PHP为您提供了一个寻找自由职业者的好机会。 基于PHP的WordPress是非技术人员中非常流行的CMS,因此他们经常从自由职业者那里订购WordPress网站(开发和支持)。
而且,PHP仍然在Web上的任何地方广泛使用,因此对PHP开发人员有一致的需求。 但是,PHP开发人员的平均工资比Java或Python程序员的通常工资低一些。
What do you need to know about C++
C ++是一种非常强大的语言。它快速且合理地使用计算机资源。
由于性能,C ++通常用于开发游戏(包括AAA标题)和游戏引擎。
秘密武器:指针。C ++可以被视为编程世界的双刃剑。 它非常有效,但是您需要明智地使用它。 说,指针,即值是其他对象地址的对象,赋予了其他语言无法赋予的强度。 它既美丽又危险。
C ++具有极强的可扩展性。这就是为什么它用于构建资源密集型应用程序。
C++ has a smart community. For example, C++ users on StackOverflow are more advanced, so their questions and answers are better than usual (83.6% overall answer rate).
Where C++ is used
在需要速度和可伸缩性的地方使用C ++。
- 电子游戏和游戏引擎。当今大多数AAA游戏都是C ++标题,几乎所有的游戏引擎都是用C ++编写的。 例如,Rockstar Advanced Game Engine用C ++编写,并为设计人员注入了一些脚本语言。桌面应用基于图形用户界面,例如Adobe Illustrator和Premiere编译器。许多编译器主要是用C ++或其较旧的非面向对象的Bro C语言编写的。操作系统。几乎所有Microsoft以及Apple操作系统的某些部分。浏览器。C ++用于Google Chrome和Firefox。工具类用于3D动画,建模,仿真,渲染。
Is C++ beginner friendly?
C ++作为第一语言很难学习。它有很多陷阱。 例如,C ++是一种面向对象的语言,这意味着经常创建和销毁对象。 但是,内存管理的方法组织得不好。 程序员自己不得不监视内存管理,以避免内存泄漏和悬挂引用。 那不容易。 С++是该列表中唯一一种我建议与导师一起严格学习的语言。
Is C++ popular?
It is popular and according to the T一世OBE Index for April 2019, C++ is currently rising in popularity. Now C++ moves into #3. However, the language is still far away from its popularity at the beginning of this century when it had a market share of more than 15%. In PYPL rating C++ together with C are #6.
Is it easy to find the first job for inexperienced C++ developer?
好…。 从定义上来说,C ++开发人员是一名优秀的开发人员。 通常,C ++的初学者具有其他语言的经验。 如果您真的对创建游戏等感兴趣,那么迟早会找到一份好工作。 但是,您应该记住:C ++开发人员的道路是奋斗者的道路。
Conclusions
- 如果您不知道将来要做什么,请选择Java。企业? Java。如果您想成为科学家程序员,请选择Python或Java。C ++是创建主流视频游戏的最佳选择,但对于新手来说却很难。移动开发? Java。如果您想尽快学习母语,请选择Python。如果您想学习一种语言,以后有机会尽快切换学习Java。如果您想成为前端开发人员,请学习JavaScript。无论如何,在学习第一门语言之后,都可以学习JavaScript的基础知识。不要忘记每天独立地练习编码!
Was published on Quick Code.
from: https://dev.to//selawsky/top-5-popular-programming-languages-to-learn-1gij