V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  yusheng88  ›  全部回复第 2 页 / 共 4 页
回复总数  70
1  2  3  4  
@kuanat
1 、我不推荐你说上下游,这个东西是有歧义的。
2 、我熟悉 Java , 所以我反驳你用错误的方案( code )做示例,这没问题吧。
3 、我遇到的业务场景都是上游提供接口|接口依赖包的,你的上游是什么我就不知道了。

你写的挺多的,但我真不知道你想说什么。
你的案例,我是真看不懂 Java 有什么不能实现的?
我也不明白为什么 go 的话题下,你要引用 Java 干嘛。

你的意思是调用方先定义接口, 服务方根据接口去实现?
这个只是 maven 中 接口包 谁提供的权责问题。

这个话题讨论的是 goland 为什么提倡使用接口。
我个人理解:
接口设计涉及的原则,都是为了方便后续维护(可拓展、阅读性等),这些是设计模式的内容,是等你无意中使用后,体验到了其好处之后才会有深刻体验的,你才会明白什么场景中使用比较合适,写个 hello world 都用这些东西的话,就是脱裤子放屁
所有的设计模式,都是有适用场景的。
在写类库,框架之类的场景中,使用设计模式,会更方便阅读、拓展性更好,更容易维护。
在写简单 curd 业务代码的场景中, 由于这些代码基本不会拓展,复用 [可以在变复杂,需要复用时,再使用设计模式相关写法] ,使用设计模式就没啥用,写接口可能也就是方便做单元测试,切面相关的操作了。

golang 提倡使用 接口 ? 这个是不是真的?保留疑问。
@kuanat
当你不熟悉其它语言( Java )时,就不要硬扯在一起了。
1 、Java 的类型是在变量前面的
2 、Java 对于接口的实现,做兼容升级或变更时,通常是修改 maven 的 pom.xml 中依赖包的版本号就好了。

下游(服务|接口调用方)不用关注接口实现的变动点,一般是上游(服务|接口提供方)通知变更,下游再在 pom.xml 中修改依赖包的版本号即可
220 天前
回复了 gongxuanzhang 创建的主题 程序员 在一个群里被恶心坏了
要 ”资深技术专家“ 承认错误,很难的啦
你在公众面前打他脸啊
220 天前
回复了 LandCruiser 创建的主题 职场话题 被已离职同事遗留的项目气晕
只听你的描述:
1 、 你没了解前辈的需求背景,业务逻辑 [看不懂代码||看不惯代码风格] ,就吐槽代码为“屎山”
2 、 你的前辈使用了 TS 和封装,你觉得繁琐,评价为“屎”

给我的感觉,你的前辈在做工程化的项目,你在“短平快”地糊屎。
你觉得你比你前辈优秀,可以贴代码||方案出来,看看别人是否赞同你
感觉 rust 才是真正的 better c .
支持大佬使用 rust 重构中间件,确实能起到节省内存效果。
227 天前
回复了 chaleaochexist 创建的主题 程序员 关于后端开发分层的疑问
dao 层的作用:
1. 方便后续做多数据源管理,读写分离等拓展操作
2. 后续切换 orm ,修改比较方便
3. 工程化,谁接手都知道查询数据库要通过 dao 对象
228 天前
回复了 chaleaochexist 创建的主题 程序员 关于后端开发分层的疑问
问题有点多。个人理解(不一定正确)
1. 业务逻辑就是需求实现逻辑,参考业务流程图。非业务逻辑,没听过,感觉是非功能需求,如要求响应时间,吞吐量,可靠性等

1.1 manager 层主要是
1. 把多个 service 循环依赖才能实现的方法下沉到 manager 对象中,避免循环依赖
2. 管理可复用资源,如 cacheManager ,transationManager 。。。

1.2 推荐在 service 层加密,dao 层主要做发送 sql 到数据库操作

1.3 支持方法重载就不推荐加 by_xx ,参数多就封装为一个查询对象

1.4 不写 python ,没懂

2. 没有 spring ,JAVA servlet 实现 filter 功能也很简单,继承 Filter ,配置类到 web.xml 就可以了

3. 数据实体?指 entity ?理解是一个数据库表对应的一个类。controller:service 是一对多,service:dao 是一对多。如 userservice 中注入 userdao, accountdao,
我实际开发中的处理:
1. 上传文件后,在业务表中插入一条待验证记录,响应上传成功
2. 定时读取待验证记录,流式读文件,逐行检验,在单元格内用[]记录验证失败原因,输出到新文件。有异常则上传新文件。
3. 修改验证状态

整体就是加个用户上传记录,后台异步检验的思路。
如果是对接服务端的,追求实时性,还可以主动回调/推送检验结果
非法控制计算机信息系统程序罪

这个得了解下,什么时候犯了都不知道= =
230 天前
回复了 looo 创建的主题 Java 开发 Java 项目 Gradle 一定比 Maven 好么?
ant ,maven 都深度使用过。
gradle 简单使用过。

体验最好的是 maven
单体项目就 maven + linux shell 脚本
微服务项目是 maven+docker+jenkins 。
两个推荐解决方案
1. 基于 camunda 做二次开发,表单相关业务前端维护,工作流引擎只负责流程设计和流程流转。自己封装下,提供几个核心 api 就可以了。

2. 如果要在线表单设计功能,推荐购买现成 oa 公司的服务。
表单设计,和流程绑定,表单权限,流程回退,预览审批人,多维度组合审批权限等功能,自己研发时间周期太长了,不切实际。
230 天前
回复了 0xD800 创建的主题 Java 分享一个 Java 中非常糟糕的 API 设计
对一个东西不懂时,最好保持谦虚学习态度。

python 类库底层怎么处理的你不看
PBKDF 定义你不看
jdk 的类库你不研究

ai 翻译的不合你的"以为",你又要喷。
通篇下来就凸显浮躁和无脑,没有现成类库喂饭到嘴就啥也不是。
简单看下,存在两个问题
1. 没有做父子线程事务传递
2. 没有考虑任务数超出线程池上限

推测异常原因:
问题 2 导致一直 await ,直到连接被自动清理线程关闭
320 天前
回复了 barfi1316 创建的主题 程序员 请教如何在时序图标识应答超时交互
时序图,应该用于体现业务执行顺序,感觉代码细节的分支和异常处理,没必要画
@liuhuihao
话不投机半句多
你保持你的接口返回值没有 null 就行了。
不用再回复,没兴趣解答。
不打开朋友圈,从根本解决问题。
微信用户发的,就屏蔽他。
微信的广告,这就没办法了
骑驴找马好点,裸辞压力大
@liuhuihao
1. 我的评论应该很清楚,接口该返回 null 就返回 null
2. null 和"不是一个东西,等你什么时候调用接口后不用对 string 返回值判 null 再讨论这个吧。
3. 集合,容器类推荐返回空集合,因为关注的是容器内的元素,而不是容器,容器应该存在的
1  2  3  4  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5434 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 29ms · UTC 03:00 · PVG 11:00 · LAX 19:00 · JFK 22:00
Developed with CodeLauncher
♥ Do have faith in what you're doing.