greenlaw110 最近的时间轴更新
greenlaw110

greenlaw110

V2EX 第 115909 号会员,加入于 2015-05-08 16:47:39 +08:00
老码农
greenlaw110 最近回复了
2022-10-21 04:21:07 +08:00
回复了 likre 创建的主题 程序员 想问一下大家最爱用的操作系统和最爱用的应用程序是啥
操作系统: Mint + Cinamon - 偏保守者
浏览器: Chromium - 偏小白
应用:微信 - 绝对小白
2022-10-20 17:53:43 +08:00
回复了 longmeier90 创建的主题 程序员 35 岁的程序猿,有没有出路?
50 岁还在搬砖的老码农给个建议,与其焦虑,不如奋斗。一直记得卡马克说的那句,信息年代,障碍是不存在的,把快餐塞进冰箱,搞个电脑,撸起袖子开干就是了
2022-10-20 17:38:56 +08:00
回复了 tool2d 创建的主题 程序员 你们是什么时候感受到编程快乐的?
50 岁的老码农感觉一直都快乐!

- 刚进大学,进入要脱鞋的机房,跟着老师在西门子 7570 的终端上敲指令的时候,快乐!
- 学习 DBase 依样画葫芦写出小程序打印日历出来的时候,快乐!
- 学习 BASIC 仿照老师的代码,自己从头到尾敲出一份在 DOS 上用 ASCII 码画电力工程图的程序的时候,快乐!
- 自己研究 QBasic 贪吃蛇游戏,魔改进入任意关卡的时候,满足又快乐!
- 在三线城市小银行做电脑管理员,帮会计在 DOS 上弄一个 Config + AutoExec.bat 菜单,让她们能快速进入需要的程序,嗯,快乐!
- 后来玩 Java ,Perl ,c ,Python 各种语言,各自带来不一样的感觉,都很快乐!
- VS ,JBuilder ,JDeveloper ,Eclipse ,IDEA ,IDE 们玩起来真快乐!
- VIM 玩熟练的时候很快乐,Emacs 真烦!
- 字体换来换去好快乐!

你问我为啥搞软件就快乐,我想了几十年才明白,这是快反馈啊,跟玩游戏似的,操作能带来即时反馈,不就很爽吗?

能通过写代码这样快乐的工作来赚养家糊口的钱,真好!
2019-12-11 16:26:52 +08:00
回复了 shazh520 创建的主题 Java 大家在做单元测试的时候如何准备数据库环境?
mock 是常见的方式, 不过涉及到数据库操作的情况下,mock 总感觉不靠谱. 啥都 mock 了,函数里面也没有什么逻辑, 测试也失去了应有的作用.

这也是我一直很纠结单元测试的原因之一.

后来自己折腾出了一套 functional 测试工具, 数据准备与清理工作也不成问题了. 有兴趣的同学可以参考一下这里:
https://gitee.com/actframework/act-doc/blob/master/cn/test.md#-82-%E5%87%86%E5%A4%87%E6%B8%85%E7%90%86%E6%B5%8B%E8%AF%95%E6%95%B0%E6%8D%AE
2019-12-06 09:11:52 +08:00
回复了 jaylee4869 创建的主题 Java boss 说了一个骚操作。。。
@Evrins Playframework1 哪里是这样, route 配置在后端, 前端不可能传递后端的实现细节的, 这种不是骚操作, 这种是瞎操作
2019-12-03 02:55:10 +08:00
回复了 imn1 创建的主题 反馈 请不要在每一个回复中都包括外链,这看起来像是在 spamming
@imn1 实在不好意思, 我当时有好几个 V2EX 的 tab, 一不小心就贴错了. 但是又不知道如何删除. 抱歉了...
@wysnylc 嗯嗯, 这个地方的确有点绕. 因为我以前做过 C++ 项目,对引用有另外的了解. 总的来说引用是一种安全地传递指针(即地址)的方式, 但这个地址不是 Java 引用类型对象的地址, 而是当前堆栈上变量的指针. 如果说一种简单地方法来判断是否为引用传递, 只需要看看方法内的引用改变会不会反馈到调用方法(外层堆栈)上就可以了. 也就是我上面那个 swapnum 方法做的事情
@wysnylc 我不清楚你为啥总是说我被 "一切传引用其实本质上是传值" 这句话误导. 实际情况是我在今天之前没有看到过这句话, 而且我也完全不同意这句话的说法. 传值隐含的语义是拷贝, 传引用是没有拷贝发生的, 这句话根本上就是错的.
@wysnylc 我觉得还是从字面上来讲比较好一点.

中文 英文
传值 pass by value
传引用 pass by reference

这里的中文表达并没有清晰地传递英语原意. 更准确地将应该是:

按照值方式传递函数形参 - 有拷贝发生
按照引用方式传递函数形参 - 无拷贝发生

你刚刚引用的 java-pass-by-value-or-pass-by-reference 中有下面一段话

A Java object, in contrast to Primitives, is stored in two stages. The reference variables are stored in stack memory and the object that they're referring to, are stored in a Heap memory.

Whenever an object is passed as an argument, an exact copy of the reference variable is created which points to the same location of the object in heap memory as the original reference variable.


上面第一部分将 Java 存放引用类型的机制说明地很清楚, 引用变量存储的是引用类型数据的内存地址, 也就是说变量本身的值就是引用类型数据的指针. 正因为如此, 传递引用变量的时候对值做了拷贝, 你将引用类型数据的地址通过值传递(拷贝)进了函数形参, 所以你可以操作这个引用类型数据, 但引用本身是没有传递进函数的, 因此我上面的 swapnum 函数不可能交换数据. 这个机制在第二部分说明的很清楚. 你上面说没有交换是因为他们是基本类型, 这个说法完全不正确, 因为在我上面的代码中我使用的是 Integer 而不是 int, 基本类型的包装类型, 即引用对象类型.

另一方面讲, 中文的表达 "传值" 和 "传引用" 也有 "传递值到函数形参" 和 "传递对象引用到函数形参" 的味道, 这个可能是中文传值, 传引用容易引起误解的部分原因吧.
2019-12-02 17:56:44 +08:00
回复了 imn1 创建的主题 反馈 请不要在每一个回复中都包括外链,这看起来像是在 spamming
@wysnylc 我觉得还是从字面上来讲比较好一点.

中文 英文
传值 pass by value
传引用 pass by reference

这里的中文表达并没有清晰地传递英语原意. 更准确地将应该是:

按照值方式传递函数形参 - 有拷贝发生
按照引用方式传递函数形参 - 无拷贝发生

你刚刚引用的 https://www.baeldung.com/java-pass-by-value-or-pass-by-reference 中有下面一段话
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5757 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 12ms · UTC 03:03 · PVG 11:03 · LAX 19:03 · JFK 22:03
Developed with CodeLauncher
♥ Do have faith in what you're doing.