Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. i don't like object oriented programming

i don't like object oriented programming

Scheduled Pinned Locked Moved The Lounge
csharpc++wpfoop
94 Posts 18 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • H Offline
    H Offline
    honey the codewitch
    wrote on last edited by
    #1

    i never have. give me templates. or you may as well just give me something procedural. if i can't do generic programming i'm a sad honey bear. C# is barely adequate. And it's too object centric IMO. generics need to be able to do more. I want traits. I want the runtimes to do what i can make a C++ compiler do with templates. I probably just got the BAC up of this entire board saying that, but there it is.

    When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

    OriginalGriffO R P R L 12 Replies Last reply
    0
    • H honey the codewitch

      i never have. give me templates. or you may as well just give me something procedural. if i can't do generic programming i'm a sad honey bear. C# is barely adequate. And it's too object centric IMO. generics need to be able to do more. I want traits. I want the runtimes to do what i can make a C++ compiler do with templates. I probably just got the BAC up of this entire board saying that, but there it is.

      When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

      OriginalGriffO Offline
      OriginalGriffO Offline
      OriginalGriff
      wrote on last edited by
      #2

      Neither taste good, and C# doesn't have any of them.

      Sent from my Amstrad PC 1640 Never throw anything away, Griff Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

      "I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
      "Common sense is so rare these days, it should be classified as a super power" - Random T-shirt

      H 1 Reply Last reply
      0
      • OriginalGriffO OriginalGriff

        Neither taste good, and C# doesn't have any of them.

        Sent from my Amstrad PC 1640 Never throw anything away, Griff Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

        H Offline
        H Offline
        honey the codewitch
        wrote on last edited by
        #3

        that's a fair point. spider eggs especially. *shudder*

        When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

        1 Reply Last reply
        0
        • H honey the codewitch

          i never have. give me templates. or you may as well just give me something procedural. if i can't do generic programming i'm a sad honey bear. C# is barely adequate. And it's too object centric IMO. generics need to be able to do more. I want traits. I want the runtimes to do what i can make a C++ compiler do with templates. I probably just got the BAC up of this entire board saying that, but there it is.

          When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

          R Offline
          R Offline
          realJSOP
          wrote on last edited by
          #4

          It's not really our fault that you picked the wrong tool for the job at hand... If you wanna go native, do it. You can still write un-managed DLLs that can be used in .Net apps. I don't understand what the fuss is about.

          ".45 ACP - because shooting twice is just silly" - JSOP, 2010
          -----
          You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
          -----
          When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

          H S 2 Replies Last reply
          0
          • R realJSOP

            It's not really our fault that you picked the wrong tool for the job at hand... If you wanna go native, do it. You can still write un-managed DLLs that can be used in .Net apps. I don't understand what the fuss is about.

            ".45 ACP - because shooting twice is just silly" - JSOP, 2010
            -----
            You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
            -----
            When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

            H Offline
            H Offline
            honey the codewitch
            wrote on last edited by
            #5

            i like managed code. i just wish generics did more than they currently do. At least they added covariance with .NET 4 but it has a long way to go.

            When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

            S 1 Reply Last reply
            0
            • H honey the codewitch

              i like managed code. i just wish generics did more than they currently do. At least they added covariance with .NET 4 but it has a long way to go.

              When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

              S Offline
              S Offline
              Slacker007
              wrote on last edited by
              #6

              honey the monster, codewitch wrote:

              i just wish generics did more than they currently do

              Um, Generics can do a lot in C# currently. How exactly are generics NOT working for you in C#?

              H 1 Reply Last reply
              0
              • R realJSOP

                It's not really our fault that you picked the wrong tool for the job at hand... If you wanna go native, do it. You can still write un-managed DLLs that can be used in .Net apps. I don't understand what the fuss is about.

                ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                -----
                You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                -----
                When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                S Offline
                S Offline
                Slacker007
                wrote on last edited by
                #7

                Exactly

                1 Reply Last reply
                0
                • S Slacker007

                  honey the monster, codewitch wrote:

                  i just wish generics did more than they currently do

                  Um, Generics can do a lot in C# currently. How exactly are generics NOT working for you in C#?

                  H Offline
                  H Offline
                  honey the codewitch
                  wrote on last edited by
                  #8

                  one example I'm running into right now is template specialization. I have a finite state machine engine and it works for any transition input type and any accept symbol type. However, there are additional features that can happen - significant ones that can only exist when the transition type is char - this specialization is effectively a regular expression engine, which means it can parse from a regular expression, and provide regex matching over string inputs. The other kind of FAs it wouldn't even make sense for that. So because of this I have two separate classes - one generic FA class, and one called CharFA where the TInput=char basically. It means more code to maintain because a lot of it is duplicated. To unduplicate a lot of which i could, I'd have to add another codefile with an interface, and another with static methods to share common functionality, which again, increases the code size. So it's not even that I can't do it with C#, it's that what is elegantly handled in C++ is clunky in C# to do the same thing, and requires more code.

                  When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                  S F O 3 Replies Last reply
                  0
                  • H honey the codewitch

                    one example I'm running into right now is template specialization. I have a finite state machine engine and it works for any transition input type and any accept symbol type. However, there are additional features that can happen - significant ones that can only exist when the transition type is char - this specialization is effectively a regular expression engine, which means it can parse from a regular expression, and provide regex matching over string inputs. The other kind of FAs it wouldn't even make sense for that. So because of this I have two separate classes - one generic FA class, and one called CharFA where the TInput=char basically. It means more code to maintain because a lot of it is duplicated. To unduplicate a lot of which i could, I'd have to add another codefile with an interface, and another with static methods to share common functionality, which again, increases the code size. So it's not even that I can't do it with C#, it's that what is elegantly handled in C++ is clunky in C# to do the same thing, and requires more code.

                    When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                    S Offline
                    S Offline
                    Slacker007
                    wrote on last edited by
                    #9

                    Create an interface class called IFa (name it something esle for sure, but this is for ilustration purposes) and implement IFa in a new class CharFA using that interface. or Create an iterface called IFa and a default implementation for IFa and then create another class that implements the default implementation and then just override any methods, etc. It is object oriented programming, which you hate, but that is how this stuff is usually done, more or less, in C#. Would that work for you? Just a suggestion, I am not really trying to solve any problems here. I think your dislike of C# and generics, and object oriented programming may prevent you from seeing how things are done in this language, etc. Good luck.

                    H 1 Reply Last reply
                    0
                    • S Slacker007

                      Create an interface class called IFa (name it something esle for sure, but this is for ilustration purposes) and implement IFa in a new class CharFA using that interface. or Create an iterface called IFa and a default implementation for IFa and then create another class that implements the default implementation and then just override any methods, etc. It is object oriented programming, which you hate, but that is how this stuff is usually done, more or less, in C#. Would that work for you? Just a suggestion, I am not really trying to solve any problems here. I think your dislike of C# and generics, and object oriented programming may prevent you from seeing how things are done in this language, etc. Good luck.

                      H Offline
                      H Offline
                      honey the codewitch
                      wrote on last edited by
                      #10

                      which is what i mentioned in my other reply, after an edit though. it's not that I can't do it. It's that it's clunky and requires more code than the elegant specialization feature in C++ it reminds me of the limitation of lack of multiple inheritance - you can sort of emulate it, but it requires more code. like i said, i just wish generics could do more.

                      When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                      S 1 Reply Last reply
                      0
                      • H honey the codewitch

                        which is what i mentioned in my other reply, after an edit though. it's not that I can't do it. It's that it's clunky and requires more code than the elegant specialization feature in C++ it reminds me of the limitation of lack of multiple inheritance - you can sort of emulate it, but it requires more code. like i said, i just wish generics could do more.

                        When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                        S Offline
                        S Offline
                        Slacker007
                        wrote on last edited by
                        #11

                        I think the "clunky" is relative here, as I don't think it is clunky because I have limited exposure to other techniques.

                        H 1 Reply Last reply
                        0
                        • S Slacker007

                          I think the "clunky" is relative here, as I don't think it is clunky because I have limited exposure to other techniques.

                          H Offline
                          H Offline
                          honey the codewitch
                          wrote on last edited by
                          #12

                          that's definitely fair. and I come at C# from a C++ background. I like C#, don't get me wrong, and it's miles ahead of Java in terms of how it's put together, IMO, but I still miss aspects of C++ development with it, even as it has supplanted C++ as my primary development language and environment.

                          When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                          F 1 Reply Last reply
                          0
                          • H honey the codewitch

                            i never have. give me templates. or you may as well just give me something procedural. if i can't do generic programming i'm a sad honey bear. C# is barely adequate. And it's too object centric IMO. generics need to be able to do more. I want traits. I want the runtimes to do what i can make a C++ compiler do with templates. I probably just got the BAC up of this entire board saying that, but there it is.

                            When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                            P Offline
                            P Offline
                            PIEBALDconsult
                            wrote on last edited by
                            #13

                            There there. I agree that a multi-paradigm language is a better idea than one which insists on objects. One needs to use the right tool for the right job and OOP is not the right tool for a great many jobs.

                            H 1 Reply Last reply
                            0
                            • P PIEBALDconsult

                              There there. I agree that a multi-paradigm language is a better idea than one which insists on objects. One needs to use the right tool for the right job and OOP is not the right tool for a great many jobs.

                              H Offline
                              H Offline
                              honey the codewitch
                              wrote on last edited by
                              #14

                              it's one of the areas where C++ really shines and I kind of wish other, higher level imperative languages would catch up. though i'd also like to see C++ have more functional-programming constructs in the future.

                              When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                              P 1 Reply Last reply
                              0
                              • H honey the codewitch

                                that's definitely fair. and I come at C# from a C++ background. I like C#, don't get me wrong, and it's miles ahead of Java in terms of how it's put together, IMO, but I still miss aspects of C++ development with it, even as it has supplanted C++ as my primary development language and environment.

                                When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                                F Offline
                                F Offline
                                Forogar
                                wrote on last edited by
                                #15

                                I miss the multiple inheritance of C++ as well. I know we can do it via Interfaces but it's not quite as straightforward. Perhaps by C#12 it will be there. :sigh:

                                - I would love to change the world, but they won’t give me the source code.

                                H 1 Reply Last reply
                                0
                                • F Forogar

                                  I miss the multiple inheritance of C++ as well. I know we can do it via Interfaces but it's not quite as straightforward. Perhaps by C#12 it will be there. :sigh:

                                  - I would love to change the world, but they won’t give me the source code.

                                  H Offline
                                  H Offline
                                  honey the codewitch
                                  wrote on last edited by
                                  #16

                                  i'm glad i'm not the only one! =)

                                  When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                                  1 Reply Last reply
                                  0
                                  • H honey the codewitch

                                    it's one of the areas where C++ really shines and I kind of wish other, higher level imperative languages would catch up. though i'd also like to see C++ have more functional-programming constructs in the future.

                                    When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                                    P Offline
                                    P Offline
                                    PIEBALDconsult
                                    wrote on last edited by
                                    #17

                                    I only ever dabbled in C++ (80s, 90s), so I never became familiar with what it can do. I went straight from C (mostly on OpenVMS) to C# (and .net) and it was like a Bob-send -- I'm glad I hadn't had to use C++ and the various libraries people talk about. A lot of the hype I heard turned me off of C++ anyway. But... I want multiple-inheritance and such. There are a number of facets of C# (.net languages) I don't like. Languages and frameworks should provide features and _allow_ developers to do what their particular task requires rather than dictating what the develop must or must not do. I may still need to look at D again.

                                    H 1 Reply Last reply
                                    0
                                    • P PIEBALDconsult

                                      I only ever dabbled in C++ (80s, 90s), so I never became familiar with what it can do. I went straight from C (mostly on OpenVMS) to C# (and .net) and it was like a Bob-send -- I'm glad I hadn't had to use C++ and the various libraries people talk about. A lot of the hype I heard turned me off of C++ anyway. But... I want multiple-inheritance and such. There are a number of facets of C# (.net languages) I don't like. Languages and frameworks should provide features and _allow_ developers to do what their particular task requires rather than dictating what the develop must or must not do. I may still need to look at D again.

                                      H Offline
                                      H Offline
                                      honey the codewitch
                                      wrote on last edited by
                                      #18

                                      Well the weird thing about C++ is by itself it's about 2/3 of a language, while the standard template libraries are (usually) the other 1/3 and it's strange to think of it that way, but that's how it ends up baking out - STL is so intrinsic to any significant C++ development that you really don't even want to do it without it, just like you wouldn't want to write an app without an operating system. It's not just about runtime libraries, although that's most of it. Because of the way templates work, you can use them to basically implement "language features" of a sort. So STL sort of folds itself into the language. And the cool thing about that is you can potentially make your own "domain specific" language superset from C++ just like STL does - the spirit framework does this, and boost kind of does. So that's something that's really hard to get used to at first because it's pretty unique to C++ after that, just learning how to use generic programming is the big learning curve, but I swear once you do, you'll fall in love.

                                      When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                                      P 1 Reply Last reply
                                      0
                                      • H honey the codewitch

                                        i never have. give me templates. or you may as well just give me something procedural. if i can't do generic programming i'm a sad honey bear. C# is barely adequate. And it's too object centric IMO. generics need to be able to do more. I want traits. I want the runtimes to do what i can make a C++ compiler do with templates. I probably just got the BAC up of this entire board saying that, but there it is.

                                        When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                                        R Offline
                                        R Offline
                                        Ron Anders
                                        wrote on last edited by
                                        #19

                                        At the risk of being even more wildly undesirable here, I'm with ya.

                                        H 1 Reply Last reply
                                        0
                                        • R Ron Anders

                                          At the risk of being even more wildly undesirable here, I'm with ya.

                                          H Offline
                                          H Offline
                                          honey the codewitch
                                          wrote on last edited by
                                          #20

                                          come sit at my table. we can totally be unpopular together :laugh:

                                          When I was growin' up, I was the smartest kid I knew. Maybe that was just because I didn't know that many kids. All I know is now I feel the opposite.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups