程序员

大神级程序员和普通程序员的区别

会有一股神秘感。 提交于 2019-11-28 12:32:06
  标题说的有点玄乎,在网上看到的一篇文章,提到了一些大牛具备的几种素质(或者说应该养成的习惯),值得反思。   部分原文如下:   为了了解那些大神级程序员和普通程序员的区别,采访了很多世界高端科技公司的软件工程师。发现这些给世界带来巨大影响的的工程师们至少有以下几个共同的思维模式: 勇于去研究自己不懂或不熟悉的代码   一般程序员都不愿意去研究自己不曾接触过的代码,很多人都没有尝试就放弃了。如果你经常去研究你没有接触过的代码,你就会越来越熟悉不同的代码结构和设计模式。现在程序员很容易就接触到优质的开源代码资源,可以很方便的就下载下来做一些改动或者调试,去研究为什么代码可以这么写。   除了代码之外,很多人对于陌生的工作内容也会感到抵触。每次换工作的时候,可能都会遇到新公司的工作内容和以前工作的内容不一样的情况,以至于刚开始的时候,工作效率没有以前那么高。   其实,所有程序员都是在学习的过程中成长的。在一个陌生的领域,没有人可以从一开始就是大神。如果你想在你工作的领域,变得越来越强,无论是写代码,或是与人沟通或者其它的技能,都是需要投入大量时间去学习的。 精通代码调试   很多人在写代码的过程中,经常会有的一个问题就是:为什么写出来的代码不能运行?为什么运行的结果不是我想要看到的?   几乎所有的程序员在写代码娿过程中,都不是一遍就能写好的

细谈程序员编写code-----我的启示录

一世执手 提交于 2019-11-28 12:31:18
我现在感觉自己敲代码很慢,10 个字母里面会出现 2 个字母打错。尤其是一些特殊符号,比如 < >,我使用的是搜狗,搜狗和英文切换是 shift 键,open English word ,但有时候极容易弄错所处状态,很少去观察是中文状态还是英文状态,因为切换的太频繁了,比如经常会把 < 打成《,> 打成 》。中文环境下打字,很快,几乎不会出现按错字母的现象,而英文状态下就经常会出现。 有的人一天写几万行代码,而自己一天一直在那些也就是几百行,有时候需要撤销的时候,发现很多不撤销都是撤销的自己打错字母的操作,感觉效率很低。 我好奇的是那一天写几万行代码的人。。 其实一天能写几百行已经很不错了 对于你说的,我的建议是: 1. 默认不用中文输入法。不仅提高效率,而且你开个中文输入法打代码也容易被装13的人鄙视是不 2. 反复练习。写代码可能需要思考,会耽误一点时间,影响了打字啪啪啪的那种快感。我建议抄代码,纯粹是为了练习盲打键盘,比如开一个窗口显示代码,另一个窗口一字不落打下来,需要注意的是要和原谅保持完全一致,并且不要看键盘。我觉得在空闲时间练个一两周应该就差不多了 3. 我还是好奇那一天写几万行代码的人 一天写几万行代码? 一秒钟能按一组ctrl+c\V么?!即使如此一小时才3600行! 10小时才3w行! 一天几万行代码莫非是写个function(){然后按几万行回车再把}写上?

小公司程序员的编程水平与BAT大厂到底有多大差距?

家住魔仙堡 提交于 2019-11-28 12:30:22
BAT的牛人多,普通人也多,虽然他们不是每个人都能达到令人仰望的技术水平,但毕竟平台高,所以眼光会变得宽阔;代码要求更为严格,所以普通的程序员也会被逼变得更优秀;身边的牛人多,普通的程序员也会受到影响,提升的更快。 正好,小编今天看到一篇文章,是讲去阿里的面试经历,也分享给大家,看看自己离着【进】阿里还有多大的差距。 Activity 说下Activity生命周期 ? Activity A 启动另一个Activity B 会调用哪些方法?如果B是透明主题的又或则是个DialogActivity呢 ? 说下onSaveInstanceState()方法的作用 ? 何时会被调用? 说下 Activity的四种启动模式、应用场景 ? 了解哪些Activity常用的标记位Flags? 说下 Activity跟window,view之间的关系? 横竖屏切换的Activity生命周期变化? 如何启动其他应用的Activity? Activity的启动过程? Fragment 谈一谈Fragment的生命周期 ?与Activity生命周期的不同 ? 谈谈Activity和Fragment的区别? Fragment中add与replace的区别(Fragment重叠) getFragmentManager、getSupportFragmentManager

普通公司程序员的编程水平与BAT大厂有多大差距?

蹲街弑〆低调 提交于 2019-11-28 12:28:28
BAT的牛人多,普通人也多,虽然他们不是每个人都能达到令人仰望的技术水平,但毕竟平台高,所以眼光会变得宽阔;代码要求更为严格,所以普通的程序员也会被逼变得更优秀;身边的牛人多,普通的程序员也会受到影响,提升的更快。 正好,小编今天看到一篇文章,是讲去阿里的面试经历,也分享给大家,看看自己离着【进】阿里还有多大的差距。 Java多线程 线程池的原理,为什么要创建线程池? 线程的生命周期,什么时候会出现僵死进程; 什么实现线程安全,如何实现线程安全; 创建线程池有哪几个核心参数?如何合理配置线程池的大小? synchronized、volatile区别、synchronized锁粒度、模拟死锁场景、原子性与可见性; JVM相关 JVM内存模型,GC机制和原理;GC分哪两种;什么时候会触发Full GC? JVM里的有几种classloader,为什么会有多种? 什么是双亲委派机制?介绍一些运作过程,双亲委派模型的好处;(这个我真的不会...) 什么情况下我们需要破坏双亲委派模型; 常见的JVM调优方法有哪些?可以具体到调整哪个参数,调成什么值? JVM虚拟机内存划分、类加载器、垃圾收集算法、垃圾收集器、class文件结构是如何解析的; Java扩展 红黑树的实现原理和应用场景; NIO是什么?适用于何种场景? Java9比Java8改进了什么; HashMap内部的数据结构是什么

php程序员要懂那些linux知识?

余生长醉 提交于 2019-11-28 12:27:55
文件目录操作:创建、查看、移动、改名、删除、复制 用户、组管理:创建组、用户、删除组、用户 权限管理:查看修改权限 进程管理:查进程、杀进程 打包解压:.gz bz 这样的压缩文件操作 软件安装:yum安装、编译安装 编辑器:vim 网络配置: 实战达标: 安装linux 配置上网、配置lnmp环境、lamp环境 提升要求:shell 定时任务、定时备份 来源: https://www.cnblogs.com/webcyh/p/11407225.html

普通公司的程序员与BAT大厂的差距在哪里?

放肆的年华 提交于 2019-11-28 12:27:54
BAT的牛人多,普通人也多,虽然他们不是每个人都能达到令人仰望的技术水平,但毕竟平台高,所以眼光会变得宽阔;代码要求更为严格,所以普通的程序员也会被逼变得更优秀;身边的牛人多,普通的程序员也会受到影响,提升的更快。 正好,小编今天看到一篇文章,是讲去阿里的面试经历,也分享给大家,看看自己离着BAT大厂还有多大的差距。 Java多线程 线程池的原理,为什么要创建线程池? 线程的生命周期,什么时候会出现僵死进程; 什么实现线程安全,如何实现线程安全; 创建线程池有哪几个核心参数?如何合理配置线程池的大小? synchronized、volatile区别、synchronized锁粒度、模拟死锁场景、原子性与可见性; JVM相关 JVM内存模型,GC机制和原理;GC分哪两种;什么时候会触发Full GC? JVM里的有几种classloader,为什么会有多种? 什么是双亲委派机制?介绍一些运作过程,双亲委派模型的好处;(这个我真的不会...) 什么情况下我们需要破坏双亲委派模型; 常见的JVM调优方法有哪些?可以具体到调整哪个参数,调成什么值? JVM虚拟机内存划分、类加载器、垃圾收集算法、垃圾收集器、class文件结构是如何解析的; Java扩展 红黑树的实现原理和应用场景; NIO是什么?适用于何种场景? Java9比Java8改进了什么; HashMap内部的数据结构是什么

如果你也是一个迷茫的程序员,往下看

好久不见. 提交于 2019-11-28 11:56:58
程序员是一个特殊的群体,我们不知道为什么加入这个行业,也不知道这个行业还能做多久,不同人有着不同的故事,有着不同的迷茫。 在技​​术圈,充满着各种所谓的技术大神,他们在各自的领域有着这样那样的建树。有的大神是真的,然而有一小部分“大神”,是假的,也就是所谓的骗子大神。当然,这个行业新手更多,密密麻麻,黑压压的一片。新手们热情澎湃,追随着他们眼中的大神,期待有一天自己也能像大神们一样技术好,工资高。然而又有多少人真正地追上了大神的脚步呢? 很多小白,看见一个技术差不多的人,张口闭口就是大神大神地叫,你的原则在哪里?这类小白我称之为傻子。我知道,我这样说伤害了很多人,但是我真的觉得这种行为很傻。 你以为你跟着大神学习就能成长为大神吗?我很负责人的告诉你,很大可能不行。因为大神都是独树一帜的,不存在两个相似的大神,因为如果你和别人的建树一模一样,那你的成就会被开创者给掩盖了,你顶多算后来者。 别傻了,想成为大神,首先要有不服输,不服气的精神,否则,成不了大神。 另外,严格意义来说,大神非常少,他们有的在网络上小有名气,有的则在各大公司中默默无闻地耕耘着。剩下的大部分,都是骗子,伪大神,他们没能力教会你们,没能力让你们在职场中获得高升,因为他们自己在公司也就那回事,徒有虚名罢了。 说到这里,我在想,我是否也徒有虚名呢?其实也有点言过其实。 “好,你说的都对,就算我不追随大神

程序员:有鸡汤就有毒鸡汤

三世轮回 提交于 2019-11-28 11:56:57
今天,我们来谈一谈程序员的行为中的那些反模式,涉及程序员的日常工作和学习的各个方面。 这些反行为模式,并不针对某些特定的个人。如果你不幸中招,千万不要懊恼,因为这实在太正常不过了,很多反模式的坑我也是亲身踩过的 - 稍微修改几行代码就调试 对所有程序员来说,这个行为有一点心理上的原因:工程师都喜欢在做完一点修改之后,立即看到它的效果。这是一种诱惑。 除此之外,这种做法一般多见于新手。 新手对于敲下的每一行代码都不太有确信的把握,因此需要依靠高密度的调试来一步步确认。当一个老手在项目中首次使用一个新的技术时,情况也与此类似。 但是,不得不说,这种做法是低效的。 首先,稍微大一点的项目,手动调试一遍都会比较花时间。 更重要的是,不停地中止编码工作来进行调试,很容易打断思路,甚至漏掉一些关键流程。 更好一点的方式是:动手编码之前,提前想好一个完整功能或模块的关键逻辑,然后一口气敲完所有代码,最后一次性调试所有case。如果有自动化测试+Daily Build系统,一定要充分利用。 当然有时候难免会碰到不太确认的技术点,这时如果可能的话,更好的方式是单独搭建一个轻量级的、便于调试和验证的工程,来把模糊的技术点系统地摸索一遍。 通过设置众多断点的方式来学习新项目 对于刚刚入职一家新公司的程序员来说,首先要做的一件事也许就是学习和熟悉新的项目工程了。于是我们经常看到类似如下的一幕:

【漫画】程序员怼产品高清图鉴《三十六计》

▼魔方 西西 提交于 2019-11-28 09:36:45
点击上方“ Python爬虫与数据挖掘 ”,进行关注 回复“ 书籍 ”即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 精诚所加,金石为开。 《 Tonyの日常逗比乐》 第一话:怼产品上篇 蜜汁点评:更改需求被夸大时间周期?那是你的福报!上一个这么做的还躺在医院。 蜜汁 点评:程序员中有句名言叫“Talk is cheap, show me your code”,对于产品的需求同样“ Talk is cheap, show me your value” 蜜汁 点评:程序中出现Bug在所难免,如何优雅的向程序员提出Bug是个社会学问题。 蜜汁 总结:变更需求在所难免,频繁的变更需求,那么受伤也在所难免。 蜜汁 点评:抄袭是实现成功成本最小的方式,特别是在互联网行业,当然已经失败的产品就别抄了。 蜜汁 点评:总有些产品经理提出一些“富有想象力”的需求!这种时候广大程序员同胞们就不要硬撑啦,勇于承认自己弱爆了、脑子瓦特了。 蜜汁 点评:同胞们,来日方长,认怂者得永生。 蜜汁 点评:不只是产品会变需求,开发也能!👍 蜜汁 点评:内容过于真实,引起强烈舒适。 蜜汁 点评:AD钙奶很好喝! 感谢大家的支持,本漫画为原创作品 版权已授权第三方保护 转载需授权并请 保留下方二维码 -- -- --- --- --- -- --- End --- -- --- -- --- --- -