芽筑说吧 关注:94贴子:1,861

回复:程序员必须掌握的技能

只看楼主收藏回复

可能会有用的一种技术手段是番茄工作法。
下面是它的工作原理:
1.设置 25 分钟的定时器
2.专注于一个任务 25 分钟
3.25 分钟结束后,休息 5 分钟
4.任何浮现出来和任务无关的想法,你可以先写下来以便于以后来关注。
5.你重复循环四次(或更多)


16楼2018-08-20 13:53
回复
    这种技术之所以伟大是因为它使你一次专注于一件事情。它可以帮助你产出更有意义的工作,而不是每隔几分钟查看 Twitter 或 Facebook。


    17楼2018-08-20 13:53
    回复
      技能#4:了解大局
      那些主要产品围绕代码的开发人员需要执行一种小心以及平衡的行为。一方面,从发布到产品来帮助企业成长。另一方面,你要保证不会给你将来的同事留下难以维护的代码。而且以及当然,用户也得享受于软件。
      但是,首先,此刻你能做的就是编写代码。当你开始作为一个开发人员提高自己的时候,你将——回过头去重构原先的代码。让你的软件更适应将来在上面工作的开发人员。


      18楼2018-08-20 13:54
      回复
        有一个伟大的概念是 DRY(don’t repeat yourself)原则。其基本思想是写一个只需要改变一次的代码片段,如果你决定将来更改它的话。这种方法既是程序员的福音,也有利于企业。
        然而,所谓的大局并不仅仅涉及到代码。大多数的大公司遵循 Peter Drucker 的原则。如果你学过 MBA,那么你一定听说过 Peter 和他的管理原则。如果没有,那么建议阅读他写的书。


        19楼2018-08-20 13:54
        回复
          Peter 对西方公司产生了深远的影响。他提出的最重要的概念之一是成本中心和利润中心。在销售和市场营销工作的人被认为是企业的利润中心。他们增加收入。必须控制企业成本以最大限度地提高收入。作为开发人员,你既可以是利润中心也可以是成本中心。
          管理你的职业生涯的最佳方式是了解你适合企业内部的哪个位置。这会附加你的价值,并让你的职业生涯走得更远。


          20楼2018-08-20 13:54
          回复
            技能#5:社交技巧
            许多人认为,像 Google 这样的公司创造了一种从自上而下的文化。不过,你和你的同伴也在建立文化。而培育这种团队范围的文化的最佳方式是通过你自己的社交技巧。
            回想一下你的现实生活,而不是工作生活。你的朋友圈中有没有这样一个人是每个人都期待看到的?他们的存在可以带来欢笑和深刻的讨论。他们不传播流言和谣言。在有人需要帮助时他们会及时伸手。总而言之,他们被描述为是一个够意思的哥们或菇凉。


            21楼2018-08-20 13:54
            回复
              这样的人也存在于工作场所。而你的目标应该是尝试成为那样的人。
              成为一个每个人都期待看到的人。建立用一种建设性的心态说出意见的勇气。这与你认为自己是一个内向或外向的人无关。
              慢慢的,你的事业、你的技术技能将和这个领域中的其他人相同。但是如果你想在职场中获得成功,那么你需要成为团队成员。你必须能够和他人交流,能激励他人,并值得信赖。因为在一天结束时,如果你不能与别人进行联系,那么你将永远无法让别人接受你的想法,无论多大或多小。最终你只能接受其他人的想法,而不是给出你的想法。


              22楼2018-08-20 13:54
              回复
                技能#6:发现并处理问题
                程序员的作用是解决问题。但要解决问题,首先必须去发现问题究竟是什么。
                世界上最容易的事情是记住一堆命令或复制和粘贴在 Stackoverflow 上的代码。真正的能力是知道发生了什么事的大局观。如果你正在解决工作中的一个大问题,那么最好是把它分解成微小的可编辑的片段。
                先查看问题本身。想想代码试图解决的问题。
                1.它使人更容易购买吗?


                23楼2018-08-20 13:55
                回复
                  2.它做报告吗?
                  3.创建这个软件的目的是什么?
                  然后,看一下当前的解决方案(如果存在的话)。最后,考虑当前的解决方案是如何解决这个问题。(如果它能解决的话)。


                  24楼2018-08-20 13:55
                  回复
                    一旦你高度概括了这个应用程序,那么你就可以进入应用程序的功能部分。利用问题、解决方案和细节技术来进一步分解问题。这些框架步骤帮助我理解了不同的开源项目,例如 Disourse。


                    25楼2018-08-20 13:55
                    回复
                      不懂编程语言,怎么能成为一个真正的程序员?
                      许多新手程序员会试图一次性或在第一份工作之前学习几种编程语言,以便于有备无患。
                      虽然我认为你最终应该学会一种以上编程语言,但我不建议提前这样做,因为这只会导致混乱,并且会分散你需要学习的其他技能的精力


                      26楼2018-08-31 16:27
                      回复
                        相反,我建议你应该深入研究,重点学习单一编程语言的来龙去脉,这样你才能对用这种编码语言来写代码信心十足。
                        那么在你决定想要成为什么样的开发人员的时候,怎么样才能尽可能地独树一帜呢


                        27楼2018-08-31 16:27
                        回复
                          在学习了一门编程语言之后——或者最好是在学习的同时——我坚信,你需要知道的下一件事就是如何正确地构造你的代码。要写出好的,清晰的,易于理解的代码,不需要大量注释,因为代码本身就是一种表达方式。


                          28楼2018-08-31 16:28
                          回复
                            很多软件开发者在他们整个职业生涯都不曾去学习这个技能,这是不幸的,因为这是我——以及其他许多人——判断一个软件开发人员技术和能力的主要方式。良好的代码结构展示了对这种技艺的热衷,而不仅仅是为了完成工作


                            29楼2018-08-31 16:28
                            回复
                              构建代码是软件开发真正的艺术部分,但它也是至关重要的,因为你和你的同事得花费相当多的时间来维护现有的代码,而不是编写新的代码。


                              30楼2018-08-31 16:28
                              回复