不同类型和战略设计的API我试图开发图像处理的一些代码。 我想设计一个不同类型的API,它可以支持不同的类型,如int,double,float,char和其他类型,不需要动态多态的帮助。 因为我发现当你处理图像处理时,动态多态性 会让你变慢下来,使用原始的类型,如int或char是最快的 的解决方案,但它是非常不方便的时候我想设计根据 这些类型不同的API。在Java
此外,我想要做这样的事情如果没有强有力的多态性的负担
public static void convert_color(
final int[] sp, final int[] dp,
final int Xres, final int Yres,
Strategy strategy)
{
\\....
}
有些算法会从策略(动态多态性) 的性能损失,我需要复制和粘贴就因为患战略是不同的。
用我目前的水平设计一个高性能和灵活的图像处理是非常困难的,你有更好的解决方案来获得性能和灵活性吗?
* “polymorohism” *无处不在,而不是*的 “多态性” *?现在很奇怪:我试图编辑另一个单词*“iteration”*的单个实例*“itertaion”*的问题。我可以理解一次错字,但连续五次连续输入错字很奇怪。它甚至离奇的是另一个问题,曾与另一个词同样的问题... – TacticalCoder
对不起,同样的错误,因为我复制和粘贴 – user1878686
性能损失从多态性是非常小的。 对于任何图像处理,您应该更担心分配,代码和数据的空间和时间局部性以及原始类型装箱。 Trove4j(即使用具有原始类型的集合)将帮助您避免对原始类型进行任何装箱。 –