选择学习“下一个”程序语言

flashstars 2009-08-26 10:30:14
今天这篇文章筛选出一些主流编程语言,对语言特性与环境稍作介绍,希望可以帮助到一些编程初学者与有兴趣学习编程的朋友,供大家了解与选择,少走弯路。Java、C++、C#、Python、PHP……当然,这些仅是作者推荐的。还将介绍其他主流语言与适于初学者学习的编程语言与一些编程学习指导。
Java,面向对象、安全、跨平台、强大稳健、流行的程序设计语言与环境。由 Sun 公司开发,目前由 Java Community Process 控制。近些年来非常流行且稳定,未来生命周期较长。语言风格较为接近 C++ 与 C# ,而最为人熟知的便是跨平台性。Java 的跨平台性已得到了广泛的认可,在计算机的各种平台、操作系统,以及手机、移动设备、智能卡、消费家电…均已迈入成熟的生产化。而国内的 Java 人才需求前景目前也是大好。

Java 的官方网站是 http://java.sun.com/。Java 分为 JavaSE(标准版,面向初学者与桌面开发)、JavaEE(企业版,也称 J2EE,面向企业级开发、网络开发,包括了为人熟知的 JSP,并包含了 JavaSE 的所有内容)、JavaME(微型版,为手机、PDF、机顶盒、消费家电等嵌入设备开发),目前还有正在发展的 JavaFX(一种富Internet 应用程序开发的脚本语言)。Java 的运行环境是 JRE,开发环境是 JDK,均可以在其官方站点下载。开发平台的构建较为简单,开发者下载并安装 JDK 即可,目前 JDK 最新版本是 1.6.15。

最重要的——它们都是免费、开源的。而 Java 不需要指定集成开发环境(IDE)——JDK 和记事本足以完成。不过在此我推荐使用 Notepad++ 或 UltraEdit 作为代码文本编辑器;Eclipse 与 NetBeans 这两款免费而又强大成熟的 Java 集成开发环境(IDE)。

最近也在进一步学习中开始写 Java 的编程书籍,在此透露一下,它是一本内容全面、语言生动、较快入门、注重实例、分享经验、提供编程思维与设计模式的 Java 编程书。这方面我需要一段时间的努力后,才能与您见面。不过最重要的,这本书将是免费的。在保证专业性与内容质量的同时,这本书将提供免费的阅读与下载。

C++,应用最广泛、成熟、强大、复杂、流行的程序设计语言。你目前正在使用的 Windows 或 Linux 操作系统的大部分内容均出自 C++ 的程序员之手,C++ 非常强大——近乎无所不能,而 C++ 代码经过编译后将成为计算机的二进制代码的可执行程序,所以在兼容性、性能上均为优秀。当今如果你学习 C++,再配合 WIN32SDK、MFC 或是 .NET CLR,绝对是开发桌面程序的首选语言。从名字可以看出,C++ 改进自 C 语言,特别是面向对象方面的扩展,但学习 C++ 可以直接学习,不需要且不建议先学习 C 语言基础,可以把 C++ 当作一门全新的编程语言。

如在 Windows 平台下,C++ 首选的集成开发环境(IDE)自然是 Visual C++,它包含在 Microsoft Visual Studio 之中,最新版本是 2008。你可以选择微软官方提供的 Visual Studio 2008 专业版——这是最好的选择!微软提供90天的试用版,安装镜像较为庞大,与正式版没有区别,同时包含了 MSDN Library(最权威的开发文档),唯独只是授权序号的区别。下载安装后即可使用。当然,你也可以进行简单的操作将其变为正式版。不过在此不是鼓励大家使用盗版软件,如在非商用的情况下,这种手段是可行的,也会加快你的学习进度与质量。此外微软也提供了 Visual Studio 2008 速成版,又称为学生版,它是免费的,如仅是学习完全足够。

除了微软的 IDE,你还有其他的选择。在 Windows 下搭建 Eclipse + CDT + MinGW,Linux 和 Unix 下可以使用 Eclipse + GCC++,这些都是开源、免费的。或是更基本的……你主需要一个记事本与 C++ 编译器,当然我不推荐这样做。

C#,读作 “C Sharp”。微软的 C# 就好似是 C++、Java、Delphi 与 Visual Basic 的结合体,是新兴、易学、强大的程序设计语言,它更像 Java——完全面向对象,开发与运行都在 .NET Framework 环境中。使用微软强大的 Visual Studio 集成开发环境,这是快速开发 Windows 平台桌面应用程序的最好选择。听起来有点像 VB?不过 C# 比 VB 可强大多了。不过 C# 编译后的程序如 Java 一样是中间语言,运行程序的计算机需要安装 .NET Framework 运行环境,不算大也不算小。但在微软的 .NET 推出多年后的今天,它还没有较好的普及开,可能对你的程序传播会有一定影响。同时 C# 也可以开发 ASP.NET 的动态网页程序,这是曾经风火多年的 ASP 的替代产品。

开发 C# 程序,使用微软的 Visual Studio 是最好的,也是几乎唯一的选择。同 Visual C++ 的环境搭建基本雷同,在此不再复述。目前 .NET 环境已经发展到 3.5,C# 已经发展到 C# 4.0,学习 C# 请选择一本实时性、专业性、全面性的好教程。微软的 Visual Studio 2010 近期也将发布,届时将搭载更为强大的 C# 语言与集成开发环境(IDE)。

Python,新兴的面向对象脚本语言。说其“新”其实并不是如此,Python 已经具有十多年的历史,且已有非常多的开发者与使用者,最著名的就属 NASA(美国国家航空航天局)。其语言特点是语法清晰简洁,便于学习使用。而 Python 作为脚本语言,跨平台性非常好,几乎在所有操作系统中可以使用,在 Linux 操作系统中便大多原生支持 Pyhton。实质上这款语言非常优秀,近年来用户量飞速增长,可以进行桌面程序开发、动态网页开发、数据运算等。

不需要担心商业授权、付费这些额外的问题,Python 本身就是免费软件、自由软件。在 Python 官方网站 http://python.org/ 你可以下载适用于您操作系统的 Python 开发与运行环境。需要注意的是目前 Python 流行版本有 Python 2.6 与 Python 3.1,2 与 3 的区别较大,虽没改变本质,Python 3 但并不向下兼容。当然这里我们建议你学习 Python 3,它很快就会被流行。

Ruby,较 Python 来说更新兴的面向对象脚本语言,由日本人开发。实质上它与 Python 是同类,具有共同的一些特性、脚本语言、面向对象、免费开源、简洁强大、跨平台性,所以在此就不多作介绍。Python 与 Ruby 都是目前的新兴流行脚本语言,不过它们作为两款出生与成长不同的孩子,终究不同,选择哪一个还得取决于你的应用需要。在 Ruby 的官方中文站点获取更多信息,下载与安装 Ruby 开发与运行环境。

PHP,几乎你现在看到的像是门户网站、博客、论坛…它们除去华丽的外表外,网页内部的程序与数据处理都离不开动态网页技术,而 PHP 正是目前最流行、强大、稳健的动态网页开发脚本语言。它的语言风格类似 C、Perl,可以集成在 HTML 网页代码只中,也遵循面向对象,并且易于学习。其实 PHP 还可以开发桌面应用程序,不过因为它的优秀,已主要作为了动态网页开发语言。如果你要学习开发 Web 应用程序,或是今年流行的 Web2.0 站点,PHP 绝对是你的首个选择。因为国内有相当多数量的 PHP 开源程序与学习资源,学习 PHP 的道路一路都会平坦。

因为是动态网页开发,所以开发 PHP 的 Web 程序需要搭建环境——需要同时安装一个 HTTP 服务器与 PHP 解析程序,大多情况下你还要一个数据库服务器例如 MySQL、PostgreSQL。目前最流行的开发环境组合就是 Linux + Apache HTTP Server + MySQL + PHP,简称为 LAMP,Linux 操作系统大多均带有了这些程序。而如果在 Windows 环境下,你可以选择自行搭建各种匹配的环境,甚至让 IIS 作为 PHP 的 Web 服务器。或是想图省事,你可以下载安装一个 XAMMP,PHP 环境搭建一步到位!目前国内外大部分数据服务商(IDC)都提供了完美支持 PHP 的虚拟主机,你不用担心程序开发后的运行环境问题。开发与学习推荐的 IDE 有 Zend Studio、Eclipse 甚至是 Dreamweaver。

Perl,最具成熟、灵活性的脚本语言。学习较为容易,但却非常强大。Python 语言的许多特性便是有借鉴自 Perl。Perl 拥有一个大型的第三方代码库——CPAN,极大的方便于程序人员的开发和使用。在官方网站下载 Perl 环境,所有的 Linux 系统都几乎集成了 Perl。脚本语言的开发都推荐在 Notepad++ 等高级文本编辑器中完成。

Pascal,曾经风靡全球的高级程序设计语言,特点是语言简明、结构严谨、较高灵活性,名气不下于 C++。前几年流行的 Delphi(一种 Windows 应用程序快速集成开发环境)使用的便是 Pascal 语言,国际信息学奥林匹克、中国信息技术奥林匹克竞赛的编程项目主要语言。如今 Pascal 语言在实际应用领域已逐渐被人舍弃,但依然是非常适合初学者的编程语言。你可以下载使用 Free Pascal 这个目前最好的 Pascal 编译环境,也可以使用 Deiphi。

Basic,或称为 Basic 系列语言,主要有 QuickBasic、QBasic、VBScript、Visual Basic、Visual Basic .NET,甚至有适于儿童学习的 Small Basic。如今 PC 计算机中流行中的 Basic 语言,正是鼎鼎大名的比尔·盖茨先生编写,但最初的 Basic 语言来自上世纪60年代两位美国计算机科学家。

上世纪末期与本世纪初期,Visual Basic 作为一款简单易学的 Windows 应用程序开发环境,曾在中国被大量学习使用,现在你在书店还可以看到许多 Visual Basic 考试书籍与题目的身影,不过这些已经是早已淘汰的 VB6 了,我国的计算机等级考试大纲一直都存在严重问题(这是我的想法)。当时被流行的 VB6 让很多人快速的迈入了程序员的步子,但 VB6 因为并不强大,并不能有效开发大型程序。VB 的成功并不在于改进后的 Basic 语言本身,而应是优秀的集成开发环境(IDE)与开发 Windows 程序的便捷特性性。

微软公司在2002年推出了 Visual Basic .NET,正式推出 .NET 环境并让 VB 作为首批成员。如今的 Visual Basic 已经非常强大,但已完全的依赖于 .NET Framework 环境,可以开发 ASP.NET 程序。而且所有优秀特定均已被 C# 吸收,它们如今的差别并不大。更倾向推荐有意学习 VB 的朋友去学习 C#。

汇编语言,又称组合语言,它是一种低级计算机语言,直接与计算机硬件底层交互。在上世纪 C、Pascal 等高级编程语言出现之前被广泛使用,如今只用于一些底层应用——如硬件驱动程序的开发。汇编语言的难度非常高,使得早期的软件开发工作只有一些“天才级”或“怪才级”的人才能胜任。如今汇编语言基本上不用于软件的开发,但对于程序开发人员来说,学习汇编语言可以让你深层了解计算机与计算机程序的原理。如今汇编语言还被国内部分大学作为必修教程,而汇编语言也会有利于程序的反编译等工作。

好,至此目前主流的程序开发语言均已作介绍。下面是 Q&A 时间。

问:说了这么多,到底哪门编程语言适合我?我该学哪一个?

答:程序语言并不适合于人,而适用于所要开发的领域或软件的需求。你不能光从名称看出某一门编程语言的含义,也不能跟风——别人学什么我就学什么。而在于你的兴趣,或是你要涉及的领域、开发的程序。如果你要开发桌面程序,那就可以学习 C++、C#、VB、Java……如果你要开发动态网页,就可以学习 C#、VB、Java……如果你要开发手机程序,就可以选择 C++、Java 或 C#。我提供这么多内容,最重要的便是让你了解每一种编程语言的主要特性,而供你选择。或者你说……“我实在不知道我要选择哪个,我只是想学,这些特性或领域我都不了解也不在乎。”。如果你确定是如此,而如果你真的想涉及程序开发,建议你继续稍作了解。或学习目前流行的“完全面向对象”的编程语言 Java、C# 或 Python,这三个编程语言都很优秀,这是我的推荐。而在深入学习后,你会发现了解这三门语言的其中一个,再想学其它编程语言也可以做到“触类旁通”,很快可以入手,因为这些语言的本质都是一样的,更何况选择一款编程语言就可以开发出大部分这些语言都可以开发的软件,做这些语言都可以做的事情,只是方式上的不同。

问:我想学习编程,据说要求数学头脑或英语能力?或已经是计算机高手?

答:如果你已经是一个成年人,这些都不是问题。实际上程序开发和数学虽息息相关,但在大部分应用中对数学水平的要求并不高,初中毕业就可以,甚至小学也没问题。而对于初学者,这些程序开发语言虽使用英文,但实际学习过程中,需要记忆的英文单词并不多,稍作记忆和理解即可掌握,对开发者的英文没有要求。但是!一旦你涉及到高水平的或是企业级的开发项目,会有更多你所未涉及的知识需要在技术文档中查阅,如 API、SDK 文档,或是 MSDN,这些文档中有一部分内容是英文的。就例如腾讯公司招聘程序员,就会要求开发者的英文水平可以基本读懂这些技术文档。事实上对英文的要求就正如此,而我建议软件开发者在平日的学习中对英文水平进行一个修炼,对以后的开发、学习、了解新技术与资讯、编程思想都会有帮助。计算机水平上没有什么特定要求,会打字就可以学编程。不过你需要对所开发的环境如 Windows 有了解,不然你连新建保存文档,或是操作系统是什么都不明白,你如何顺利学习编程?不过这些并不是大问题,基本上可以迅速的学习到。

问:如何学?如何学好?如何编写程序?

答:计算机程序的开发具有点、线、面的性质,更多的需要灵活性。第一,选择一本好教材、好老师,掌握你所学习的编程语言的概念、基本原理、基本语法,然后逐渐深入,完成语言知识面的学习。第二,熟练编程语言后,你需要学习一种叫做设计模式的理论,与其说有助于开发,不如说是必须进行选择与学习,培养良好的编程思维习惯。第三,我们的程序需要做的事情就是解决问题!利用掌握的知识,多练习,多实践,多解决身边的问题。开拓你的大脑创造力,你离编程大师只有一步之遥。学习编程语言就如学习一般显示语言类似,掌握语言的文字、单词、语法,多进行阅读与训练,然后动用你的大脑控制笔去书写优美的篇章。

问:还有什么要求?

答:学习程序开发,说难就难,说简单就简单。要明确兴趣与方向,要树立并坚定目标。学习过程中需要多努力,多练习,多问,多 Google 一下,多思考,多想如何“解决问题”!如能做到这些,真的足够了。

...全文
93 回复 打赏 收藏 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
代码下载链接: https://pan.quark.cn/s/a4b39357ea24 用户账户控制(UAC)白名单的配置 Windows7环境中 UAC(User Account Control,用户帐户控制)是由微软在Windows Vista版本中推出的一项旨在增强系统安全性的创新技术,该技术强制要求用户在执行可能干扰计算机正常运作的操作或进行更改会波及其他用户设置的变动前,必须提供相应的权限或管理员密码进行验证。通过对这些操作启动前进行授权确认,UAC能够有效阻止恶意软件及间谍软件在未获授权的状态下于计算机内进行安装或实施修改。 自从Vista版本问世以来,微软便开始推行这一全新的安全机制,可视为对系统安全防护的显著提升。尽管UAC确实能够在一定程度上对某些非法程序起到防御作用,但与此同时,这一功能也给众多用户带来了诸多不便。 因此,许多用户开始探寻是否存在类似于白名单的功能,以便将那些值得信赖的程序直接赋予运行权限。事实上,这类功能确实存在,不过微软并未将其作为标准配置提供。 网络上关于此问题的绝大多数建议都是建议禁用UAC,这种说法显然缺乏针对性,因为若用户希望禁用此功能,本就不会提出相关疑问。 通过运用微软官方发布的Microsoft Application Compatibility Toolkit 5.6版本,可以将信任的程序纳入系统白名单范畴。 获取Application Compatibility Toolkit 安装程序成功后会出现三个可执行文件 以管理员身份启动Compatibility Administrator 在Custom DataBases部分创建新的数据库,并添加一个Application Fix(在下方空白处点击右键,选择...
下载代码方式:https://pan.quark.cn/s/a4b39357ea24 DELL服务器的操作系统部署流程包含一系列细致的环节,其适用范围涵盖多种操作系统类型,例如Windows Server与Red Hat Linux等。在启动部署之前,必须确认服务器的光驱设备为DVD驱动器,并且需准备对应的系统安装媒介。下面将详细列出完整的部署步骤: 1. **启动准备**:将随服务器提供的Systems Management Tools and Documentation version 6.0光盘置入服务器光驱,随后设定服务器以光驱作为启动设备。此环节旨在确保服务器在启动阶段能够读取安装光盘内容。 2. **语言设定**:服务器启动后,选定简体中文作为部署语言,并确认接受许可协议条款。 3. **时区选择**:在部署期间,需设定时区为北京、香港、重庆或乌鲁木齐,依据实际地理位置进行适配选择。 4. **系统类型选择**:随后,需选定计划部署的操作系统,支持的版本包括Server 2003 SP2、Server 2003 SP2 64位版本、Windows 2003 SBS SP2、Server 2008、Windows 2008 SBS/EBS x64版本等,以及多种Red Hat和SUSE Linux版本。 5. **RAID设定**:若服务器出厂时已预设RAID配置,则可选择跳过此步骤。若需重新设定RAID,操作时需格外小心,因为这一过程可能引发硬盘数据遗失。 6. **引导分区规划**:设定引导分区的大小,通常C盘建议预留至少20GB的空间,具体容量需根据系统需求进行调整。 7. **网络设定**:网络设定可在系统部署完成后执行,部署期间建议暂时拔除...

2,074

社区成员

发帖
与我相关
我的任务
社区描述
华为认证、思科认证、项目管理、计算机等级考试、Linux认证、微软认证、H3C认证等IT认证相关的技术交流空间。
社区管理员
  • IT培训
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧