我差不多接触写程序有8年之久了,到现在为止,我熟练掌握的语言有:C++, Java, Objective-C。基本掌握的语言有Python, Ruby, Javascript。学习过但是没有掌握的语言有:Erlang,用过但是忘了的语言有:Delphi。坦白说,我没有系统学习过C,而且没有用过纯C写过东西。
我最喜欢的语言有两个,C++和Ruby。之所以喜欢C++,主要是因为两点:
[1] C++是我见过最强大的语言
[2] C++是我第一门学习的语言(HTML不算一门程序语言)
我喜欢Ruby是因为:
[1] Ruby是我见过的最纯粹的面向对象的语言,语法简介。
[2] 用Ruby写代码很快乐
当然,我也很钟意Java, Objective-C和Javascript。喜欢Java,是因为Java的库实在是太丰富了,要什么有什么。而且一般不存在不能用得情况。C++也很多库,可是很多库需要移植才能使用,尤其是使用Solaris上的CC编译器。Objective-C,其实我觉得是一门很好的平衡了功能和复杂性的语言。需要的功能它都有,不需要的功能它都没有。其实Objective-C比C++更适合工业界。如果这门语言当年红了,我估计就没有Java什么事情了。Javascript是一门很灵活的语言,当然,我们完全可以按照面向对象的方法使用这门"非"面向对象的语言。而且Javascript是分布最广的语言。有浏览器,这门语言就有用武之地。我喜欢MooTool这个库,因为它可以让我用面向对象的方法写Javascript。
我不喜欢Python,但是在产业界,它比Ruby红。至少在我门公司,Python是可以用来写测试框架的,Ruby好像还不行。我不喜欢Python,是因为它的语法不够纯粹。我很讨厌len(list)而不是list.len。有人可能会说,这没关系。可是这会影响我的心情。我也很讨厌它的缩进方式,这个真的不如{}或者end(Ruby使用的,没有begin)。当然,在今后一段相当长的时间里我还是要使用Python,因为我工作中要使用它。我也了解它的性能好于Ruby,它的系统接口库强于Ruby。可是,我真的不太喜欢Python的语法。Erlang太不一样了,其实Javascript也是函数式的语言。可是Erlang的语法还怪异啊,而且我觉得Erlang的算法和设计模式都不太成熟(这里的不成熟是说和我们既有学习的不太一样,其实Erlang已经写过工业级的应用和库,应该是很成熟的)。但是我喜欢这门语言。一是因为它是我们公司的科学家发明的;二是我深刻的认知它的观点:多线程共享内存就是自己没事找事。这也是我在未来一年内要掌握一门语言。
很多人都说,编程语言只是一种表达手段,真正重要的还是设计,架构,算法这些实际的东西。这个观点大方向上我同意,但我觉得语言本身,也是很重要的。换句话说,一个优秀的C++程序员,不一定是个出色的Java程序员;反之也是亦然。但是所有的程序都有它使用的场合,这个需要经验和教训。如果现代,大规模的软件,应该考虑大部分使用Java。在对性能有苛刻要求的地方使用C/C++。测试框架可以使用Python/Ruby。如果在Java虚拟机上使用脚本语言,可以考虑Javascript。在苹果这一块,还是用Objective-C最好。无论如何,不管喜不喜欢,掌握多一些语言还是有好处的。
分享到:
相关推荐
在IT领域,编程语言是构建软件、应用和服务的基础工具。编程语言集合涵盖了广泛的技术和工具,每种语言都有其特定的用途和优势。本资源包包含的两个文件,"JDBC API数据库编程实作教材ss.pdf" 和 "Testsadasd.rar",...
ST语言,全称为Structured Text,是IEC 61131-3标准下的编程语言之一,常用于工业控制领域的PLC(可编程逻辑控制器)编程。ST语言以其丰富的表达能力和接近高级编程语言的语法特性,深受工程师们的青睐。本手册全面...
这种纯文本方式提供了更大的灵活性和表达能力,使得程序员能够用更接近于传统高级编程语言(如C或Pascal)的方式编写代码,这对于有软件背景的工程师来说更加熟悉和方便。 在ST语言中,你可以使用结构化的控制流...
西门子PLC的几种编程语言 西门子PLC的编程语言是PLC技术的核心组件之一,它们之间的异同是PLC开发者需要掌握的基本知识。西门子PLC提供了多种编程语言,满足不同的应用需求和开发人员的编程习惯。 1. 顺序功能图...
在实验过程中,你需要熟练掌握编程语言的特性,理解底层工作机制,同时熟悉性能分析工具,如 profiling 和 benchmarking,以量化优化效果。此外,理解和利用编译器优化标志,如 gcc 或 clang 的-O选项,以及了解如何...
标题与描述中的“fanuc梯形图编程语言说明书”指向的是FANUC PMC(Programmable Machine Controller)的编程指南,特别关注了梯形图这一编程语言。FANUC是全球领先的数控系统制造商,其PMC系统广泛应用于各种工业...
这些模式通常在多种编程语言中都能找到应用,因为它们是跨语言的抽象概念。"编程语言实现模式"这个主题涵盖了如何在不同的编程环境中利用这些模式来优化代码结构和提高代码质量。 首先,我们要理解什么是设计模式。...
在IT行业中,编程语言是构建软件、应用和系统的基石。每种编程语言都有其特定的用途和适用场景,因此掌握多种编程语言对于成为一名全面的开发者至关重要。本资源提供了多种编程语言的学习路线思维导图,包括JAVA、C...
ST 语言编程手册是软件开发中的一本重要手册,旨在帮助开发者熟悉 ST 语言的基本原理、语法和应用。下面是该手册中所涵盖的重要知识点: 1. ST 语言基本原理 ST 语言是一种高级语言,具有强大的编程能力和灵活性。...
在讨论西门子安全控制器的编程语言时,首先需要明确的是安全控制器(F-CPU)与常规控制器的区别。安全控制器的主要职责是在工业环境中负责安全功能,它们被设计来减少因设备故障而导致的安全风险。编程这些安全控制器...
梯形图是最常见的PLC编程语言之一,其设计灵感来源于传统的继电器电路,因此具有直观易懂的特点,特别适合那些熟悉继电器控制的电气工程师使用。 **组成元素**: - **触点**:代表逻辑输入条件。 - **线圈**:代表...
本文将深入探讨西门子STEP 7软件中使用的编程语言类型、特点以及编程时的一些实用技巧。 ### 西门子STEP 7编程语言 #### 梯形图(Ladder Diagram, LD) 梯形图是最常见的编程语言之一,它的设计灵感来源于继电器...
Perl编程语言,被誉为“大骆驼”,是一种强大的脚本语言,尤其在文本处理、系统管理、网络编程等领域有着广泛的应用。Perl由Larry Wall于1987年创建,设计目标是提供一种灵活、强大且易读的编程工具,能够应对各种...
CG(C for Graphics)是一种专门用于GPU编程的高级编程语言,由NVIDIA公司推出。CG语言的设计目的是为了简化GPU编程的复杂度,使开发者能够更加专注于算法本身而不是底层细节。CG语言具有以下几个特点: 1. **易学...
《七种编程语言》是一本面向计算机科学专业的书籍,作者以独特的方式引导读者在七个星期内掌握七种不同的编程语言。这本书旨在帮助读者快速理解和掌握编程语言的核心概念,从而能够运用这些知识去创建自己的简单编程...