V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  msg7086  ›  全部回复第 731 页 / 共 1018 页
回复总数  20358
1 ... 727  728  729  730  731  732  733  734  735  736 ... 1018  
充电不都是用手机充电器充的吗?
Kindle 就是因为大家都有手机充电器了所以才不配充电器的。
2015-11-24 10:42:51 +08:00
回复了 i1173081 创建的主题 VPS 都有哪些不计流入流量的 VPS 呢
2015-11-24 06:51:44 +08:00
回复了 wuruxu 创建的主题 华硕 ASUS Zenbook UX305LA 这款笔记本,有同学在用吗?
@hei1000 我就想问问,触摸屏的「贵+重+厚+短续航」到底有多严重?去掉的话能差多少?
为什么会提到信和不信?明显是收入与支出不成比例。

如果是 摸摸楼主的头就给 20 ,你看看结果会如何,说不定你就秃着顶回去了。
2015-11-24 00:07:28 +08:00
回复了 billgreen1 创建的主题 Python 参数检验应该在函数内部还是外部?
#8 @billgreen1 重复代码多,要么是因为你代码结构不行,要么是因为你用的语言表达力不行。
2015-11-24 00:05:27 +08:00
回复了 klementina 创建的主题 Apple 苹果这艘巨轮,哪天真的可能沉没......
人类的死亡率,是百分之一百。
TDD 是开发流程。现在还有一种做法是 BDD ,我个人比较偏向 BDD 。
2015-11-23 23:46:52 +08:00
回复了 70599 创建的主题 NGINX nginx 怎样把 www.example.com 重定向到 example.com 上?
server_name www.example.com;
rewrite ^ http://example.com;
2015-11-23 21:55:08 +08:00
回复了 ovear 创建的主题 Linux 服务器 du 统计文件夹大小怪异的问题
du -sh ./indices/.*
2015-11-23 13:27:30 +08:00
回复了 datocp 创建的主题 VPS 无敌了,大家有没有重启过 z.com 的 vps
真的不贴个你的 network/interface 的配置来看看吗?
2015-11-23 09:44:32 +08:00
回复了 sdd11 创建的主题 硬件 同样是 29 寸 21: 9 的显示器,为什么价钱差这么多?
http://www.amazon.com/gp/product/B00E26IRA8 Acer B296CL 买的时候$310 。
半年前还不像现在这样有那么多选择,随便挑了个便宜的买的。
Nokia 表示双击屏幕就可以点亮。
先不说概览本身就支持看时间和提示消息什么的。
2015-11-23 09:36:58 +08:00
回复了 dbfox 创建的主题 程序员 分享下我写不需要太严谨的项目的代码风格
LINQ 就是关系代数的一种实现。

PS: 我知道 LINQ to SQL 很难用。归根结底是因为 C#是一个比较静态的语言,不像 Ruby 那样可以玩各种奇技淫巧。
2015-11-23 08:57:15 +08:00
回复了 dbfox 创建的主题 程序员 分享下我写不需要太严谨的项目的代码风格
用 Ruby 给你写了一个简单的例子,基于 Rails 的。

https://gist.github.com/msg7086/60e806bcccc00a49ecf4

我不敢说我的代码是可维护性好的代码,但是至少比你的代码要可维护得多。

比如说 Ruby 这边建议每个方法不应该超过 10 行,否则可维护性就会大大降低。我这边主函数将近 40 行,很明显的维护性就差很多。很多逻辑还可以抽离出来,使得结构更清晰。至于你这 180 行的函数我就不多说了,离讨论维护性这件事都差得很远。

读你的代码,首先第一个问题就是不知道这个函数到底接受哪些参数。(也就是你说的,连 IDE 都猜不透你函数到底接受什么东西。)这就意味着,一,新人要用你代码的时候,完全不知道该怎么用;二,你自己参数如果写错一个字母,你根本发现不了。等出了错你就慢慢 debug 吧。

其次是单函数结构。上面也说了,每个方法不应该超过 10 行。我们退一步讲,每个函数不应该超过 50 行好了。很多逻辑结构都可以抽出来做成单独的方法。看你这个 get_list ,应该是 Controller 方法吧,但是里面的很多逻辑是 Model 逻辑,应该放进 Model 类里。这样把函数拆开以后,还有一个好处就是做测试更方便了。
我不知道你的代码有多少自动化测试,不过我这边做开发,除非是做了就扔的项目,否则全都有做自动化测试覆盖。测试的代码量至少应该要达到项目代码量的一半甚至更多(通常是和项目代码量相同的级别)。这样项目在发布出去以后, bug 要少得多,哪怕用多一倍的时间去写测试,最后也会比不写测试要节约更多更多的时间。

最后就是拼接字符串,上面也说了不应该用字符串而应该用关系代数。用关系代数的话,可能会用到 ORM ,不过不用 ORM 应该也是可以做的,不知道 C#有没有可用的类库。但是用 C#不用 LINQ ,简直就是浪费了 C#在做 Web 上的最大优势之一了。(函数式, lambda ,延迟求值,匿名类,哪个不是超级好用的东西?)

你看我用了关系代数以后,根本不需要写一堆 AND ,不需要分 anywhere 和 orderby ,不需要考虑 WHERE 和 ORDER 的执行顺序,甚至连分页都不用我考虑了——因为有自动的分页插件,会自己往关系代数里注入合适的 LIMIT 子句。代码量轻松就掉了一半,开发速度更快了,而且出错的几率也下降了。

如上面很多人所说,程序员必然要经过很多个阶段,去反思自己的问题,才能向前走。你现在到达了封装参数发请求的阶段,自然觉得现在的方法是很不错。然而等你将来有机会接触了更好的方法,或者发现现有方法的各种坑了以后,才会知道更好的方法到底好在哪里。

把心态放平一些,然后多学习多看看吧。
2015-11-23 06:19:01 +08:00
回复了 Exin 创建的主题 问与答 Windows 合并不连续的磁盘分区?
如果只是恢复分区要移走的话, diskgenius 就可以做,并不难的。
搬走以后就随便扩大缩小啦。
2015-11-23 01:29:50 +08:00
回复了 Exin 创建的主题 问与答 Windows 合并不连续的磁盘分区?
这 5 个分区里,你想合并哪 2 个?
2015-11-23 00:07:16 +08:00
回复了 dbfox 创建的主题 程序员 分享下我写不需要太严谨的项目的代码风格
@dbfox 用关系代数啊。我相信这么多年了.net 应该有很多基于关系代数的库了吧。
2015-11-22 16:27:49 +08:00
回复了 543400 创建的主题 SSD 一起来挑 SSD
@powergx 这并不解决问题啊。损坏率不能用售后服务来弥补。
要是今天 Intel 的 SSD 一个月坏一次,但是也有神盾计划,你会觉得 Intel 很好么。
没事要你拆机箱把设备打包叫快递收快递……
1 ... 727  728  729  730  731  732  733  734  735  736 ... 1018  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2638 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 116ms · UTC 15:19 · PVG 23:19 · LAX 08:19 · JFK 11:19
Developed with CodeLauncher
♥ Do have faith in what you're doing.