2006年3月20日

我爱Python!

长久以来,我一直在寻找这样一种编程语言,它
1. 能跨平台,
2. 能够完成一些常见的文本操作,
3. 能够作界面,
4. 能够应对一些很好的应用需求,比如网络编程等,
5. 能够有很多的扩展包,实现一些跨越性的功能
6. 能够很好的和别的语言进行相互的连接和嵌入。

这种需求在我进入实验室的第二年越发的强烈,因为遇到的问题和有兴趣解决的问题都有这样一种需求。

最早学习(追溯到初中时代)的Basic语言(F-Basic, G-Basic, Q-Basic, Visual Basic 6.0)可以很好的解决我的需求中的除第一项以外的全部需求。本科阶段,我用VB完成了很多的作业程序,对于VB有了较为深入的了解。进入实验室后用VB完成过很多的诸如文件处理,词典演示界面等小任务。但是后来随着学习C++的深入,对于跨平台的需求越来越明确。之后也就放弃了VB的继续学习和使用。C++是一门非常强大的语言,几乎可以看成是现在编程的主流。它能完成我需要的除做界面外的全部需求。之后的很多程序就都改在C++下进行了。

去年在微软研究院的半年实习里,开始的四个月,我最先进行的是较为痛苦的C#学习,因为它只能满足我当初学习过的VB的那些需求。痛苦是因为必须学习,没有选择。还好在VB和C++的功底下,很快的我掌握了C#,完成了一些诸如数据库编程,界面开发,网站开发,XML编程等任务。事实证明,那四个月的编程对我掌握C#以及一些艰较为新颖的编程和软件工程方法起到了很好的促进作用。但是接下来的两个月,由于换了Mentor,编程语言全部改用C++。经历过C#的训练后,我在编写C++代码的时候采用了一些软件工程设计方法。比如先设计好类图,然后自动导入成代码。两个月的程序开发基本还算顺利。

去年12月回到实验室,到半个月前为止的四个多月里,我很少写程序。2月末3月初的时候,我被告知需要完成一个较为复杂的项目。其中需要涉及到网站开发,许多网络技术的使用,XML相关技术的应用。这个任务我分析之后决定采用很少学习,但是一直感觉很好的Python来实现。短短的一个月里,我学习很多的相关知识。现在基本完成了那个项目的第一个Milestone。

现在我对Python越来越喜爱了。因为Python的哲学是Pythonic。就是任何问题都能用Python来实现。Python完全符合我在开头定义的6种需求。

纵观我接触过的编程语言,VB, VBA, Matlab, R, C\C++, Perl, Python, Prolog, 我现在感觉自己找到了心中一直在寻找的语言。那就是Python!现在的任务看来就是要好好的深入的学习Python的一切,真取深入的理解和实现Pythonic。

2 条评论:

Bill Lang 说...

Comment's author: Zn
03/24/2006 06:17:03 PM
英雄所见略同啊!

Bill Lang 说...

Comment's author: Robert
04/04/2006 11:47:09 AM
呵呵,推荐一本好书,《Text Processing in Python》,非常好的关于Python文本处理这个主题的书,我最近也在看,很有收获:)