草庐IT

可读性

全部标签

java - 我们需要在 ArrayList 上使用迭代器吗?

昨天,我在回答gettingConcurrentModificationExceptionerrorwhileusingiteratorandremove的问题时我添加了一条通知It'snotagoodideatouseiteratorswhenyouhaveArrayLists.您无需深入理解该问题即可回答该问题。那里,我有两条评论说我错了。我的观点:使用迭代器时代码的可读性要差得多。有可能引发难以调试的ConcurrentModificationException。你能解释一下吗?问题:我们是否需要在ArrayList上使用迭代器?UPD这是关于显式使用Iterator的。

java - 可读性与性能

最近我们在工作中讨论了局部变量对Java代码的性能和可读性的影响。我的一些同事认为像这样的声明newDoSomethingCmd(newSelectionContext(context,keys),infoStuff.getCurrentRole().getRole_id()).execute(getResultContainer());会给应用程序带来相当大的性能提升。他们愿意为此牺牲代码的可读性。他们这样说对吗?上面的版本比这个版本的性能要好得多吗?finalSelectionContextselectionContext=newSelectionContext(context,k

【深入浅出系列】之代码可读性

这是“深入浅出系列”文章的第一篇,主要记录和分享程序设计的一些思想和方法论,如果读者觉得所有受用,还请“一键三连”,这是对我最大的鼓励。一、老生常谈,到底啥是可读性一句话:见名知其义。有人说好的代码必然有清晰完整的注释,我不否认;也有人说代码即注释,是代码简洁之道的最高境界,我也不否认。但我都不完全接受,如果照搬前者,有人会在每个方法、每个循环、每个判断都添加大量注释,对于一个表达不严谨的coder来说,代码与汉字可能词不达意;而且,一旦代码逻辑发生变化,注释改不改?对于后者,英语水平可能也就是个半吊子,动词名词不区分,真能做到代码即注释的有多少人?二、骂归骂,总归要硬着头皮干先来举个简单例子

如何修改min.js或者压缩后的js,以便提高代码的可读性。

前端的js上线的时候一般会使用打包工具处理(webpack,gulp,ugly.js等)。这样做有几点作用。可以压缩空间,提高页面响应速度一定程度上可以保护自己的代码安全,防止别人清晰看懂逻辑或者拷贝代码。提高别人阅读自己代码的门槛可前端开发工作中多多少少,会需要看别人的js代码。可随之而来的就是各种噩梦。eval,jsfuck,obfuscator等各种混淆方案就出来了。当然这种也在一定程度上保护了自己的代码。可是对于阅读者来说,简直是天书。关于混淆,以及反混淆等空了再写博客讲解。不过最常见的还是简化,简化后的代码,往往第一步处理起来是进行格式化,然后边看边修改。其中非常大的工作量是调整代码

python - 有没有办法使用可读性和 python 来提取文本,而不是 HTML?

我需要在运行时在服务器端从随机网页中提取纯文本。我使用GoogleAppEngine和Readabilitypython端口。有很多。早versionbygfxmonk,基于BeautifulSoupversionbyminvolai基于gfxmonk的except使用lxml而不是BeautifulSoap,使其(根据minvolai,参见项目页面)更快,尽管引入了对lxml的依赖。versionbyYuriBaburovakaburiy.与minvolai相同,取决​​于lxml。还取决于chardet检测编码。我使用Yuri的版本,因为它是最新的,而且似乎正在积极开发中。我设法使

python - 将 Chrome 历史日期/时间戳转换为可读格式

我最初发布这个问题是为了寻找使用python的答案,得到了一些很好的帮助,但仍然找不到解决方案。我有一个在OSX10.5客户端计算机上运行的脚本,用于捕获互联网浏览历史记录(作为我在美国公立学校的系统管理员职责的一部分)。Firefox3.x将历史记录存储在sqlite数据库中,我已经想出了如何使用python/sqlite3获取该信息。Firefox3.x使用传统的unixtimestamp来标记访问,这并不难转换......Chrome还将浏览器历史记录存储在sqlite数据库中,但其时间戳被格式化为自1601年1月以来的微秒数。我想要使用python解决这个问题,但据我所知,sq

Python 单元测试模块化与可读性

我有一个Python单元测试,其中一些测试具有相同类型的对象。一个测试类的基本大纲是:classTestClass(unittest.TestCase):defsetup(self):...defcheckObjects(self,obj):foriin[...values...]:self.assertEqual(starttags(i,obj),endtags(i,obj))deftestOne(self):#Getobjectone.checkObjects(objone)deftestAnother(self):#Accessanotherobject.checkObjects

python - 如何在 seaborn 的 facetgrid 中设置可读的 xticks?

我有这个带有seaborn的facetgrid的数据框图:importseabornassnsimportmatplotlib.pylabaspltimportpandasimportnumpyasnpplt.figure()df=pandas.DataFrame({"a":map(str,np.arange(1001,1001+30)),"l":["A"]*15+["B"]*15,"v":np.random.rand(30)})g=sns.FacetGrid(row="l",data=df)g.map(sns.pointplot,"a","v")plt.show()seaborn绘制

python - 将 snmp 八位字节字符串转换为人类可读的日期格式

使用pysnmp框架,我在执行snmp遍历时获得了一些值。不幸的是oid1.3.6.1.21.69.1.5.8.1.2(DOCS-CABLE-DEVICE-MIB)我得到一个奇怪的结果,我无法在此处正确打印,因为它包含像BELACK这样的ascii字符在做repr时我得到:OctetString('\x07\xd8\t\x17\x03\x184\x00')但是输出应该是这样的:2008-9-23,3:24:52.0格式称为“DateAndTime”。如何将OctetString输出转换为“人类可读”的日期/时间? 最佳答案 您可以找

Python人类可读的日期差异

我给出了这样的日期字符串:MonJun2810:51:072010FriJun1810:18:432010WedDec1509:18:432010计算天数差异的方便的python方法是什么?假设时区相同。字符串由linux命令返回。编辑:谢谢,这么多好的答案 最佳答案 #!/usr/bin/envpythonimportdatetimedefhrdd(d1,d2):"""Human-readabledatedifference."""_d1=datetime.datetime.strptime(d1,"%a%b%d%H:%M:%S%