Which is the better Subclass or handle logic?












1















Let's say I have an edit box, It doesn't matter being on MFC or Win32 or...



I for some reason need to make the edit just accept the Alphabetical characters which means in the range "a z".



So I can subclass the edit with new proc and everything is fine.



But sometimes I use an edit with its default proc but I use some logic to handle the input for example:



bool isValid = true;
for(auto i(0); i != strlen(myEditBuffer); i++){
if(!isalpha(myEditBuffer[i]){
isValid = false;
break;
}
}


So above as you see I get the whole thing from the edit and use logic to decide whether it is valid or not input.




  • The thing that matters me in this case: Which is the best Subclass or handle input using logic. I mean The performance, speed.










share|improve this question





























    1















    Let's say I have an edit box, It doesn't matter being on MFC or Win32 or...



    I for some reason need to make the edit just accept the Alphabetical characters which means in the range "a z".



    So I can subclass the edit with new proc and everything is fine.



    But sometimes I use an edit with its default proc but I use some logic to handle the input for example:



    bool isValid = true;
    for(auto i(0); i != strlen(myEditBuffer); i++){
    if(!isalpha(myEditBuffer[i]){
    isValid = false;
    break;
    }
    }


    So above as you see I get the whole thing from the edit and use logic to decide whether it is valid or not input.




    • The thing that matters me in this case: Which is the best Subclass or handle input using logic. I mean The performance, speed.










    share|improve this question



























      1












      1








      1








      Let's say I have an edit box, It doesn't matter being on MFC or Win32 or...



      I for some reason need to make the edit just accept the Alphabetical characters which means in the range "a z".



      So I can subclass the edit with new proc and everything is fine.



      But sometimes I use an edit with its default proc but I use some logic to handle the input for example:



      bool isValid = true;
      for(auto i(0); i != strlen(myEditBuffer); i++){
      if(!isalpha(myEditBuffer[i]){
      isValid = false;
      break;
      }
      }


      So above as you see I get the whole thing from the edit and use logic to decide whether it is valid or not input.




      • The thing that matters me in this case: Which is the best Subclass or handle input using logic. I mean The performance, speed.










      share|improve this question
















      Let's say I have an edit box, It doesn't matter being on MFC or Win32 or...



      I for some reason need to make the edit just accept the Alphabetical characters which means in the range "a z".



      So I can subclass the edit with new proc and everything is fine.



      But sometimes I use an edit with its default proc but I use some logic to handle the input for example:



      bool isValid = true;
      for(auto i(0); i != strlen(myEditBuffer); i++){
      if(!isalpha(myEditBuffer[i]){
      isValid = false;
      break;
      }
      }


      So above as you see I get the whole thing from the edit and use logic to decide whether it is valid or not input.




      • The thing that matters me in this case: Which is the best Subclass or handle input using logic. I mean The performance, speed.







      c++ oop logic subclass






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 13 '18 at 13:52









      gsamaras

      51.1k23100186




      51.1k23100186










      asked Nov 13 '18 at 13:26









      MaestroMaestro

      7910




      7910
























          1 Answer
          1






          active

          oldest

          votes


















          1















          I mean The performance, speed.




          At that point, you really might have been a victim of premature optimization. Unless you pinpoint the bottleneck of your application to be that for loop in your logic for example, then you are looking for efficiency gains in the wrong place.



          It's all about readability and maintenance.



          You should think about which approach would be better for the reader of your code (it could be you in the future!). Having a code with high readability really makes maintenance easier too, since the next person will easier understand what is going on.




          Which is the better Subclass or handle logic?




          Your choice. Think what better suits your application and go for it.



          For example, if the application uses a variety of editors (one for alphanumerical input, one for numerical input, one for accepting only letters, one for accepting only special characters, and so on), then it would make sense to have a class Editor and several subclasses alphanumericalEditor, numericEditor, and so on, where every subclass would inherit from Editor.






          share|improve this answer

























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53282062%2fwhich-is-the-better-subclass-or-handle-logic%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            1















            I mean The performance, speed.




            At that point, you really might have been a victim of premature optimization. Unless you pinpoint the bottleneck of your application to be that for loop in your logic for example, then you are looking for efficiency gains in the wrong place.



            It's all about readability and maintenance.



            You should think about which approach would be better for the reader of your code (it could be you in the future!). Having a code with high readability really makes maintenance easier too, since the next person will easier understand what is going on.




            Which is the better Subclass or handle logic?




            Your choice. Think what better suits your application and go for it.



            For example, if the application uses a variety of editors (one for alphanumerical input, one for numerical input, one for accepting only letters, one for accepting only special characters, and so on), then it would make sense to have a class Editor and several subclasses alphanumericalEditor, numericEditor, and so on, where every subclass would inherit from Editor.






            share|improve this answer






























              1















              I mean The performance, speed.




              At that point, you really might have been a victim of premature optimization. Unless you pinpoint the bottleneck of your application to be that for loop in your logic for example, then you are looking for efficiency gains in the wrong place.



              It's all about readability and maintenance.



              You should think about which approach would be better for the reader of your code (it could be you in the future!). Having a code with high readability really makes maintenance easier too, since the next person will easier understand what is going on.




              Which is the better Subclass or handle logic?




              Your choice. Think what better suits your application and go for it.



              For example, if the application uses a variety of editors (one for alphanumerical input, one for numerical input, one for accepting only letters, one for accepting only special characters, and so on), then it would make sense to have a class Editor and several subclasses alphanumericalEditor, numericEditor, and so on, where every subclass would inherit from Editor.






              share|improve this answer




























                1












                1








                1








                I mean The performance, speed.




                At that point, you really might have been a victim of premature optimization. Unless you pinpoint the bottleneck of your application to be that for loop in your logic for example, then you are looking for efficiency gains in the wrong place.



                It's all about readability and maintenance.



                You should think about which approach would be better for the reader of your code (it could be you in the future!). Having a code with high readability really makes maintenance easier too, since the next person will easier understand what is going on.




                Which is the better Subclass or handle logic?




                Your choice. Think what better suits your application and go for it.



                For example, if the application uses a variety of editors (one for alphanumerical input, one for numerical input, one for accepting only letters, one for accepting only special characters, and so on), then it would make sense to have a class Editor and several subclasses alphanumericalEditor, numericEditor, and so on, where every subclass would inherit from Editor.






                share|improve this answer
















                I mean The performance, speed.




                At that point, you really might have been a victim of premature optimization. Unless you pinpoint the bottleneck of your application to be that for loop in your logic for example, then you are looking for efficiency gains in the wrong place.



                It's all about readability and maintenance.



                You should think about which approach would be better for the reader of your code (it could be you in the future!). Having a code with high readability really makes maintenance easier too, since the next person will easier understand what is going on.




                Which is the better Subclass or handle logic?




                Your choice. Think what better suits your application and go for it.



                For example, if the application uses a variety of editors (one for alphanumerical input, one for numerical input, one for accepting only letters, one for accepting only special characters, and so on), then it would make sense to have a class Editor and several subclasses alphanumericalEditor, numericEditor, and so on, where every subclass would inherit from Editor.







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Nov 13 '18 at 13:49

























                answered Nov 13 '18 at 13:37









                gsamarasgsamaras

                51.1k23100186




                51.1k23100186






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53282062%2fwhich-is-the-better-subclass-or-handle-logic%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Florida Star v. B. J. F.

                    Error while running script in elastic search , gateway timeout

                    Adding quotations to stringified JSON object values