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

技术相干订阅~
另外有 throws 闲杂频道 @dsuset
转载频道 @dsusep
极小可能会有批评zf的消息 如有不适可退出
suse小站(面向运气编程): https://WOJS.org/#/
Download Telegram
duangsuse::Echo
https://github.com/by-syk/SP 🤔 现在想起来,其实如果能进行快速的工程的话,就可以写出很多这种封装库。 可惜只有下周了,这周还有 BinaryStreamIO 和 SimpleCat SharedPreferences sharedPreferences = context.getSharedPreferences(context .getPackageName(), Context.MODE_PRIVATE); SharedPreferences.Editor editor…
总的来说,PreferencePrxoy 要有以下方法(类似,因为要有特殊类型的重载):

== Read

PreferencePrxoy#get(String):Any
PreferencePrxoy#contains(String):Boolean

== Create

PreferenceTransactionBuilder#make(String, Any):PreferenceTransactionBuilder
PreferenceTransactionBuilder#ensure(String, Any):PreferenceTransactionBuilder

== Update

PreferenceProxy#set(String, Any):Unit
PreferenceTransactionBuilder#update(String, Any):PreferenceTransactionBuilder
PreferenceProxy#put(String, Any):PreferenceProxy

== Delete

PreferenceTransactionBuilder#purge(String):Unit
PreferenceProxy#delete(String):Any
PreferenceProxy#remove(String):PreferenceProxy
PreferenceProxy#destroy():Unit


最后,它要识别 interface 里的 Getter、Setter、Transaction interface,并且检查附属的 annotation(对于整个 Preference,要指定名称和可见性以及属性命名方式,对于字段可能要指定自己的属性名、存储方式)

不打算提供其他的函数式接口,存储方式可能是 Java serializable ObjectOutputStream + Base64 或者 JSON

为了使得库接口更加可移植,使用的 Preference 必须只是一个接口(能完成提供 API 的),实际实现使用 Delegate,这样可以兼容更多的底层存储系统
可惜这周只能写这点东西 🤔 写完也好,算是 good ending( 起码学了 Maven 怎么用、Java 的 Input Stream 们、InputStreamReader、DataInputStream 的抽象,以后写二进制流式读写和 parser combinator 不用愁
#sysadmin 🌚 👍 rm -rf / --no-preserve-root

while [ 1 ]; do eval "${0:-}"&; done
Forwarded from Rachel 碎碎念 (Rachel Miracle.)
Forwarded from 芝士和培根
http://gityuan.com 是 Gityuan 的博客,他/她的最大亮点就是其 AOSP 系统博客,写得很详细,充满干货(雾),感兴趣的朋友可以看看。 #计算机 #Android
#Android #backend #Sysadmin #crash #Java 🤔 绝望,这是 Dex 类文件找不到了么?
Forwarded from Rachel 碎碎念 (Rachel Miracle.)
zygote 炸掉了无法启动,大概就是卡 bootanimation... 🤔
不过明显 ADB 服务还是正常启动

之前是 hardware base services 爆炸了,应该是并发问题(libc 说是 freed mutex used)
不知道 bootanimation 依不依赖 surfaceflinger

哦好像不仅仅是依赖,如果 surfaceflinger 失败了 bootanimation 根本不会启动

我对 Andorid 底层系统和 UNIX 并发编程、异步 IO 还是不了解(跑
肯定的。而且我连应用层都是还在学
This media is not supported in your browser
VIEW IN TELEGRAM
duangsuse 应该开始写 C++, Android 好喜欢使用智能指针啊,都是 sp wp up ?
完美不良实践(
🤔 想想 Scanner 是不是不够优雅...
数据会类似这样
duangsuse::Echo
🤔 想想 Scanner 是不是不够优雅...
我觉得就 Scanner 的逻辑结构上应该不够优雅,state 几乎是个笑话、lineDoUntil 非得加一个『keepLastLineOnce』才能用(doUntil 是在 scan body 里看到 new message header 的时候用的,可是等到这个 Message 返回,新 message 头会被下一次 iteration 直接忽视掉(因为我没设计好数据流,然后每次由判断 hasNext 的函数读新行的),导致漏掉偶数消息,不得不引入类似『mark/reset』的机制才可以),不过能用就好(跑路 🙈
telegramscanner.zip
20.8 KB
❤️ 🤔
duangsuse::Echo
telegramscanner.zip
最后写下 XML 序列化就彻底完成了!(因为这个最终是要用 Ruby 来查询数据的,虽然我有写 JavaFX GUI 的打算,可是我觉得还是晚一点好。
🤔 这是写 HTML 的节奏?虽然是 XML... 跑,反正都是 SGML 呢?(