关键硬技能
计算机程序员发展硬技能以在他们的职位上茁壮成长。编程语言是计算机程序员必备的技能,他们受益于了解多种语言。语言的使用和适用性各不相同,随着熟练程度的提高,程序员扩大了他们的职业前景。
Linux:Linux是一个免费的开源软件操作系统。Linux最初是为个人计算机开发的,现在可以在比任何其他系统更多的平台上运行。具有Linux专业知识的计算机程序员比其他候选人更具竞争优势。
Java:Java是一种通用的计算机编程语言,具有“一次编写,随处运行”的功能。这意味着用Java编写的代码可以在任何配备Java虚拟机的设备上运行。Java语言的广泛使用使其成为程序员的一项关键能力。
JavaScript:与HTML和CSS一起,JavaScript是互联网的三大核心技术之一。几乎所有网站都使用JavaScript来实现交互性,所有主要的网络浏览器都包含JavaScript引擎。从事Web应用程序的计算机程序员必须对JavaScript有深入的了解。
C++:C++于年首次出现,为C#、D和Java等后续语言奠定了基础。许多程序员在设计软件基础设施和资源受限的应用程序(如桌面应用程序或电子商务服务器)时使用C++。专家建议计算机编程学生学习C++作为他们的第一门语言之一。
ASP.NET:由Microsoft创建,ASP.NET支持动态网页的开发,或在用户每次查看时显示不同内容的页面。ASP.NET还允许程序员构建其他动态Web应用程序和Web服务。大多数现代程序员都学习ASP.NET的更新变体,称为ASP.NETCore。
C#:C#,发音为C-sharp,是一种通用的多范式编程语言。C#于年发布,提供了卓越的灵活性,允许程序员创建动态网页、应用程序、开发工具和编译器。C#被誉为现代、简单且功能强大,是计算机程序员必须了解的核心语言之一,才能胜任该领域的大多数工作。
SQL:SQL或结构化查询语言,用于管理关系数据库管理系统中的数据。SQL最初于年开发,如今仍在MicrosoftAccess等应用程序中使用。虽然计算机程序员可以从理解和使用SQL中受益,但该语言主要服务于专门从事数据库设计和管理的程序员。
HTML:HTML,或超文本标记语言,是网页设计中最常见的语言之一。Internet浏览器从服务器接收HTML文档并将其转换为多媒体网页。鉴于HTML的普遍性,计算机程序员甚至在开始计算机科学本科课程之前就应该努力学习该语言。
PHP:PHP是一种服务器端脚本语言,支持创建网站、内联网、互联网应用程序和社交网络。通常嵌入HTML代码并使用C编程语言实现,很少有程序员专门使用PHP。尽管如此,它的普遍性使其成为编程专业人士非常宝贵的辅助语言。
VisualBasic:VB等事件驱动的编程语言允许程序响应用户操作、传感器输出或外部消息。年,Microsoft停止支持VB,尽管一些软件开发人员仍在使用它。虽然在某些环境中可能会有所帮助,但有抱负的程序员应该优先学习其他语言而不是VB。
扩展计算机编程技能的其他语言包括Swift、Rust和Ruby。Swift是macOS、iOS、watchOS和相关服务的编程语言,它允许程序员在设计安全、强大的代码的同时创建和共享二进制框架。
在编程语言方面,有很多选择。此外,还有大量应用于不同应用的产品。计算机程序的主要功能是用一组给定的指令(或代码)解决问题。但是,如果他们都可以解决问题,为什么需要这么多?一个程序不能完成所有工作吗?为了回答这些问题,让我们看看执行计算机程序需要什么。
计算程序的硬件
几乎所有性质的计算(除了少数例外)都是在中央处理单元(CPU)中完成的。我们今天拥有的现代CPU包含许多微电子元件。CPU可以进一步分为更小的计算单元,称为逻辑晶体管门,通常称为逻辑门。这些逻辑门的主要功能是实现三个主要运算符:AND、OR和NOT门。
上述逻辑运算符适用于称为二进制的数字系统,它适用于只有0和1的数字系统。0表示没有电流通过晶体管,1表示有电流通过晶体管。
最离奇的现象是,如果只将上面的逻辑运算符与二进制结合起来,就可以表达我们所知道的所有逻辑,包括算术运算、整数以及几乎所有你能想象到的东西。现代CPU中预装了一种称为微码的东西。微码包含一组用于执行更复杂执行的基本指令,称为机器码。
执行代码的软件级别
现在我们知道了计算机代码执行背后的硬件(还有很多,但为了简单起见,我将坚持主要计算发生的部分),让我们继续讨论需要多少级别的软件软件的执行。需要的第一个程序是汇编程序,它有助于将汇编语言转换为机器代码。汇编级语言是一种低级语言,它充当高级编程语言(例如,Python、C++、Java)和机器代码之间的对应程序。任何软件架构的布局如下:
下一个重要的程序是编译器。编译器采用高级抽象语言并将其转换为汇编语言,有时也转换为机器代码。最后一个将所有东西结合在一起的最终程序(或包)是操作系统。操作系统基本上是一个程序,它在您的计算机启动时启动并运行直到计算机关闭。操作系统还负责管理复杂的任务,例如文件管理、输入和输出管理。这个功能使得每次你想执行一个程序时,你不必一次又一次地重新实现它。它还使用户的交互以更直观的方式发挥作用,而不是总是试图以0和1的形式与计算机进行通信。
一种尺寸不适合所有人
现在我们了解所有不同的编程语言都经历相同的执行形式。一个程序应该适合所有原因,对吗?错误的。这将是一个理想的世界,我们只需要一个程序来处理所有事情。所有编程语言都服务于相同的目的,无论是C++、Java、Python等,但出于不同的原因,它们都是必要的。
产生对不同编程语言的需求的原因是每种语言都有不同的功能。创建编程语言时,其设计目的是为其添加尽可能多的功能,但没有一种编程语言可以在阳光下做所有事情。