V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  lvlongxiang199  ›  全部回复第 2 页 / 共 3 页
回复总数  43
1  2  3  
189 天前
回复了 wangpugod2003 创建的主题 程序员 讨论一道面试题啊(take home task)
感觉可以并行来跑, 充分利用 CPU 多核. 启动多个线程, 每个线程同时做 topK, 最后 merge 成一个
直接用 adblock/uBlock 之类的东西屏蔽了呗
瞎翻了下, 感觉没提到啥设计哲学. 比如可以说说以下问题. 如何实现是一个有意思的问题, 但在语言设计上选择要实现 X 这种特性而非 Y 特性也是个有意思的问题.
+ 为什么 go 没有 Java 中的异常机制, 出现异常的时候选择返回 err 而非抛出异常 ? 这是不是一个好的设计 ? 异常有啥问题
+ 为啥 go 没有一般意义上的继承 ? 如果没有继承, 如何实现多态 ? embedded struct 算不算继承 ? 一般意义上的继承又有啥问题 ?
+ channel 跟 Java 中 BlockingQueue 又有啥区别 ? 通过共享内存实现的并发跟通过 channel 实现的并发在哪种场景下更好 ?
+ 为啥 channel 会有 close 这个操作, 在哪些场景下会用到这个操作 ?

另外讲闭包的时候, 可以提下如何让函数实现一个接口.
你为啥实际试试呢 ?
@gdfsjunjun 有时会要求双击电源键确认, 起码 appstore 是这么处理的
如果向 master 内写了 x=1, 写成功之后 master 挂了(其它节点, 拿不到最新的 binlog). 这时候从其它节点读 x, 能读到 1 还是之前的值 ?

raft 能提供这种线性一致性的保证
@AoEiuV020JP 我仅仅说你提供的这个封装不适合处理这种情况, 没说 golang 没提供这种处理. io.Reader 就是一个流
@AoEiuV020JP
> 高级一点的现代语言都有封装一些方便的方法,比如直接把 body 完整读取转成字符串并 close
我的意思是, 这种封装挪到第三方库就行了, 没必要放到标准库, 这东西的使用场景很有限. 流式读取的应用场景更广泛, []byte, string 都可以看作是流


ps: **请你好好说话**
我觉得很合理. `resp.Body` 就是个 reader 跟 fileReader 类似, 区别就是这是别人帮你 open 然后把 ownership move 给你, 负责 close 是用户的事, 你觉得 fileReader 必须 close 是不是合理的 ?
虽然对于大部分调用 rest api 的情况, 是把 reader 内的读出来, 之后 close. 但是对于需要流式获取的场景并不合适(比如: 实时视频流, 大文件), 按我的理解, 进入标准库的东西, 得适配普遍的场景, 而非 rest api 这种单一场景
@AoEiuV020JP 如果是个文件呢 ? 直接读到内存里, 没准会 OOM
@SSang 似乎可以这样,
```
middlewareA:|________________________将 user_id 等信息放入 ctx______________________|
middlewareB: |____________________________log__________________________|
middlewareC: |_________________如果没有 user_id 报错_____|
```
@SSang 似乎可以这样,

middlewareA:|________________________将 user_id 等信息放入 ctx______________________|
middlewareB: |____________________________log__________________________|
middlewareC: |_________________如果没有 user_id 报错_____|
建议还是把鉴权放到 log 之前. 向 ctx 里头塞指针, 万一有地方把指针里的值改了, 很难 debug, 不如让它不可变
@James369 有啥相似性吗 ? 有哪些是 MySQL 能做到, 但 sqlite 做不到的 ?
@sunny352787 我觉得写 cpp 模板才难受(没 concept 的情况下), instantiation 的报错根本没法看
> 稍微高级点深入点用法, 你不了解原理还是不行, 或者别人代码看不懂
prove it. 我用过 generator 及 async, 完全不了解实现, 但不妨碍我使用. 只需要看下 pep 了解提出这玩意的背景, 能解决的问题, 适用场景就可以, 我就能知道用这个能解决啥问题. 同样我不了解 golang 中协程的实现, 但并不妨碍我天天用, 天天看他们的代码

> python 本身库就极为庞大, 绝大多数人可以说 90%模块都没用过
这能说明什么问题. 应该是先有问题(在这种场景下, 我需要实现什么功能, 比如二分查找, 解析 md), 然后 Google 下有没有库来实现这东西


> python 使用范围太广, 想多涉及点就要相当的经验, 比如 web, gui, 机器学习, 深度学习, nlp 等等, 每一块都有专属的知识点需要大量经验, 时间
这个锅 python 不背. 语言只是用来解决我碰到的问题的. 即使不用 python 解决, 这些问题难度依然不会降低
我为啥要在意那帮破烂亲戚
额外提一下 goland 的其它优点/功能
+ 能查 mysql, pgsql 之类的数据库
+ 能直接发 gRPC, http 请求, 调试起来
+ git 功能感觉比 vscode 更好用
328 天前
回复了 Flourite 创建的主题 Go 编程语言 go 语言用起来好操蛋
用 go 写代码刷题觉得太操蛋了
用 go 写代码刷题觉得太操蛋了
用 go 写代码刷题觉得太操蛋了

这能说明啥问题 ? 刷题能用到并发编程吗 ? 能用到 rpc 吗 ? 需要处理 timeout 吗 ?
跟现实世界的业务场景差别太大了, go 里头一些特性(用同步的方式写异步代码)都用不到
你试试
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   907 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 29ms · UTC 19:47 · PVG 03:47 · LAX 12:47 · JFK 15:47
Developed with CodeLauncher
♥ Do have faith in what you're doing.