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. Curse the .NET designers

Curse the .NET designers

Scheduled Pinned Locked Moved The Lounge
csharpc++
45 Posts 21 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.
  • F fletchsod

    > I prefer the older method as the site is precompiled and source is not required at the site. I prefer the latter. It's a lot faster in updating a website. Nobody want to change the code, recompile the website and wait for the web browser to appear then login to get to the webpage you're trying to work on. Most of the time, I can update the code on the fly and just refresh the web browser instead of going through the whole process. Beside the IIS web server won't make this App_Code visible to the web browser. This come in handy when the website get bigger and bigger.

    R Offline
    R Offline
    Rocky Moore
    wrote on last edited by
    #30

    Well, that would apply if you develop directly to your production server. I develop everything usually locally and the pump it to the production server. This also keeps most of your source off the production server where it might get exposed if the server gets hacked and in shared hosting, it means your actual code is not available to admins.

    Rocky <>< Blog Post: Handy utility app that is always on my machines! Tech Blog Post: Microsoft Live Writer Plug-ins!

    1 Reply Last reply
    0
    • J Joe Woodbury

      bwilhite wrote:

      Well, if hedge funds and banks are looking to employ C# developers (and yes, they are),

      Many of these are providing web services and for web services, .NET is fantastic. For basic database front ends, .NET is fantastic. For complex client applications, it's not so great.

      Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

      B Offline
      B Offline
      bwilhite
      wrote on last edited by
      #31

      I emphatically disagree (and from experience). But I won't try to talk you into my POV. I will say this...there have been a few times when I did wish C# had 'friend.' Sometimes that keyword would've helped me to solve the problem exactly how I wanted.

      1 Reply Last reply
      0
      • C Christopher Duncan

        Do you have a notion as to how much hassle it is to move an existing project to the older method? I, too, prefer the precompiled approach. I know you can still precompile with 2.0, but it changes the assembly name each time, and if you want to use fixed names it spits out a different dll for each page. Yuck.

        Christopher Duncan Author of The Career Programmer and Unite the Tribes Coming soon: Got a career question? Ask the Attack Chihuahua! www.PracticalUSA.com

        R Offline
        R Offline
        Rocky Moore
        wrote on last edited by
        #32

        Yeah, screwy new dll naming has been a pain. I think they figured most people would just post the entire code to the server and be done with it. There was a HUGE outcry to give us the old style back. I know it took me quite some time to get used to the new style, but now that the old style is a first class citizen once again, I will be making more use of it along with ASP.NET MVC (in the near future when they get it a bit more settled). For those interested in the conversion to web apps (2005) http://webproject.scottgu.com/CSharp/Migration2/Migration2.aspx[^]

        Rocky <>< Blog Post: Handy utility app that is always on my machines! Tech Blog Post: Microsoft Live Writer Plug-ins!

        C 1 Reply Last reply
        0
        • R Rocky Moore

          Yeah, screwy new dll naming has been a pain. I think they figured most people would just post the entire code to the server and be done with it. There was a HUGE outcry to give us the old style back. I know it took me quite some time to get used to the new style, but now that the old style is a first class citizen once again, I will be making more use of it along with ASP.NET MVC (in the near future when they get it a bit more settled). For those interested in the conversion to web apps (2005) http://webproject.scottgu.com/CSharp/Migration2/Migration2.aspx[^]

          Rocky <>< Blog Post: Handy utility app that is always on my machines! Tech Blog Post: Microsoft Live Writer Plug-ins!

          C Offline
          C Offline
          Christopher Duncan
          wrote on last edited by
          #33

          I gotta say, this is one of the most poorly thought out development platforms I've ever seen. Well, besides using a word processor (aka web browser) as an application environment, of course.

          Christopher Duncan Author of The Career Programmer and Unite the Tribes Coming soon: Got a career question? Ask the Attack Chihuahua! www.PracticalUSA.com

          1 Reply Last reply
          0
          • J Joe Woodbury

            I need to take a moment to publicly curse the .NET designers for not implementing the "friend" keyword in C# as it is in C++. For the third time in a week, the lack of this has prevented me from making what would be an elegant implementation of some classes.

            Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

            S Offline
            S Offline
            Syed Muhammad Fahad
            wrote on last edited by
            #34

            Actually I was eagerly waiting to see "friend" keyword being introduced once they introduced Generics... But they didn't :((

            Syed Muhammad Fahad Application Development Tyler Technologies -- TEMS Division mfahad@mazikusa.com

            1 Reply Last reply
            0
            • R Rocky Moore

              About the only thing I miss from c/c++ was the mutliple base classes. That was handy at times.

              Rocky <>< Blog Post: Handy utility app that is always on my machines! Tech Blog Post: Microsoft Live Writer Plug-ins!

              T Offline
              T Offline
              Tim Yen
              wrote on last edited by
              #35

              Not me. Multiple inheritance was just a painful way of doing things, actually inheritance in general is a painful way of locking in things. Thats why I've read a number of recommendations to program with interfaces instead of inheritance and I agree. Its just easier to modify when you need to change it

              R 1 Reply Last reply
              0
              • J Joe Woodbury

                I need to take a moment to publicly curse the .NET designers for not implementing the "friend" keyword in C# as it is in C++. For the third time in a week, the lack of this has prevented me from making what would be an elegant implementation of some classes.

                Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                K Offline
                K Offline
                Kevin McFarlane
                wrote on last edited by
                #36

                Joe Woodbury wrote:

                not implementing the "friend" keyword in C# as it is in C++

                Even better would have been Eiffel-style "selective export" - more fine-grained than C++ friend. I've not seen this copied in any of the mainstream languages, e.g., see An Improvement on the Access Control Features of C#[^]

                Kevin

                J 1 Reply Last reply
                0
                • J Joe Woodbury

                  I need to take a moment to publicly curse the .NET designers for not implementing the "friend" keyword in C# as it is in C++. For the third time in a week, the lack of this has prevented me from making what would be an elegant implementation of some classes.

                  Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                  C Offline
                  C Offline
                  Chris_Green
                  wrote on last edited by
                  #37

                  And what about not supporting abstract base classes for forms or controls? Just try to bring up your form in the designer and see it puke all over the screen. Way to encourage good OO design there fellas.

                  1 Reply Last reply
                  0
                  • J Joe Woodbury

                    I need to take a moment to publicly curse the .NET designers for not implementing the "friend" keyword in C# as it is in C++. For the third time in a week, the lack of this has prevented me from making what would be an elegant implementation of some classes.

                    Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                    G Offline
                    G Offline
                    GreenShoes
                    wrote on last edited by
                    #38

                    Just out of interest, how does this compare to the VB.NET 'Friend' scope? (apart from being a different language). Surely it can be done in C# then if it all compiles down to the same?:confused:

                    J 1 Reply Last reply
                    0
                    • K Kevin McFarlane

                      Joe Woodbury wrote:

                      not implementing the "friend" keyword in C# as it is in C++

                      Even better would have been Eiffel-style "selective export" - more fine-grained than C++ friend. I've not seen this copied in any of the mainstream languages, e.g., see An Improvement on the Access Control Features of C#[^]

                      Kevin

                      J Offline
                      J Offline
                      Joe Woodbury
                      wrote on last edited by
                      #39

                      I like the solution the authors came up with.

                      Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                      K 1 Reply Last reply
                      0
                      • G GreenShoes

                        Just out of interest, how does this compare to the VB.NET 'Friend' scope? (apart from being a different language). Surely it can be done in C# then if it all compiles down to the same?:confused:

                        J Offline
                        J Offline
                        Joe Woodbury
                        wrote on last edited by
                        #40

                        It's the same thing as internal; it allows visibility to everything within the assembly, but only in that assembly.

                        Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                        G 1 Reply Last reply
                        0
                        • J Joe Woodbury

                          I like the solution the authors came up with.

                          Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                          K Offline
                          K Offline
                          Kevin McFarlane
                          wrote on last edited by
                          #41

                          I think I stumbled on something similar a while back while investigating a different problem but I can't remember how I did it! :(

                          Kevin

                          1 Reply Last reply
                          0
                          • T Tim Yen

                            Not me. Multiple inheritance was just a painful way of doing things, actually inheritance in general is a painful way of locking in things. Thats why I've read a number of recommendations to program with interfaces instead of inheritance and I agree. Its just easier to modify when you need to change it

                            R Offline
                            R Offline
                            Rocky Moore
                            wrote on last edited by
                            #42

                            Tim Yen wrote:

                            Thats why I've read a number of recommendations to program with interfaces instead of inheritance and I agree. Its just easier to modify when you need to change it

                            How is that? You are still locked in with an Inteface. Multiple Inheritance is the same as interfaces except you do not have to "implement" them every time as with Interfaces.

                            Rocky <>< Blog Post: Handy utility app that is always on my machines! Tech Blog Post: Microsoft Live Writer Plug-ins!

                            T 1 Reply Last reply
                            0
                            • R Rocky Moore

                              Tim Yen wrote:

                              Thats why I've read a number of recommendations to program with interfaces instead of inheritance and I agree. Its just easier to modify when you need to change it

                              How is that? You are still locked in with an Inteface. Multiple Inheritance is the same as interfaces except you do not have to "implement" them every time as with Interfaces.

                              Rocky <>< Blog Post: Handy utility app that is always on my machines! Tech Blog Post: Microsoft Live Writer Plug-ins!

                              T Offline
                              T Offline
                              Tim Yen
                              wrote on last edited by
                              #43

                              You don't have to know what every method does of the parent class(es). You just have to implement the interface. If you don't know what the parent class(es) do then when you modify an existing class structure you may leave in (fail to override) code that will just not work. And that applies all the way up the inheritance tree too. The deeper the inheritance tree the more you have to know if your going to modify the structure. Usually I find just using a class is fine, but modifying a class hierarchy to me requires you understand it on a deeper level. Now maybe this is just an argument against inheritance in general but multiple inheritance just makes it harder and binds things together more tightly. In general I'm moving away from inheritance as it has 1. largely failed to provide code reuse on a big scale, 2. has a habit of hiding implementation details and 3. locks in structure based on assumptions/goals that change and make it hard(er) to modify. The best form of code reuse I have heard of is in components, in particular VB components and they don't use inheritance in that model as far as I know. Though internally the component may.

                              1 Reply Last reply
                              0
                              • J Joe Woodbury

                                It's the same thing as internal; it allows visibility to everything within the assembly, but only in that assembly.

                                Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                                G Offline
                                G Offline
                                GreenShoes
                                wrote on last edited by
                                #44

                                Thanks! (that makes more sense now!) :-D PS: Any good links on the C++ 'friend' keyword then?

                                1 Reply Last reply
                                0
                                • J Joe Woodbury

                                  bwilhite wrote:

                                  C# is certainly adequate for commercial applications, imo.

                                  Yeah, and that's why the market is flooded with them. The few commercial client applications I have used that are written in .NET run terrible. They remind me of those awful VB apps of old.

                                  Anyone who thinks he has a better idea of what's good for people than people do is a swine. - P.J. O'Rourke

                                  A Offline
                                  A Offline
                                  azonenberg
                                  wrote on last edited by
                                  #45

                                  I do all of my client development in C++ and write my servers in C++ or PHP. I've never had a serious performance issue with any of my apps once I finished them.

                                  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