Tuesday, October 12, 2021

V2EX - 技术

V2EX - 技术


到底什么是“云原生”?

Posted: 12 Oct 2021 04:40 AM PDT

看了很多解释,还是云里雾里。

现在很多技术文章动不动就是"云原生",是我落伍了吗?

各位升级到 windows11 之后使用体验如何?我快被 windows defender 逼疯了(╬◣д◢)!

Posted: 12 Oct 2021 04:36 AM PDT

虚拟机安装的 windows11,想着体验下,下个破解软件激活,各种报病毒,打不开,windows10 我试了,完全没问题;

然后我就想关了 windows defender 防火墙,结果这货死活关不掉,修改注册表都没用,重启后自动又给我打开了。。。

而且右下角 windows defender 系统通知一直在弹,它是在不停地扫盘么,一分钟弹十多次,然后就把我的破解软件给删了,删了。。。

绝了,暂时放弃了ヽ(ー_ー)ノ

而且不管是系统通知还是设置界面的一些配置按钮,根本打不开,点了就弹在 Microsoft Store 中查找应用。。。

我特么这不是系统功能么,查个屁的应用啊,而且查询每次都是找不到结果,查个屁啊(╯‵皿′)╯︵┻━┻

整了半天,搞得我现在已经完全没有体验的兴趣了,在 11 彻底调整好上市之前大概率都不会再体验了,微软系统隔代定律诚不欺我也!

win10 可以给右键菜单里面的项目添加快捷键吗

Posted: 12 Oct 2021 04:22 AM PDT

我使用的行业软件,安装之后会在右键菜单多出来一项"用 xxx 软件打开"。这个软件的操作对象一般是文件夹,平时,我先左键选中一个文件夹,然后再右键,最后在右键菜单里面选择"用 xxx 软件打开"。这三下操作还是费不少事情,尤其是右键菜单里面找"用 xxx 软件打开"

对于用 xxx 软件打开文件夹这个操作,我在想能不能设置一个什么快捷键呢?因为右键文件夹之后的菜单里面,复制、粘贴、剪切、重命名等等操作都有相对应的快捷键,所以我想给"用 xxx 软件打开"也给绑定一个快捷键,比如 Ctrl+G, 绑定之后,我只需要左键选中文件夹,然后按 Ctrl+G 就能用 xxx 软件打开文件夹了。

搜了一圈,目前最为接近的方法是 https://www.cxyzjd.com/article/zhenglu008/8796051

但是这个方法也只能是绑定一个字母————就是说得先左键选中,然后右键,最后按这个字母。这个方法就是省略了在菜单里面找。

大家知道有什么方法能够直接绑定一个快捷键吗?

来看我和二次元妹子一起写代码直播 #2

Posted: 12 Oct 2021 04:19 AM PDT

csrf 的随机 csrf token 默认是保存在 session 中, 如果改为分布式环境下, 只能将这一值保存在 redis 中吗?还有别的办法吗?

Posted: 12 Oct 2021 04:15 AM PDT

安卓开发者模式经常被自动关闭

Posted: 12 Oct 2021 03:33 AM PDT

手里只有一台测试机,小米 MIX2S,MIUI 12.5.1 稳定版

日常开发调试并不频繁,经常在需要调试的时候发现开发者模式被关闭了,不得不重新找入口连击系统版本开启; 目前不太清楚的是:

  1. 这是 MIUI 还是 安卓的 feature
  2. 自动关闭的触发逻辑是怎么样的,重启 or 定时器?
  3. 有没有任何方式可以禁止自动关闭,保持开发者模式+usb 调试永远开启

umijs ssr 渲染时,怎么把国际化 locale 传递到非组件函数中使用(如一些 util 函数)

Posted: 12 Oct 2021 03:10 AM PDT

在 node 端通过解析路径(/zh/news 、/en/news)拿到 zh 、en 等 locale,通过 umijs 提供的 render 可以把 locale 传递到页面的 props 中,可是我在组件外的一些地方如何拿到这个 locale 呢,比如有个公共的 request 函数,在这个函数里我要把 header 中的 accept-language 设置成对应的 locale 。

export function request(params {   const headers = {     'Accept-Language': '这里如何取到 locale???'   };   // ... } 

在 umijs ssr 的文档里有这样的代码,是把 locale 挂到 nodejs 的 global 上,可是这样多个请求一起过来的时候,很大可能会出现 locale 污染的情况啊。

// app.ts export const ssr = {   beforeRenderServer: async ({     env,     location,     history,     mode,     context,   }) => {     // global 为 Node.js 下的全局变量     // 避免直接 mock location,这样会造成一些环境判断失效     global.mockLocation = location;      // 国际化     if (location.pathname.indexOf('zh-CN') > -1) {       global.locale = 'zh-CN'     }   } } 

GoLand Debug 时 如何回到之前执行的地方

Posted: 12 Oct 2021 03:08 AM PDT

如题,之前用 IDEA 的时候,可以用 Drop Frame,直接回到上一个调用栈。

GoLand 貌似没发现这样的功能,感觉 Debug 的时候,貌似没有 Java 调试起来方便啊。

有大佬解决过类似的问题吗

GIS 入门,简化图形坐标点数,何德何能 同时拥有了 卧龙凤雏 竟不晓得怎么搞��

Posted: 12 Oct 2021 03:07 AM PDT

原图,每个面的点太多,导致文件数据太大,并且不需要这么高精度,需要简化图形,减少坐标点数

卧龙:QGISVector -> Geometry Tools -> Simplify,功能太弱了,看起来只是简单的每个去掉了坐标点,压根不理会相邻的面,导致图形错位(边缘重叠、或产生空隙)

凤雏:ArcMapArcToolBox -> Cartography Tools -> Generalization -> Simplify Polygon,初测试以为是个王者,没想到竟然是个青铜,居然都会有一边几乎完全没有处理


正在入门学习 GIS,电脑上只装了上面两款软件,应该是专业软件,不过在这个算是核心的一个功能上,又显得不那么专业。

已经折腾好几天了,其实 ArcMap 的精简结果已经基本快达到求了,但未精简的那条边完全可以做到精简,准备再研究研究;实在不行就准备自己写代码来处理,啃下这块鸡肋,粗略估计:2 小时的代码量基本上就能达到 QGIS 的效果,3 天的代码量就能完美实现出 ArcMap 这种结果还不带 bug 的🐶

发本帖的目的:

  1. 吐槽以上软件的这个功能
  2. 把问题讲出来就有可能遇上专业大佬,说不定能传授点经验,点一下就把问题解决了。

谢谢大家

请教下各位 React 的函数组件比类组件好在哪里?

Posted: 12 Oct 2021 03:05 AM PDT

正在学习中,感觉两种方式写起来是差不多的?😂 在实际工况中这两种写法差距很大吗?

MongoDB 的 Criteria 方法求助

Posted: 12 Oct 2021 03:02 AM PDT

求助下大佬们,MongoDB 有没有调用 criteria 里的什么方法可以判断一个属性是否同时满足多个条件的
现在想到的是 c.and().in() ,但是这个 in 字句还是不能支持同时满足

Nodejs + Serverless 实现 LaTeX 公式渲染服务

Posted: 12 Oct 2021 02:51 AM PDT

开源 Markdown 编辑器的 LaTeX 渲染方案,相关文章:

Nodejs + Serverless 实现 LaTeX 公式渲染服务

关于 git 的用法,远端已经有 main 和 dev 分支的情况下,本地的是 main 分支,如何把远端的 dev 也拉下来做开发,然后修改再合并到 main 上呢?

Posted: 12 Oct 2021 02:38 AM PDT

远端已经有 main 和 dev 分支的情况下,本地的是 git clone 下来的 main 分支,如何把远端的 dev 也拉下来做开发,然后修改再合并到 main 上呢?

朋友的数据库被删了,有点揪心...

Posted: 12 Oct 2021 02:24 AM PDT

还好只是小白用来玩玩的,不过还是提醒大家多注意备份重要文件。

下面看图吧 ->

https://raw.githubusercontent.com/Damao2250/FileTransfer/master/b2bb558d5b5daeba77c6cbbaefc1316.jpg

����「小搭百科网」g.penzai.com 终于关站了。中文搜索会好起来吗

Posted: 12 Oct 2021 02:22 AM PDT

刚添加完 uBlacklist 规则后发现的。终于松了口气。

刚合并完 ublacklist 订阅

首先是世界名画:

世界名画

检查了很多域名,确实服务器已经关闭了

众多域名已经连不上了

添加了过滤规则后,经常几页都没有几个结果(都被过滤了)

如果这种内容农场网站群一直存在且增加的话,中文的内容的搜索体验真的会很糟糕(特别是非技术向的)。

GRPC 流量路由

Posted: 12 Oct 2021 02:13 AM PDT

我这里有这么一个场景,A 服务调 B 服务调 GRPC 接口,现在想对 A 服务做重构,因此新写了一个 C 服务来替换 A,因此 A 调 B 的接口想通过 istio 全部拦截下来由 C 来处理,C 处理完之后再调 B 。

C 服务相当于是个 GRPC 的代理网关。

我有试过 http 根据 header 或者 url 用 virtualservice 做路由转发,但是 grpc 怎么实现呢?

恢复以前版本的右键菜单, 支持最新版(22000.194)

Posted: 12 Oct 2021 02:06 AM PDT

有没有觉得 win11 右键菜单太占地方?

Windows Registry Editor Version 5.00  [HKEY_CURRENT_USER\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32] @=""  

同样一个文件,使用 excel 直接打开的,和使用 poi 读取,格式不一样

Posted: 12 Oct 2021 12:30 AM PDT

excel.xlsx 文件 有一列时间,选择自定义格式为 yyyy/m/d h:mm 保存后,实际存储的为该内置格式对应的索引,即十进制 22,十六进制 0x16, 但是 poi4.1.2 内置默认格式类 BuiltinFormats 中存储的 0x16 对应的时间格式为 m/d/yy h:mm 。 这就导致同样一个文件,使用 excel 直接打开的,和使用 poi 读取的,格式不一样。

/**

  •   0, "General"<br> 
  •   1, "0"<br> 
  •   2, "0.00"<br> 
  •   3, "#,##0"<br> 
  •   4, "#,##0.00"<br> 
  •   5, "$#,##0_);($#,##0)"<br> 
  •   6, "$#,##0_);[Red]($#,##0)"<br> 
  •   7, "$#,##0.00);($#,##0.00)"<br> 
  •   8, "$#,##0.00_);[Red]($#,##0.00)"<br> 
  •   9, "0%"<br> 
  •   0xa, "0.00%"<br> 
  •   0xb, "0.00E+00"<br> 
  •   0xc, "# ?/?"<br> 
  •   0xd, "# ??/??"<br> 
  •   0xe, "m/d/yy"<br> 
  •   0xf, "d-mmm-yy"<br> 
  •   0x10, "d-mmm"<br> 
  •   0x11, "mmm-yy"<br> 
  •   0x12, "h:mm AM/PM"<br> 
  •   0x13, "h:mm:ss AM/PM"<br> 
  •   0x14, "h:mm"<br> 
  •   0x15, "h:mm:ss"<br> 
  •   0x16, "m/d/yy h:mm"<br> 

*

  •   // 0x17 - 0x24 reserved for international and undocumented 
  •   0x25, "#,##0_);(#,##0)"<br> 
  •   0x26, "#,##0_);[Red](#,##0)"<br> 
  •   0x27, "#,##0.00_);(#,##0.00)"<br> 
  •   0x28, "#,##0.00_);[Red](#,##0.00)"<br> 
  •   0x29, "_(* #,##0_);_(* (#,##0);_(* \"-\"_);_(@_)"<br> 
  •   0x2a, "_($* #,##0_);_($* (#,##0);_($* \"-\"_);_(@_)"<br> 
  •   0x2b, "_(* #,##0.00_);_(* (#,##0.00);_(* \"-\"??_);_(@_)"<br> 
  •   0x2c, "_($* #,##0.00_);_($* (#,##0.00);_($* \"-\"??_);_(@_)"<br> 
  •   0x2d, "mm:ss"<br> 
  •   0x2e, "[h]:mm:ss"<br> 
  •   0x2f, "mm:ss.0"<br> 
  •   0x30, "##0.0E+0"<br> 
  •   0x31, "@" - This is text format.<br> 
  •   0x31  "text" - Alias for "@"<br> 

*/

Google 搜索 seo 问题,对 Android 浏览器有什么办法么?

Posted: 11 Oct 2021 11:17 PM PDT

昨天刚刚试过 pc 端的解决方法,的确是可行的,但是一早的时候手机搜索一下,发现还是好些这些垃圾站点。

有谁手机浏览器方面有解决方法推荐么?

关于 ConcurrentLinkedQueue 的一些疑问

Posted: 11 Oct 2021 10:44 PM PDT

关于 ConcurrentLinkedQueue 的一些疑问

private transient volatile Node<E> head;  private transient volatile Node<E> tail;  public ConcurrentLinkedQueue() {     head = tail = new Node<E>(null); }  public boolean offer(E e) {     checkNotNull(e);     final Node<E> newNode = new Node<E>(e);      for (Node<E> t = tail, p = t;;) {         Node<E> q = p.next;         if (q == null) {             if (p.casNext(null, newNode)) {                 if (p != t)                     casTail(t, newNode);                 return true;             }         }         else if (p == q)             p = (t != (t = tail)) ? t : head;         else             p = (p != t && t != (t = tail)) ? t : q;     } }  boolean casNext(Node<E> cmp, Node<E> val) {     return UNSAFE.compareAndSwapObject(this, nextOffset, cmp, val); } 

前提

使用 ConcurrentLinkedQueue() 构造一个对象,并首次调用 offer() 方法

问题

当代码执行到 if (q == null) 时,head == tail,但是当执行完 p.casNext(null, newNode),为什么是 head 成为了 { item = 1, next = null },也就是 newNode,而 tail 变成了 { item = null, next = tail ( tail 本身) } ? p 是从 t 赋值来的,而 t 是从 tail 赋值来的,tail == head,为什么调用 p.casNext(null, newNode) 会同时改变 head 和 tail 的值,且 head 和 tail 的值不一样了?

为什么 Python 在 Windows 系统下 socket(blocking) recv 会得到长度为 0 的空数据

Posted: 11 Oct 2021 09:37 PM PDT

网上查找都是说 recv 为空代表对等方已经关闭了连接,但事实上并没有关闭?我依然可以接收到新的数据,也可以发送。

https://stackoverflow.com/questions/3091010/recv-socket-function-returning-data-with-length-as-0

并且同样的代码在 linux 下就很正常,这个情况只在 Windows 下复现。并且非常神奇,socket 刚创建没问题,10 分钟后(一秒不差)就出现 recv 空数据

我的 Python 版本为 3.8

如何利用 nginx 备份源地址网站文件到 B 服务器上存储?

Posted: 11 Oct 2021 08:25 PM PDT

譬如源地址是 a.com ,B 地址是 b.com
现在 a.com 存在哟个 a.com/1.txt 文件,1.html 里面包油一个 css 目录下的 1.css 的 a.com/1.html a.com/css/1.css

现在部署了 nginx 的 b 服务器上我只需访问 b.com/1.txt b.com/1.html (本身不存在的,去读取了 a.com 上的)自动存储下来对应的 1.txt. 1.html css/1.css (如果存在文件即不再读取 a.com 上的资源)

k8s 多集群管理(类似集群联邦),有没有什么特别好的开源中间件?

Posted: 11 Oct 2021 08:24 PM PDT

目前公司存在多个 k8s 集群,并且实现了 kubernetes on kubernetes(虽然很 low),目前想把其中的一些集群使用集群联邦的模式联结在一起,实现多地域,多机房调度 目前规划了多个存储集群,虚拟机集群,并有生产环境,测试等环境区别 请问各位大佬,有什么比较好的中间件能实现这样的场景呢

关于 Java 学习微服务或分布式学习路径的问题

Posted: 11 Oct 2021 01:11 PM PDT

目前学习完了 Springboot 一些框架,一些 redis,es 等框架。想进一步学习 Java 微服务或分布式等!看了部分的 Spring Cloud 的相关介绍,技术太多,而且有些已经过时,不知道学习那种比较好,所以希望大佬指导一下后面的学习路径!最好是列出相关的技术栈

alpine 用国内源,出现 https 证书问题

Posted: 11 Oct 2021 12:34 PM PDT

一开始用的是 v3.7 版,中科大的源(清华的源同样问题),默认为 http,改为 https 后更新不了,出错提示如下

#apk update fetch https://mirrors.ustc.edu.cn/alpine/v3.7/main/x86_64/APKINDEX.tar.gz 127499998981068:error:14007086:SSL routines:CONNECT_CR_CERT:certificate verify failed:ssl_clnt.c:1026: ERROR: https://mirrors.ustc.edu.cn/alpine/v3.7/main: Permission denied WARNING: Ignoring APKINDEX.1076f322.tar.gz: No such file or directory fetch https://mirrors.ustc.edu.cn/alpine/v3.7/community/x86_64/APKINDEX.tar.gz 127499998981068:error:14007086:SSL routines:CONNECT_CR_CERT:certificate verify failed:ssl_clnt.c:1026: ERROR: https://mirrors.ustc.edu.cn/alpine/v3.7/community: Permission denied WARNING: Ignoring APKINDEX.ca14b9dd.tar.gz: No such file or directory 

后来试了几个版本 3.6,3.9,3.10 ,3.12 ,3.14 都可以用 https(USTC),只有 3.7 和 3.8 不用了 https 。

改回 http 后是正常的

#apk update fetch http://mirrors.ustc.edu.cn/alpine/v3.7/main/x86_64/APKINDEX.tar.gz fetch http://mirrors.ustc.edu.cn/alpine/v3.7/community/x86_64/APKINDEX.tar.gz v3.7.3-184-gffd32bfd09 [http://mirrors.ustc.edu.cn/alpine/v3.7/main] v3.7.3-194-gcddd1b2302 [http://mirrors.ustc.edu.cn/alpine/v3.7/community] 

最后,v3.7 用南京大学的源后,可以使用 https

#apk update fetch https://mirrors.nju.edu.cn/alpine/v3.7/main/x86_64/APKINDEX.tar.gz fetch https://mirrors.nju.edu.cn/alpine/v3.7/community/x86_64/APKINDEX.tar.gz v3.7.3-184-gffd32bfd09 [https://mirrors.nju.edu.cn/alpine/v3.7/main] v3.7.3-194-gcddd1b2302 [https://mirrors.nju.edu.cn/alpine/v3.7/community] 

还好这个发行版容量小安装快(选它也是因为容量问题),否则都不会安装几个版本来测试。

GitHub Action Build 一个镜像花了 4 个小时

Posted: 11 Oct 2021 11:48 AM PDT

如题。

Build 一个镜像,amd64 版本只需要 15 分钟。然后加了个 arm64 版的,居然 Build 了 4 个小时。
GitHub 难道用树莓派来整的吗?

5emOyR.md.png

吴彦祖,我想求一张背景图��

Posted: 11 Oct 2021 11:34 AM PDT

昨天再油管看视频,连接

以图搜图找到这个**连接**,也没有背景图

各位吴彦祖看看有没有搞头

使用函数的风格调用 JS 方法

Posted: 11 Oct 2021 10:38 AM PDT

前言

JS 调用方法的风格为 obj.method(...),例如 str.indexOf(...)arr.slice(...)。但有时出于某些目的,我们不希望这种风格。例如 Node.js 的源码中有很多 类似这样的代码

const {   ArrayPrototypeSlice,   StringPrototypeToLowerCase, } = primordials  // ... ArrayPrototypeSlice(arr, i) 

为什么不直接使用 arr.slice() 而要多此一举?

因为 arr.slice() 实际调用的是 Array.prototype.slice,假如用户重写了这个方法,就会出现无法预期的结果。所以出于慎重,通常先备份原生函数,运行时只用备份的函数,而不用暴露在外的函数。

调用

备份原生函数很简单,但调用它时却有很多值得注意的细节。例如:

// 备份 var rawFn = String.prototype.indexOf // ...  // 调用 rawFn.call('hello', 'e')    // 1 

这种调用方式看起来没什么问题,但实际上并不严谨,因为 rawFn.call() 仍使用了 obj.method(...) 风格 —— 假如用户修改了 Function.prototype.call,那么仍会出现无法预期的结果。

最简单的解决办法,就是用 ES6 中的 Reflect API:

Reflect.apply(rawFn, 'hello', ['e'])    // 1 

不过同样值得注意,Reflect.apply 也未必是原生的,也有被用户重写的可能。因此该接口也需提前备份:

// 备份 var rawFn = String.prototype.indexOf var rawApply = Reflect.apply // ...  // 调用 rawApply(rawFn, 'hello', ['e'])    // 1 

只有这样,才能做到完全无副作用。

简化

有没有更简单的方案,无需用到 Reflect API 呢?

我们先实现一个包装函数,可将 obj.method(...) 变成 method(obj, ...) 的风格:

function wrap(fn) {   return function(obj, ...args) {     return fn.call(obj, ...args)   } } const StringPrototypeIndexOf = wrap(String.prototype.indexOf) StringPrototypeIndexOf('hello', 'e')  // 1 

运行没问题,下面进入消消乐环节。

v1

即使没有包装函数,我们也可直接调用,只是稍显累赘:

String.prototype.indexOf.call('hello', 'e')   // 1 

既然参数都相同,这样是否可行:

const StringPrototypeIndexOf = String.prototype.indexOf.call StringPrototypeIndexOf('hello', 'e')  // ??? 

显然不行!这相当于引用 Function.prototype.call,丢失了 String.prototype.indexOf 这个上下文。

如果给 call 绑定上下文,这样就正常了:

const call = Function.prototype.call const StringPrototypeIndexOf = call.bind(String.prototype.indexOf) StringPrototypeIndexOf('hello', 'e')   // 1 

整理可得:

const call = Function.prototype.call  function wrap(fn) {   return call.bind(fn) }  const StringPrototypeIndexOf = wrap(String.prototype.indexOf) StringPrototypeIndexOf('hello', 'e')  // 1 

v2

既然 wrap(fn)call.bind(fn) 参数都相同,那么是否可继续简化,直接消除 wrap 函数?

和之前一样,直接引用显然不行,而是要预先绑定上下文。由于会出现两个 bind 容易搞晕,因此我们拆开分析。

回顾绑定公式:

  • 绑定前 obj.method(...)

  • 绑定后 method.bind(obj)

call.bind(fn) 中,obj 为 call,method 为 bind。套入公式可得:

bind.bind(call) 

其中第一个 bind 为 Function.prototype.bind

整理可得:

const call = Function.prototype.call const wrap = Function.prototype.bind.bind(call)  const StringPrototypeIndexOf = wrap(String.prototype.indexOf) StringPrototypeIndexOf('hello', 'e')  // 1 

v3

到此已没有可消除的了,但我们可以用更短的函数名代替 Function.prototype,例如 Map 、Set 、URL 或者自定义的函数名。

出于兼容性,这里选择 Date 函数:

const wrap = Date.bind.bind(Date.call) const StringPrototypeIndexOf = wrap(String.prototype.indexOf) StringPrototypeIndexOf('hello', 'e')  // 1 

结尾

现在我们可用更简单、兼容性更好的方式,将方法函数化,并且无副作用:

const wrap = Date.bind.bind(Date.call)  const StringPrototypeIndexOf = wrap(String.prototype.indexOf) const StringPrototypeSubstr = wrap(String.prototype.substr)  StringPrototypeIndexOf('hello', 'e')  // 1 StringPrototypeSubstr('hello', 2, 3)  // "llo" 

有没有国内云厂商的列表?

Posted: 11 Oct 2021 09:33 AM PDT

nginxconfig.io 生成的配置没法正确运行啊

Posted: 11 Oct 2021 09:16 AM PDT

我的需求是通过 nignx 反代多个 docker 里运行的不同端口 server,同时 nginx 还当静态服务器支撑几个 vue 的前端项目。目前的做法是通过负载均衡来实现反代,但是静态服务配置超过两个就会导致无法访问。所以用 nginxconfig.io 去生成了一个配置对比看看,发现它的配置比较呆板,而且放到服务器后访问会直接拒绝。

Xmacs v2021.2 alpha2 发布了!

Posted: 11 Oct 2021 07:32 AM PDT

Xmacs v2021.2 alpha2 发布了!

这个版本很快!因为升级到了 Guile 3 。

本次发布只提供 macOS 安装包,立即下载: https://gitee.com/XmacsLabs/Xmacs/releases/v2021.2-alpha2

重要变更

  • 基于 GNU TeXmacs 2.1
  • 使用 Qt 5.15.2
  • 内嵌 GNU Guile 3.0.7

详细变更

下载安装之后,请阅读文档: Help -> Xmacs

初次启动需要编译所有的 Scheme 代码,所以初次启动会比较慢。

请问大家用 idea 的时候用什么主题呢,默认几个主题看着眼睛都不咋好受…

Posted: 11 Oct 2021 07:09 AM PDT

请问大家用 idea 的时候用什么主题呢,默认几个主题看着眼睛都不咋好受…求推荐几个对比较柔和护眼的主题,非常感谢~

阅读 Python 代码的困难

Posted: 11 Oct 2021 05:42 AM PDT

已经轻度使用 python 两年了,始终觉得阅读别人的 python 源码会有些困难。
比如在一个函数中,很难找到传入参数的定义,导致难以精确理解本函数的功能。
作为对比,以前用 c++,所有变量和参数都明确声明了类型,可以很精确地定位到该类型地定义。用于辅助理解当前函数的功能。

是我没找到方法?还是这就是 python 的缺陷?

请问有熟悉 IBM Cognos 外部访问如何传参的大佬吗,跪求一位技术支持 vx: eWluZ3FpeXlzbg==

Posted: 11 Oct 2021 04:06 AM PDT

No comments:

Post a Comment