我在撰写一个程序图像生成图书馆(Clisk ),使用户能够定义自己的数学功能来生成图像。
显然,它们有可能界定一个功能,使某些像素,例如(假体码)的分差为零。
red = 1.0 / (xposition - 0.5)
如果xposition = 0.5(图像中间),则结果会以零除以零。
最理想的情况是,我不想让图像生成崩溃... 但与此同时,我不想制造一个阴险的黑客 忽视零分的鸿沟 这会在以后造成问题
在处理这些案件时,什么是良好、有力、系统的办法?
我在撰写一个程序图像生成图书馆(Clisk ),使用户能够定义自己的数学功能来生成图像。
显然,它们有可能界定一个功能,使某些像素,例如(假体码)的分差为零。
red = 1.0 / (xposition - 0.5)
如果xposition = 0.5(图像中间),则结果会以零除以零。
最理想的情况是,我不想让图像生成崩溃... 但与此同时,我不想制造一个阴险的黑客 忽视零分的鸿沟 这会在以后造成问题
在处理这些案件时,什么是良好、有力、系统的办法?
最理想的情况是,我不想让图像生成崩溃... 但与此同时,我不想制造一个阴险的黑客 忽视零分的鸿沟 这会在以后造成问题
(我假设你的意思是 片段是一个例子 一些用户提供的代码... )
显然,如果用户提供的代码可以提出例外,那么你不能阻止这种情况发生。 (在分部之前检查的建议显然与你无关......)
您除了“ 崩溃” 还能做什么? 生成空图像吗? 忽略用户的函数? 您正在生成垃圾..., 而用户的需求并非如此 。
您当然无法触及和修补他的 / 她的 java 代码 。 (如果该片段是用某种自定义语言撰写的代码, 那么您也无法触及和纠正该代码 。 您/ 您的图书馆不知道用户提供的代码 应该 em> 正在做什么 。 )
否。我认为,best 的回答是,将用户提供的代码中出现的任何意外(未检查)例外(未检查的)例外(不包括在您自己的代码中),该代码明确告诉用户错误发生在他的代码中。然后,这取决于称之为您的图书馆代码的应用代码,该代码是处理例外还是“崩溃”。
如果你要求用户用“良好、稳健、系统的方法”来写他们的功能, 我认为你抓错树了。 这不是你真正关心的...
我不是一个图形程序程序员,但你可以
private static final double MIN_X = 0.0000001
red = 1.0 / Math.max(xpos - 0.5, MIN_X);
显然,如果你允许负数, 你可能不得不降低绝对值。
您总是可以提供参数 < em> asking < / em> 。 它毕竟是他们的代码 - 他们应该知道什么最适合他们的情况 。
接下来的问题是,该参数的合理默认值是什么? 我将说 "return 0.0" 或 扔出一个例外 都是合理的。 请确认您将其记录下来 。
Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...
Check this, List<String> list = new ArrayList<String>(); for (int i = 0; i < 10000; i++) { String value = (""+UUID.randomUUID().getLeastSignificantBits()).substring(3, ...
I am in the middle of solving a problem where I think it s best suited for a decorator and a state pattern. The high level setting is something like a sandwich maker and dispenser, where I have a set ...
I have been trying to execute a MS SQL Server stored procedure via JDBC today and have been unsuccessful thus far. The stored procedure has 1 input and 1 output parameter. With every combination I ...
I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...
If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...
I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....
I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...