V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  mouhong  ›  全部回复第 6 页 / 共 6 页
回复总数  110
1  2  3  4  5  6  
2015-06-17 13:08:23 +08:00
回复了 luo123qiu 创建的主题 职场话题 建议慎重选择是否加入创业公司!
@jedrek @cxshun

没错。对于这种老板,还有很多东西不会算,比如是否给员工配备了好的电脑,有些老板可能会觉得电脑能用就好,他们不会明白如果我编译项目比别人慢10秒,这10秒我会感觉无聊然后去刷微博。类似的还有网络等。

这些老板只顾着公司的硬件设备节省下来了,却没注意到在人力成本上的浪费,假设因为硬件设备导致一个程序员每小时浪费10分钟,一天就浪费80分钟,一个月浪费3天,然后再拿程序员每天的工资来算一下每个月在人力成本上的浪费。(这还不考虑这些东西对程序员效率的影响)
2015-06-17 09:20:44 +08:00
回复了 won 创建的主题 职场话题 对于很多大企业整天说缺人才,我想说
@onlyice 码农默默的飘过T_T
2015-06-16 23:02:03 +08:00
回复了 luo123qiu 创建的主题 职场话题 建议慎重选择是否加入创业公司!
没去过创业公司,似乎加班在大部分创始人看来是理所当然的?

一个人一天工作11小时甚至更多,我不信他明天还能高效工作,如果他确实精力无限,我也不信他能坚持这种状态多天。加班不代表高效,加班时花2小时才搞得定的问题,在身心舒适的情况下可能1小时就搞得定。我觉得如果一天能保持高效率工作6小时(注意,是高效率),那就完全足够了。

有些公司也许就是不管开发人员死活,就是要马上上线一个产品,如果是偶尔特殊情况也就罢了,要是常年如此,我只能认为这家公司不尊重程序员的价值。
2015-06-16 20:11:59 +08:00
回复了 hzs75 创建的主题 酷工作 [福建]我们招募没其他要求,只要是技术宅
@caixiexin 看了你的回复我才发现我回复的有歧义...我其实是想问是不是外包类型的项目T_T,不是指是否外包给我
2015-06-16 18:37:12 +08:00
回复了 Wuvist 创建的主题 酷工作 [上海]跨境电商求安卓/.net/web~10~25K+
一看到 .Net 和 c#,强迫症就开始发作了...
2015-06-16 15:46:04 +08:00
回复了 hzs75 创建的主题 酷工作 [福建]我们招募没其他要求,只要是技术宅
什么类型的项目啊?外包么?
2015-06-15 16:02:17 +08:00
回复了 modkzs 创建的主题 程序员 如何提高源代码阅读技巧
@modkzs

“但是实现的话封装层数太多,总有一种不知道怎么下手的感觉”
> 封装在实际的工程里还是难免的或必要的。一开始可能会比较困难,读多了应该就适应了。说起来还是工具很重要,我做 .NET ,经常也是要用 ILSpy 这样的反编译工具来帮忙,因为它可以比较直观地给你显示类继承结构,调用关系等。

> hbase 要看情况啦,每个人的背景不一样,如果你平常研究很多数据库方面的东西,就上吧,要是能吃下大的,以后吃小的就完全不费力了。要不然就可以考虑找些小一点的先来 (比较容易找成就感)。
2015-06-15 12:25:58 +08:00
回复了 redhatping 创建的主题 程序员 大家懂二叉树吗?
开发框架/类库型的产品时,知道一下应该是会有帮助的,至少当你在使用基础库提供的现成实现时,对它们的时空复杂度会有一定的概念,要不然面对链表和平衡树(都是实现好的)时,就不知道怎么选择咯~~

不过现在要是让我写出一个红黑树出来,我是真的不会写,但要是有 Google,查查应该也是可以写得出来。不过不要误解,我不引以为荣,我还是觉得算法很重要,倒不是说要把某些特定的算法背下来(我想这永远背不完,不同领域有不同的算法),我觉得更多的是通过学习来培养算法设计能力,所以我也准备找个时间再好好学习一下的 (太惭愧也有点后悔,大学睡了一年,翘了两年)
实例化一个子类只会创建一个对象。就好比生孩子的时候,孩子继承了父母的基因,要是实例化一个子类时,父类也会被实例化,那岂不相当于每生一个孩子,父母也会多一对出来,生第二个孩子时,这些孩子的父母变成三对了?

继承之类的东西都是语言为方便码农的生活而引入的一种抽象,即使是类型,在底层都是不存在的,从底层的角度看,一个对象不过是一块储存了固定字节的内存区域。
2015-06-14 23:42:46 +08:00
回复了 modkzs 创建的主题 程序员 如何提高源代码阅读技巧
我在v2ex的首个回复就破在这吧。我个人经验是这样:

1. 首先要有个好用的工具,比如我用 Visual Studio,可以方便地在方法定义间快速切换等,这对代码阅读有极大帮助;

2. 然后花几分钟时间对项目结构做个粗略浏览,随手点开几个文件混个脸熟,通常质量比较高的代码可读性比较好,这时光靠猜就能猜出不少文件/目录的用途。有时在阅读某个细节并被卡住时,会突然灵光一闪,好像哪里有个什么文件看起来和这有点关系,而这灵光一闪经常是来源于这个粗略浏览阶段;

3. 看一下程序的入口做了什么事,同样也是留下个印象,因为入口处往往会注册很多东西,尤其在一些使用了依赖注入容器的项目,对依赖注入理解的比较好的开发者都会把依赖在容器中的注册放到程序入口处 (有人称它为 Composition Root 模式);

4. 以上都是为了对整个项目有个“大局观”,当细致研究某个模块的实现时,貌似也只能从 API 入手了,但要避免过度深入细节,通常一个方法内又会调用很多其它的方法,支线上的方法调用不要深入,尽量只看主线,这样才能保持比较清醒的大脑。部分情况可以深入一些支线,这要自己灵活把握。

如手上有纸笔,可以画些简单的树状图记录一下调用路径。以前我看代码是纯靠脑袋干记调用图,所以一旦这张图很大了后,大脑就会很紧张,只要上个厕所回来就会忘记一大半,或者办公室里谁突然开始讨论问题时也会打断我的思路 (所以我不喜欢在办公室上班),后来有纸笔的帮助后会好很多。

5. 背后的理论基础很重要。如果对一个框架背后的理论很熟悉,那阅读起来就会比较顺利,比如某 MVC 框架,如果不知道 MVC 为何物,那会看得很折磨人的。涉及某些算法时就更惨了,有些算法背后对应着一个数学公式,而程序语言往往很难清楚地表示一个公式,这时就要先去把相对应的理论搞清楚了再回来看代码 (所以你要会出墙,会Google,顺便推荐一下 12vpn: https://my.anuson.com/aff.php?aff=864&redirect=https://getsetupfile.com/)。

这时注释的重要性也体现出来了,对于复杂的逻辑,最好在注释中写清楚这么实现的原因 (当然,我也反对那种无意义的注释),幸运的是,知名开源项目代码的注释往往写得很好,通过阅读注释就能学到很多东西。

6. 让调试器来帮忙。如果有办法在 IDE 中对源代码进行调试,那阅读效率会提高很多,因为很多细节肉眼时很难看出来的。

7. 动力也很重要。我得承认我有点懒T_T,所以你要拿一堆代码给我,我看着看着可能就睡着了,但要是给我一堆代码,让我找出某个bug出现的原因,有了目标后效率就要高得多。

以上是一些比较零散的总结,欢迎补充 :)
1  2  3  4  5  6  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   907 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 21ms · UTC 21:06 · PVG 05:06 · LAX 14:06 · JFK 17:06
Developed with CodeLauncher
♥ Do have faith in what you're doing.