从事计算机程序开发行业12年,算是涉猎较广的全栈开发者,注重语言的快速产品化开发与部署,较少关注语言的深度和计算机性能。已经接触过大量的编程语言,在这里记录一下,方便以后查看。一路走来,从最初的目标解决工作中遇到的问题,提升工作效率,到现在提出一些产品化的想法,并迅速实现,回想起来变化还是挺惊人的。
在公司工作一年后,感觉编程开发真是一个非常有意思的事情,通过一些简单的代码,可以完成之前需要大量人工的事情,逐渐喜欢上这个行业。但是原有公司内的 Quantum Foxpro 语言局限性很大,只能应用于特定领域,于是开始学习当时最热门应用最广泛的语言 Java,并一直使用至今。
目前已经使用十多年,可以说是最熟悉的一门语言,除基础的JRE运行环境,还扩展到Android开发手机端,JSP开发网页端,是自己发展向全栈的基础。即时在现在,依然是多平台通用场景下的首选开发语言。
在Android开发的过程中,当需要用到服务器交互的时候,发现无法与数据库实现支持连接,需要通过HTML接口的形式。开始尝试了一段时间JSP,发现JSP部署效率太低,不适合高频调整的小应用,于是开始学习网页开发中应用最广泛的 PHP。
对于简单的接口开发来说,由于PHP使用脚本式开发,且不需要编译部署环节,编写和部署简直不要太方便。慢慢的,随着学习的深入,开始走向完整的网站开发。
在使用JSP/PHP进行网页端开发的时候,发现页面与服务器的交互真是一件非常低效的事情,而要提高效率,必需使用 JavaScript ,于是开始学习。第一步就是直接将 Java 版本的自定义问卷逻辑算法用 JS 重写了一遍,居然还真挺高效的,没有明显的延迟,之后开始习惯性用前后端相结合开发网页。
出于技术的全面性考虑,在2014年苹果发布Swift语言之后,开始学习,用于开发iOS端,作为全平台开发的补充。写了几个小的iPhone程序,但是觉得iOS的界面设计难度较大,所以在初步完成公司的基础系统iOS端开发之后,没再继续开发更多的产品,皆优先提供Android版。
随着数据量的逐渐扩大,分析结果及时性要求越来越高,原有的数据分析方法逐渐开始不适应起来,于是开始学习 Python 进行数据处理,相对Java,开发代码上确实简洁很多。
首先,学习了基本的 numpy,pandas,matplotlib 用于数据分析,可以处理很多SQL/Quantum/Excel不能处理的问题。接着顺手学习django,flask框架,丰富网页开发能力,将数据统计分析形成网页平台。随着机器学习/深度学习技术在人工智能领域的应用和发展,了解了sklearn框架,拿tenserflow来训练图像识别,用于照片中的商品智能检测。
目前长期在用,作为自己日常开发中小型平台的优选语言,只是代码组织风格还没有适应,无法用于大型平台开发。