您的位置:主页 > 新闻动态 > 媒体关注 > 内容

初入社会的程序员应该具有哪些专业素质?-北大青鸟告诉你

时间:2015-11-11 15:51 无锡怡信北大青鸟
初入社会的程序员应该具有哪些专业素质?-北大青鸟告诉你

1.结构化思维
        所谓程序员的逻辑思维,其中最重要的,笔者(北大青鸟)认为是结构化思维,也就是理解结构的思维。比如每一个类映射为一个实体,类之间的结构与关系是要弄清楚的;OOD是对现实的模拟,现实中的业务如何映射为类以及类的交互的,也应该清晰。而已有的设计原则与设计模式,则是动态地理解结构,比如从java已有的类交互原则到静态工厂、动态工厂,再到更高层的依赖注入、控制反转,一条主线就是理解类、对象之间是如何动态交互的。因此,善于理解事物的抽象结构,对于初入实际项目的开发者而言,是很重要、很基础的一种能力。

 

2.系统化思考
        对于刚工作的程序员而言,特别是看那些视频自学的人而言,很可能对于技术的理解完全是流于表面的,拿java来说,往往只是知道语言的规范而不知变通,对于很多表面看似“矛盾”的应用会很困惑。
这个时候,就需要有系统化思考的能力,了解java中简单的内存分配以及基础的编译机制,将其处理过程映射到java代码的实际工作流程中,建立对应的系统,加深理解。
类似于一个简单的“人肉编译器”。

 

3.理解复杂性的能力
        如果说结构化、系统化是顺式建构,那么理解复杂性则是融会贯通之,对软件、业务复杂度的横向的切面式的理解。比如在语言层面理解语言在进步过程中思想交汇的趋势(面向对象与函数式范式的融合);在代码层面理解软件原有复杂度以及各种范式破坏复杂度之间的平衡;理解简单算法的某个内核精神如何融合在实际处理中而不是该算法;理解特殊业务需要的“不漂亮”的实现方法。其实际应用之复杂,往往与书上说好的理论相悖,让人困惑,这个时候,要理解这种实际设计过程中的复杂性以及其利弊。

 

4.沟通技巧
        在实际项目中,践行基础层,融入实际开发团队,对初入社会的程序员也是相当重要的。所谓融入团队,其实主要就是和人打交道,如何和别人愉快地合作,开心地debug,也是一门学问。一般的公司的程序员,除了思维语言某些时候略屌丝之外(别的行业也差不多),人都是不坏的,可能说话比较直,但人并没有太多歪歪肠子,和他们沟通,无论是前辈还是同侪,并不需要费多少心机,保持基本的礼仪和笑容就行。关键的是在沟通的时候如何准确、准确、准确(重三遍)地描述你的问题和你的答案,节省大家的时间。

  
    
        然而对于那些自学软件工程的人而言,进入职场中,有机会接触到真正的项目之后,如何快速理解原有的架构设计业务逻辑?如何处理一般流程(比如实现某个功能,写配置,action,jsp)?要知道,很多项目都没有设计图给你看的,最多只有表结构,你不从基础的设计模式、一般原则去理解业务,往往抓不住其神,融入也很慢。这个时候如果选择一些靠谱的培训机构,静下心来学习数个月,会比自己在网络上东找西撞的自学效率高很多,无锡北大青鸟推出的学士后软件工程师培训课程(http://www.wxbenet.com.cn/zt/soft/?baidusem)正是为那些刚毕业或职场新鲜人所量身打造的,采用独有的校企合作模式,理论教育是实际项目结合,学到真正有用的技术,是就业提升的不二选择。