如果我经常使用一些字符串函数,应该把它们放在辅助类(helper class)还是库类(library class)中呢?
比如截取超过30个字符的字符串、返回随机字符串、将所有字符转换为小写等功能。这些都是我可能不需要创建对象就可以使用的函数,最好把它们作为静态方法(static methods)。
我应该把它们放在库类还是辅助类中?
如何判断应该放在哪里呢?
如果我经常使用一些字符串函数,应该把它们放在辅助类(helper class)还是库类(library class)中呢?
比如截取超过30个字符的字符串、返回随机字符串、将所有字符转换为小写等功能。这些都是我可能不需要创建对象就可以使用的函数,最好把它们作为静态方法(static methods)。
我应该把它们放在库类还是辅助类中?
如何判断应该放在哪里呢?
Helpers是帮助已经存在的类,例如可以有以下helper:
array
string
url
等等
库(Library)是任何解决方案,它可以由您首次创建,并且没有其他人创建过。
因为你正在处理一个字符串(已经存在的东西),你应该将它放入一个helper类中,或者修改框架的字符串helper类(如果有的话)。但是,这只是一种约定或标准,如果您创建了一些非常棒的用于处理字符串的函数,也可以为其创建库。
我假设您正在使用CodeIgniter。
既然您已经写明不需要实例化对象并将在其静态方法中使用它,那么将其制作成助手比制作成库更有意义。
在CI中,助手也是受管理的,一旦加载,第二次尝试加载将被省略。您可以打开CI的内置助手以了解其功能,然后将其与库进行比较。通过了解目的,您可以自行决定使用助手还是库。
Helper是用户定义或预定义函数的集合,无需实例化,而库是需要实例化才能使用的类。库可能也包含用户定义和预定义的函数/方法。在库(类)中定义的函数称为方法!