برنامه نویس

متن مرتبط با «اینترفیس» در سایت برنامه نویس نوشته شده است

مشکل در پیاده سازی اینترفیس

  • سلامچرا در عکس زیر میگه که مقدار بازگشتی ایندکسر درون اینترفیس IList.this[int] رو درست انجام ندادم :ولی در کلاس ControlCollection ، خود مایکروسافت ، همین کار رو کرد؟! ,اینترفیس ...ادامه مطلب

  • حرفه ای: دلیل این تو تعریف اینترفیس در مثالی که مطرح کردم رو نمیفهمم

  • سلام دوستان. با پترن MVP تو اندروید به تازگی دارم کار میکنم. یه سورسی تو اینترنت دیدم تقریبا همشون شبیه هم بودن با این ساختار. ولی تو این مثال نوعی اینترفیس تعریف کرده که اصلا نمیفهمم قضیه چیه. درک نمیکنم. برنامه نویس این سورس چرا به این شکل اینترفیس تعریف کرده. ضمن اینکه از این اینترفیس ها به غیر از کلاس اصلی که اونها رو پیاده سازی کردن هیچ جای دیگه ای کاربردی نداشته و اصلا استفاده هم نشدن.دو تا فایل و محتویات رو در نظر بگیرید لطفن: public interface IUser {String getName();String getPasswd();int checkUserValidity(String name, String passwd);}public class UserModel implements IUser {String name;String passwd;public UserModel(String name, String passwd) {this.name = name;this.passwd = passwd;}@Overridepublic String getName() {retu name;}@Overridepublic String getPasswd() {retu passwd;}@Overridepublic int checkUserValidity(String name, String passwd){if (name==null||passwd==null||!name.equals(getName()) ||!passwd.equals(getPasswd())){retu -1;}retu 0;}} چه اجباری بوده که این اومده متدهای getName و getPasswd رو تو یه فایل دیگه و اینترفیس دیگه تعریف کرده. یا زیاده کاری کرده یا من نمیفهمم. چون به غیر از این کلاس UserModel تو هیچ جای دیگه استفاده نشده. یا مثال زیر رو دقت کنید لطفن: public interface ILoginPresenter {void clear();void doLogin(String name, String passwd);void setProgressBarVisiblity(int visiblity);void onDestroy();}public class LoginPresenterCompl implements ILoginPresenter {ILoginView iLoginView;IUser user;Handler handler;public LoginPresenterCompl(ILoginView iLoginView) {}@Overridepublic void clear() {}@Overridepublic void doLogin(String name, String passwd) {}@Overridepublic void setProgressBarVisiblity(int visiblity){}@Overridepublic void onDestroy() {}private void initUser(){}} نکته بسیار عجیبش اینجاست که این طرف اومده داخل اکتیویتی یه متدی استفاده کرده که تو کلاس اصلیش کلن هیچ کاری نمیکنه و خالی بدنش. منظورم onDestroy تو کلاس loginPresenter هستش. @Overrideprotected void onDestroy() {super.onDestroy();loginPresenter.onDestroy();} لینک این سورس رو م, ...ادامه مطلب

  • جدیدترین مطالب منتشر شده

    گزیده مطالب

    تبلیغات

    برچسب ها