先简单说下背景: 个人 Android 开发,经验 3 年+,能力不是太好,但也不是太差,一路过来基本上都是在公司独立开发的这种。 目前在公司也是一个人负责安卓项目,直属 leader 属于后台开发,但是会写点安卓代码,最近我这边任务可能不算太多,leader 可能发现我架构设计能力太差,让我把手上的活先停下来,尝试学一下架构设计相关的。首先这里提一下,我感觉自己写代码应该是没什么问题的,因为我本身自己也有一些代码洁癖,包括命名规范、代码排版、代码结构、以及会考虑代码写得够不够优雅之类的。leader 的观点是,写考虑架构设计,首先把框架搭建起来,后面写代码就是很容易的事情。
再回到刚才这个问题上,我再开始之前就拒绝过其实自己不会画架构图设计之类的东西,但我是写代码过程中也会考虑代码的一些架构设计问题,但是 leader 还是说我现在给你时间,让你去尝试一下,然后我不好拒绝,只好把手上工作全部放下,然后弄这个东西。然后先让我画一个算比较复杂的模块的结构图,画完发给他;接着让我画这个模块里面某个小模块结构图,画完接着画流程图,现在就差不多每天画一个图,或者好几天就画一个图发给 leader,leader 偶尔指出哪里有问题,接着让我继续完善,但是我感觉自己硬着这么画实在不会、也想不出来,感觉比写代码难太多了,还不如让我写代码了。跟 leader 说自己不会,leader 还是让我尝试,但是我自己实在想不出来、也画不出来。
但是这里首先申明一点,便不是我目前项目里写得代码太糟糕了,因为前面我自己说过自己有一些代码洁癖,有时会看一些历史代码太糟糕了会画时间直接另起炉灶重写它们。然后 leader 是能力很强的,会直接看一些全英文的东西不借助翻译的,然后感觉比较忙,目前基本上他大部分时间都不在公司。
目前的问题是自己实在不会画这些图、也想不出来怎么画,接下来该怎么办呢?
向 leader 反映情况,但是我已经反馈过,他还是让我去弄这些东西,目前暂时是把其他工作都放下了,就让我弄这个。可能与 leader 沟通较少?我感觉也确实太少,但是我把图发给 leader,leader 只会简单说几句哪里哪里有问题,然后接下里我自己去想怎么改,我这边是 99.99%的时间感觉自己在瞎捉摸。
首先先说明 leader 人是很好的,技术肯定是过硬的,然后以上的表述纯粹是完全站在我自己个人角度,有些描述也可能与实际有出入,但是我在这里会尽可能准确描述,我想如果站在 leader 角度可能会有另外一种考虑吧。
如果大家碰到这种情况会怎么办,或者大家有没有类似的经历,都可以说一下:)
感觉实在太难了😭。
1
misaka19000 2019-09-26 11:33:20 +08:00
架构本身就是早于编程的,架构都不设计好那怎么能保证构建出良好的系统
|
2
zdt3476 2019-09-26 11:38:20 +08:00 1
这么好提升自己的机会,而且还是有人带的情况下,你竟然还抗拒。 建议咬牙坚持,光会写代码是远远不够的。
|
3
laucenmi 2019-09-26 11:44:32 +08:00
说不定是 leader 需要一个图, 但是也不想自己弄~ 美其名曰锻炼锻炼你 /匿了
|
4
wshwwl 2019-09-26 11:47:14 +08:00 via iPhone 1
不懂你们搞 lt 的,根据你的描述我是这么理解的。领导觉得你架构能力太差,想锻炼你一下,甚至不惜让你停下工作。而你多次反馈做不到太难了,领导多次尝试后觉得烂泥扶不上墙,最终放弃,一切依旧,让你当一个纯粹的工人。
|
5
AellenLei OP @misaka19000 感谢回答。首先我完全同意你的观点,但是我目前处境是功能我已经都实现了,代码、我自以为自己的架构(参考了别人的,然后有改进)应该也是不太糟糕,但是让我自己去画这些结构图、流程图等,然后细分下去,我感觉自己实在描述不出来、想不出来、画不出来了😭😭😭
|
6
AellenLei OP @zdt3476 我倒是真的非常希望有人带啊😹。我前面描述了我 99.99%时间都是自己在捉摸,和 leader 沟通太少,然后和他沟通不知道是不是我的问题,就是几句话完了,感觉没有起到什么作用。
|
7
coderluan 2019-09-26 12:00:14 +08:00 2
问题很简单啊,学习方法不对呗,架构也得系统的学习啊,自己瞎琢磨能琢磨出个鬼,看书看源码,看看别人都是怎么设计的,大部分其实还是有套路的。
|
8
momooy 2019-09-26 12:14:09 +08:00 via Android
和我现在的处境很像,完全不懂架构设计,代码都还写的不利索。不知道怎么办,老是挨骂
|
9
zyqhi 2019-09-26 12:22:14 +08:00 via iPhone
你 leader 人不错,程序员并不是只写代码的,把自己的设计画出来,让别人能够理解,也是很好的审视自己的机会。感觉吃力是因为自己在这方面,技能有欠缺,多锻炼吧。可以用 Google image 搜一下架构图,看别人怎么画的,多模仿学习。
|
10
fzls 2019-09-26 12:24:18 +08:00 via Android
这么好的锻炼机会还不好吗?领导有意培养你这方面的能力,给你时间。你就找相关的资料和文献系统性学习啊,多好的机会,为啥要抱怨呢
|
11
jaynos 2019-09-26 12:27:41 +08:00
有这么好的机会都不把握住嘛, 不用干活还有大佬带, 楼主那还缺人嘛?
|
12
NYGK 2019-09-26 12:41:48 +08:00 via Android
画图也是培养你对一个系统理解能力,程序员干到 35 岁往上有几个还能像 20 多岁那么能肝的,大龄程序员的价值除了编程经验之外还有对系统的宏观认识,能够指挥别人去做对的事。人往高处走嘛,事情也是从小开始越做越大,你也不能一直停留到写代码层面上。
|
13
oneisall8955 2019-09-26 12:49:32 +08:00 via Android
想起实习的时候,leader 也是叫我画图什么的,他确实跟你描述的一样,很强,看全英不带翻译那种。他经常提醒我先不要打代码,把流程,系统架构给画出来再实现。那时候虽然工资很低,自己加班做这些,但是很快乐,很开心!新入职的公司,三下五除二,先下手实现为强,完全没有想画流程图的同事(会画的也没几个),最终我也差不多沦落成快刀斩乱麻,先做再说的 curd boy 了。
|
14
Meltdown 2019-09-26 12:53:02 +08:00 via Android
哪里找这么好的领导
|
15
dxgfalcongbit 2019-09-26 13:22:24 +08:00
我的领导也是高标准严要求,虽然被他挑毛病时会有点不爽,但客观的说与这种人共事可以锻炼自己的能力。
|
16
aapon 2019-09-26 13:31:22 +08:00
leader 给机会给时间让你学习,给你锻炼机会,使劲的带你,希望你能学好后独挡一面,你竟然不好好学,还实在不会,搞 it 的谁一定都会了,还不是现学的啊?这么好的机会,这么好的领导,请问这个 leader 还差人吗??
|
17
kx5d62Jn1J9MjoXP 2019-09-26 13:46:04 +08:00
同安卓开发, 不喜欢搞什么架构
安卓 app 的世界里, 阿里那帮人最喜欢搞架构, 结果还不是卡卡卡, 与之相反的另一个极端, telegram 的源代码, 一个文件超过一万五千行代码, 但是却流畅得无以复加 |
18
7654 2019-09-26 13:48:51 +08:00
码农的一条进阶之路就是架构师
|
19
Otho 2019-09-26 14:00:30 +08:00
leader 人不错,给你机会学习,让你有机会成长。不懂就多问,千不该万不该,不该那么消极啊,不知道怎么弄就找 leader 问,别凉了人的心啊。
|
20
AellenLei OP @coderluan @zyqhi @NYGK @Otho @dxgfalcongbit @fzls @7654
谢谢各位的回复,我就不一一艾特了。 我自己也知道这目前也是我所缺少的,同时也是作为程序员如果想不断提升这块也是需要加强的,包括还有设计模式、数据结构、算法、语言更深层次、英文等等一些基本功,还有技术之外的一些其他东西如沟通、团队协作等等。 但是我主要感觉的是:这些东西不是花一天、两天、一个星期、两个星期、一个月、两个月就可以很快学会,能够看到明显的进度、很大的提升。这些都是需要在以后的日子里,不断学习,不断摸索,逐渐积累的。例如多多看一些优秀开源项目,学习他们的代码写法,学习他们的架构,然后在自己项目中模仿、练习,不断积累相关的经验,会不会最后这些东西是水到渠成的就会了呢,当然这里面就很大程度依赖于个人的自觉、坚持和努力了。 各位说的很多都是真知灼见,很谢谢各位。主要是我认为目前把大段时间花在这上面效果不大,如果这大段时间花在学一起其他的新东西,可能性价比更高吧。也许是我本能拒绝吧,才会这么找借口,谁知道呢😂😂😂。 |
21
avaJ 2019-09-26 23:59:01 +08:00
这么好的机会。
|