网站建设需要的硬件,网站建设知名公司排名,网站建设目标初步目标,国内网站放国外服务器在程序中用得最多的还是方法#xff0c;在处理业务的系统中如何设计方法是一个很重要的问题。很多系统由于缺乏统一的约定而导致维护困难。本文主要介绍的是偶在平常的开发中总结出来的一些方法设计的思路。希望大家不嫌弃。 1. 简单的方法 void DoSth(args) { // …在程序中用得最多的还是方法在处理业务的系统中如何设计方法是一个很重要的问题。很多系统由于缺乏统一的约定而导致维护困难。本文主要介绍的是偶在平常的开发中总结出来的一些方法设计的思路。希望大家不嫌弃。 1. 简单的方法 void DoSth(args) { // do some thing here // throw some error here if the method was not run correctly } 方法没有返回值也没有特别的错误标示一般用在一些不易出错的 所以如果方法有可能执行不成功的时候则可以在方法里面抛出异常在调用的地方用catch捕捉。或者根本不捕捉方法里面可能产生的异常从而让异常跟着堆栈往上层爬一直到合适的位置才进行捕捉。这种情况通常用于对方法中的异常没有十足的把握处理、不想在本方法中处理异常、有意向上层屏蔽底层异常的情况。很多设计这主张“底层抛出异常上层处理异常”的设计原则在这种设计原则的指导下用的最多的方法设计就是这种。 以下的几种方法都要求尽量捕捉方法中可能存在的Exception。 2. 返回字符串/数字 string/int DoSth(args){ // do some thing here // return some message if the method was not run correctly } 执行某个方法然后把结果用字符串/数字的形式返回比如返回“OK”/1表示执行成功返回“不能预料的错误”/-1等信息表示没有正确执行 3. 返回布尔值 bool DoSth(args){ // do some thing here // return true or false to tell the caller if the method was run correctly } 执行某个方法然后把结果用bool值的形式返回true表示执行成功false表示执行失败。一般用在只关心结果不在乎为什么是那个结果或者导致结果的原因已经很明确的时候。 4. 返回布尔值和错误信息 bool DoSth(args, out string message){ // do some thing here // return true or false to tell the caller if the method was run correctly // set the error message to “message” if exception or error occurred. } 执行某个方法然后把结果用bool值的形式返回如果出错将错误信息设置到一个out 的参数中。这种方法适合于那些比较复杂可能出现多种意外的方法执行中出现的意外可以通过message来查看而结果可以通过返回值来查看。调用方可以只在乎结果也可以在乎原因。 5. 两个方法合作或者一个方法和一个属性合作的方法 string errorMessage; bool DoSth1(args){ // do some thing here // return true or false to tell the caller if the method was run correctly // set the error message to “errorMessage” if exception or error occurred. } bool DoSth2(args) { // do some thing here // return true or false to tell the caller if the method was run correctly // set the error message to “errorMessage” if exception or error occurred. } string GetLastError(){ return errorMessage;} 方法本身只返回结果但是当结果为false的时候可以通过GetLastError来获取最后一个错误信息。这种设计适合于类里面存在很多可能出错的方法的情况比如上面的DoSth1DoSth2这样就不必要为每个方法添加out参数在实际中用得比较多。另外当程序中存在循环而又不想因为循环的某一次发生错误而终止程序的时候也可以采取这种办法。 事实上每一种方法都有其用武之地 问题的关键在于我们使用一种约定最好的办法就是在同一个系统里面尽量只使用其中的一种以避免维护和后续开发上的麻烦。转载于:https://www.cnblogs.com/QuitGame/archive/2005/06/30/183732.html