我一直是DRY原则的倡导者:换句话说,只编写一次代码。我有一个功能,基本上通过“最新的独特报告”过滤掉数据。在我的算法中,该函数假定传入的数据已经排序,使其非常有效。但是,此功能可能必须处理未排序的数据。更好的做法是:有一个通用的解决方案会更慢,或者有两个稍微不同的功能,一个更有效率?
编辑:我应该注意,虽然性能是一件好事,但它对于应用程序并不重要,因为它是一个内部工具。
答案 0 :(得分:3)
你说它的方式听起来好像你可以创建一个对数据进行排序的函数,然后将其放入过滤函数中。
所以
function filterData(object data)
{
...
}
function sortAndFilterData(object data)
{
// Do sorting
...
// Filtering
filterData(data);
}