java怎么提高业务开发能力(程序员如何提升领导力)
java怎么提高业务开发能力(程序员如何提升领导力)大概在很久以前啊,微软搞出了一个可视化编辑器,Visual Basic,简称VB,支持组件化开发,使用起来非常方便,只需要通过简单的拖拽就可以把一个Button组件拖拽到表单上,然后设置这个Button的属性,再增加onclick事件,很简单就完成了开发。这极大的提高了程序员的生产力,也对java阵营形成了挑战。bean是java程序员们最常用的组件了,今天就介绍下bean是怎么来的。本ID会从技术和管理两个方面来讲述一些成为CTO应具备的能力,技术能力包括技术发展、基础源码实现、算法、常用技术框架等,管理能力则从沟通能力、研发进度管理、绩效管理、文化管理等方面进行学习和介绍。下面进行第一期的学习:2、技术部分——Java bean的前世今生
1、前言
大家好,ToCTO旨在帮助程序员们持续提升自身的技术水平和管理能力,最终成为一名合格的CTO。
CTO全称Chief Technology Officer,中文是“首席技术官”。在信息化时代,小到创业团队,大到网络巨头,CTO们对公司的发展可谓至关重要,他们不仅决定了公司的技术路线,对CEO提出的商业模型是否可以快速交付、稳定运行都起到了至关重要的作用,一定程度上可以决定一个项目、乃至一个公司的成败。
成为一名优秀的CTO,带领工程师们在商业竞争中攻坚克难、攻城拔寨,是很多有理想有抱负程序员的崇高追求。
本ID会从技术和管理两个方面来讲述一些成为CTO应具备的能力,技术能力包括技术发展、基础源码实现、算法、常用技术框架等,管理能力则从沟通能力、研发进度管理、绩效管理、文化管理等方面进行学习和介绍。
下面进行第一期的学习:
2、技术部分——Java bean的前世今生
bean是java程序员们最常用的组件了,今天就介绍下bean是怎么来的。
大概在很久以前啊,微软搞出了一个可视化编辑器,Visual Basic,简称VB,支持组件化开发,使用起来非常方便,只需要通过简单的拖拽就可以把一个Button组件拖拽到表单上,然后设置这个Button的属性,再增加onclick事件,很简单就完成了开发。这极大的提高了程序员的生产力,也对java阵营形成了挑战。
为了应对这一挑战,java采取了行动。java提倡开源,并没有发布一个类似VB的Visua JAVA,而是发布了一个长达114页的《Java Bean API 规范》。这个规范针只是对如何实现一个可视化开发工具提出了些规范性的要求,比如:
有个用户在用一个Visual Java Builder这样的可视化开发工具,当他用这个工具创建应用的时候,可以选择一个叫JTextBox的组件, 加到一个表单上, 此时Visual Java Builder 就需要把这JTextBox的类通过反射给new 出来, 所以就需要一个无参数的构造函数了。
如果用户想去设置一下这个JTextBox的属性,Visual Java Builder 就需要先用自省/反射来获取这个JTextBox有哪些属性(通过getter/setter),拿到以后就可以给用户显示一个属性清单了,例如背景色,字体等等。用户看到后就可以设置背景色和字体了, 此时Visual Java Builder在内部就需要调用这个Bean的setBackgroundCorlor()/setFont() 等方法, 这就是所谓的setXXXX()方法。
如果用户想对这个JTextBox编程,Visual Java Builder还是通过自省/反射来获取这个JButton有哪些事件, 给用户展示一个事件清单,例如click keyboardPressed 用户可以选取一个, 然后就可以写程序对这个事件编程了。因为用户设计完了以后,可能关掉Visual Java Builder 啊 如果不通过序列化把设计好的JButton保存起来, 下次再打开Visual Java Builder 可就什么都没有了。
这就构成了JavaBean的一些规范要求:
1、这个类必须具有一个公共的(public)无参构造函数;
2、所有属性私有化(private);
3、私有化的属性必须通过public类型的方法(getter和setter)暴露给其他程序,并且方法的命名也必须遵循一定的命名规范。
4、这个类应是可序列化的。(比如可以实现Serializable 接口,用于实现bean的持久性)
这个规范发布后,很多大厂来捧场,Delphi的Borland公司搞出了一个JBuilder,风靡一时。IBM 搞了一个Visual Age for Java 后来摇身一变, 成了大名鼎鼎的Eclipse开放平台。
然而,桌面开发市场早已被裹挟着windows操作系统的微软浸染很久,使用java bean进行桌面开发的程序员少之又少,只有在一些特定的领域,比如金融、ERP等还在使用。
后来JavaBean又是怎么发展的呢?也可谓一波三折,咱们下期介绍。
3、管理部分——什么是领导力
CTO的O就是Officer,是一个技术团队的管理者,应具备一定的领导力,那么什么才是领导力呢?美国前国务卿基辛格说:“领导就是要让他的人们,从他们在的地方,带领他们去还没有去过的地方。”
领导力既是一种技能,也是一种行为。有些人相信领导能力是天生的,而不是后天培养的。其实我们每个人都是领导者,几乎我们每个人在某个时间,某个地方,都在以某种方式领导着另一个人或一个群体。我们每个人都需要努力成为一个好的领导者,这就是为什么领导力发展如此重要。有了良好的领导技能,我们可以提高自己,帮助别人,并加强我们与朋友和家人的关系以及与社会的联系。
很多人认为领导力是学不会的,他们认为领导力是一种天赋,其实不然。赵本山和宋丹丹那个有名的小品,把大象关冰箱分三步,打开冰箱门、把大象赶进冰箱,关上冰箱门,听起来很搞笑,那是因为我们的思维里首先认定了把大象关冰箱是不可能的,就像认为通过学习习得领导力也是不可能的一样。事实上,只要改变思维,如果有一个集装箱那么大的冰箱放到你面前,再给你一个温顺的大象,这个笑话似乎就成了可以很容易实现的事情了,如果“把大象赶进冰箱”这步骤比较困难,那就把这步再分成三步。同样只要懂得领导力应具备哪些能力,以及如何实践,那么每个人的领导力都是可以提升的。
可能还会有人说,我现在也不是CTO,即使我学会了领导力的方法,我也没地方实践啊,学了也白学。首先,你应该明白,在生活、工作中我们时时刻刻都有发挥领导力的地方,比如带着家人一起去旅行、组织朋友开个party、在项目研发过程中积极协调各部门保证项目顺利上线,这些都是发挥一个人领导力的地方。传说白起在成为将军之前是对蚂蚁进行排兵布阵的训练才成为一代战神的,而我们还有那么多机会面对真人。其次,究竟是先成为领导才会具备领导力,还是有了领导力才会被提拔为领导呢?相信大多数人被提拔起来的领导一定是在工作中表现出了出色的领导能力,被团队认可才被提拔为团队领导的。
所以,领导力是什么虽然并没有确切的标准化定义,但是如何提升自己的领导力却是有迹可循的,只要大家认识到这点,通过不断学习一些提升领导力的方法,并在日常生活中不断的练习,就可以提升你的领导力!
欢迎大家关注ToCTO,每周为您带来最硬核的技术和最有效的管理方法!