duangsuse::Echo
708 subscribers
4.23K photos
127 videos
583 files
6.43K links
import this:
美而不丑、明而不暗、短而不凡、长而不乱,扁平不宽,读而后码,行之天下,勿托地上天国。
异常勿吞,难过勿过,叹一真理。效率是很重要,盲目最是低效。
简明是可靠的先验,不是可靠的祭品。
知其变,守其恒,为天下式;穷其变,知不穷,得地上势。知变守恒却穷变知新,我认真理,我不认真。

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
Forwarded from dnaugsuz
严正怀疑是 Kotlin 语言定义有 bug,为什么我不加括号你说没有 companion object 加上你说找不到这个类 (欸第一张图好像发错了…… 😂
Forwarded from dnaugsuz
严重同意
有时候我 IDEA 提示 could be [private]... 我就会忍不住想把本来打算 public 的接口加个 private……

当然我很少写不能够静态类型安全的代码,不过偶尔写到时也会负责地检查我到底为什么要 unchecked,然后负责地 supress 掉 warning

最开始我编程的时候很讨厌 IDEA 的 could be weaker visiblity 提示,后来才慢慢发现其实 IDEA 也蛮对的…… 现在我写的 public 是适度情况了,入门的时候我有这些想法:

+ 『private 不让我调用这个方法/静态方法,所以它很坏,我不能随便使用我弄出来的方法了,为了保证可组合性必须全部 public』
+ 『protected 是什么? finally 和 catch 有什么区别?』
+ 『必须添加 @Override,不然就不正确』
+ 『某 IDE 能够自动生成 new Button.OnClickListener() {@Override...} 什么的真是太高效了』
这就是我弄了一个下午写的测试……
#China #Low #Android #security Good 👍 牛批!
Forwarded from 永久封存 | Yuuta 台 | 😷 #Pray4Wuhan (Yuuta ⠀)
真的很难防
#Project 好耶!准备正式在开放源代码的情况下继续开发!
鸡你真漂亮!第一次发现错误都这么漂亮!
duangsuse::Echo
鸡你真漂亮!第一次发现错误都这么漂亮!
tries() { local mt=$1 cmd=$2
local omt=$mt
declare -i mt omt
while [ $mt!=0 ]; do
eval $cmd; if [ $?!=0 ]; then
mt=$mt-1
printf "Command \`${cmd}\` failed, retrying of (${omt-mt}/${omt})" >&2
else break;
fi
done
}
看来 Bash 还真不适合用来写代码
我感觉我的编程能力(虽然也不咋地,因为智商摆在那里就那样,比如上面的代码我会考虑两种控制流选择方式可是却不能成功)
现在一般可以看系统情况,用一下 Perl 之类其他的语言来写脚本。
duangsuse::Echo
现在一般可以看系统情况,用一下 Perl 之类其他的语言来写脚本。
Perl 也困难,我看冰封哥写过,很富有技巧性,连简单的 Regex match 都弄了一大堆二元操作,还到处 implicit 变量 (man perlintro)

use strict;
my $str = "Hello World";
if ($str =~ m/^(.*) World$/) { print $1 . "\n"; }

最重要的是我讨厌类似 Python 的语言,虽然我觉得 Perl 官方实现的错误提示很人性化,一点没学术死板板硬邦邦的做派,而且设计的某些点还比较重视『符合视觉』

my ($a, $b, $c) = ("A", "B", "C");
my $di = ( "A" => "甲", "B" => "乙")
;

不会用了,$, @, %, #, {} 的都是什么鬼玩意

Perl 自己都可以给自己写预处理扩展,只需要编程就可以了,你甚至可以直接在一个 Perl 文件里定义基于 Perl 处理的程序设计语言…… (PerlYuYan)
有的时候,我觉得太过于技巧性的东西应该加上引号
因为这些技巧虽然看起来高大上,却凭空制造复杂性。编写一时爽,阅读重构火葬场
Forwarded from dnaugsuz
唉,不过 Kotlin 的这个 fun/val extension 还真是好,自愧不知,C# 的都没有、Groovy 做得和脚本语言一样意义不太大。不知道没有 extension 的 Kotlin 还能不能算是 Kotlin,现在写个函数都炒鸡方便、标准库也越来越能逼死同人了,其他语言是望尘莫及实锤的…… 😂
完美地打压嘲讽了所有以代码行数论英雄的模板程序员,原来你写了半天自我感觉超好的代码,居然其实是低级重复……
同样是程序员,为什么有的人会把 Java 写成汇编,有的人会把 Kotlin 写成 Haskell? 🤔

有一定编程素质的人写代码是横着写,写十年实质上没有进步的人写一旦时序区间复杂一点代码,一个个子程序像顽石一样竖在那不动,别人想弄明白你干了什么都麻烦的要死
好像别人欠你时间了一样

我以前以为 Oracle JDK 里的东西带黑科技性能加成,看来如今必须要改变一下看法了……

把本来 71 行可以实现的逻辑写成 471 行、为每个子程序哪怕是最细节最实现无关的东西加上堪比千字文的注释、即便代码复用唾手可得我也要 copy/paste,不错,牛逼、大佬。
我终于纠正了之前一个自己都觉得错误的想法…… (如果先 op(count) 而不是 --count,序列就是 9,8,7,...,1) 本来我在块里面 op(); --count; 一般来讲 count=3, while>0 先肯定是第一次循环 op(); count=2, op() count=1 op(),肯定是三次的,区别在于先 --count 第一次 op 会拿到 3-1 = 2 而已…… 我所谓『时序』,其实自己也一点不懂而已,如果要做逻辑器件编程无时序思维是困难的
duangsuse::Echo
我终于纠正了之前一个自己都觉得错误的想法…… (如果先 op(count) 而不是 --count,序列就是 9,8,7,...,1) 本来我在块里面 op(); --count; 一般来讲 count=3, while>0 先肯定是第一次循环 op(); count=2, op() count=1 op(),肯定是三次的,区别在于先 --count 第一次 op 会拿到 3-1 = 2 而已…… 我所谓『时序』,其实自己也一点不懂而已,如果要做逻辑器件编程无时序思维是困难的
不过说起来,这个项目测试有点不好做,我希望以后有机会了,用实际用例来测试

目前还在准备写组合结构的部分,显然组合是可以有 Size 的,没有 Size 的话,可能不允许 reset

但是 File 的话可以随便 Reset,怎么办?怎么兼容这个? 我也不清楚……
#Kotlin 理论没想好,又一个秀破天际,但是没有实际用处的东西,我之前想的 NumEqualize 动态自动 widen 都比这个强的多的多。
它不能解决问题,我没有注意到要『检验一种 InputStream 的 read(byte[]) 是否利用了 read()』是不可能的…… 几乎
实际上,你多建立一个 Filter 就可以检验了,但是有什么意义呢?我觉得这应该直接改掉

Java 程序员写这种本来也不低效的模式怎么都写得这么冗长…… 如果没有优化,这额外开销是我自己无法接受的
卧槽,刚才看到一个 s.read() ; s.read(byte[]) 都是分离开算的才觉得奇怪,明明计算上不存在层次为什么会产生二倍的结果?这才发现是自己逻辑写错了…… 😂
This media is not supported in your browser
VIEW IN TELEGRAM
修了一个至关重要的 bug,可以意味着现在的 Reader 已经可以用了
虽然明天我又要去上学了

当然其实是不保证可以用无问题的,但看起来很稳定一样,因为我一行一行一次一次 UpArrow Kotlin REPL 测试出来的…… 的确是可以用,很正常,尤其是 Reader.File
除了 KotlinIO 的 InputStream.readBytes() 不正常而已,不过这个定义我觉得就有点奇怪,也就见怪不怪了,和 Java 一比是大雾见小雾

URLBuffer 的都是 Reader.Instance 辅助实现的,当然他们都是那个德行,上不来下不去。
不过 Reader.InstanceReader 的基本继承结构我重构了一下,还没测试过是否工作正常,我想应该是没问题的

关键是 Writer... 现在还可怜的要不得
关键是我…… 明明这么努力,还是熬夜,而且莫名觉得熬得还很有意义,因为完成了想做的事情…… 可是一天到晚在这里视力下降就不好了……
关键是剩下的事情…… 虽然是写了一些,但我自己感觉提升不大,有时候看着屏幕会觉得知道该怎么写,闭上眼睛思考一下全不知道是什么东西了,迷人……

关键是,今天晚上肯定不能完成了吧

他们又去找一个在什么大学来着当教授的博士后亲戚,和他一个 IT 的朋友来电话教导我

可我是要写代码而已,又不是上中科大、交大、西安大学、当高学历高素质人才……
不管多没办法总是要去的啊…… 何况这种强度一直下去肯定不是办法,而只有长假到来而且我成天心情好才可以保证不出现过劳死的问题,唉 #life #China #school
说起来,现在写的代码越来越不像以前了。

给人感觉这么大一个类,我怎么就只写了 160 行? 之前感觉这么有用的类,怎么只有 174 行?以前我写个小应用都能写到这个行数的一半,然而这个结构却复杂的多。

不过我的确很讨厌对特殊的情况依然坚持用『同意』『规范』的缩进方式,为了让程序代码更好看,怎么样的缩进我都能用。

编译后 JAR 现在是 85K