Hmmmm.... I still know a good number of Java programmers who don't use IDEs. I see ad hoc code review and browsing via e-mail or web pages with insufficient knowledge of the code to do such highlighting.
While I use an IDE, I've always been reluctant to assume that somehow the usage patterns around me will change in response to syntax necessitating them. I've also kind of assumed that the language could be developed in such a way that it was sufficiently obvious that you didn't need an IDE to get the gist of code snippets. -- Jess Holle Reinier Zwitserloot wrote: > Not convinced myself that this is an acceptable alternative, but: > > What if we just bite the bullet and say that use of an IDE (or at > least a /very/ smart syntax highlighter) is so commonplace that they > may be assumed? Then the editor could render properties in italics, or > something. Problem solved? > > It's better than m_*, you have to give me that :P > > On Feb 7, 3:48 pm, Jess Holle <[email protected]> wrote: > >> Jess Holle wrote: >> >>> joncfoo wrote: >>> >>>> What's wrong with syntactic sugar and how is it holding it back? The >>>> properties that C# sports are simple, concise, and easy on the eyes. >>>> Why isn't the Java language picking up at least these basic features? >>>> >>> What clearly shows in the Tutorial below is that C# inherits >>> Microsoft's horrible m_* naming convention from C++. >>> >>> What is also 100% clear is that such naming conventioned are >>> absolutely necessary for clarity due to the way C# does its >>> properties! The fact that C# uses "object.PropertyName" for access >>> necessitates that either (1) you use a goofy m_* convention for fields >>> or (2) you use the capitalized form for the property (Name) and the >>> uncapitalized form for the field (name). (2) by itself is actually >>> way too subtle in practice -- thus necessitating the goofy m_* convention. >>> >> To be clear, though I don't like the m_* convention, etc, there's a >> bigger issue here for Java: >> >> The convention all Java programmers have been trained with (and that >> is in all books and training materials and IDEs) is simple >> lower-case (leading lowercase and camel case thereafter) names for >> /both /fields and properties (yes, Java *does* have properties; >> JavaBeans may need improvement, but they're there). >> >> Thus mixing Java's longstanding naming conventions with use of the "." >> operator for property access is a recipe for confusion. >> >> >>> Instead if Java does properties I hope it can just use "->" instead of >>> "." -- making it 100% clear that this is a property rather than field >>> access and leaving no such ambiguities. >>> >>> As for C#'s syntax for declaring properties -- I don't see any big >>> step forward here except in the case of auto-implemented properties. >>> Sure there's slightly less typing and you don't repeat yourself on >>> getName() and setName(), but there's no big win in other cases. >>> >>> Of course the auto-implemented property example raises other issues in >>> that once you need to move away from an auto-implemented property to >>> one backed by a field you have to introduce the field and examine all >>> usages of the property within your class that really should have been >>> using the field. At this point once again you're back to m_* >>> conventions if you want any sort of clarity in the code. >>> >>> Overall, I certainly wouldn't say Java should just copy C#'s >>> properties! This is not rubber-stampable. >>> >>> -- >>> Jess Holle >>> >>>> On Feb 6, 1:16 pm, Reinier Zwitserloot <[email protected]> wrote: >>>> >>>>> "It is just syntactic sugar" gets you perl. >>>>> >>>>> That's what's holding it back. >>>>> >>>>> On Feb 6, 7:24 pm, joncfoo <[email protected]> wrote: >>>>> >>>>>> Regarding properties: >>>>>> What is holding them back from implementing properties like they are >>>>>> in C# since it could be implemented as syntactic sugar. >>>>>> >>>>>> Plenty of examples >>>>>> here:http://www.csharp-station.com/Tutorials/Lesson10.aspx >>>>>> >>>>>> It would be nice to traverse large object graphs w/o having the ugly >>>>>> getters. >>>>>> >>>>>> E.g. >>>>>> >>>>>> // before >>>>>> obj1.getObject2().getObject3().getObject4().setSomeProperty(1234); >>>>>> >>>>>> // after >>>>>> obj1.object2.object3.object4.someProperty = 1234; >>>>>> >>>>>> It is just syntactic sugar... >>>>>> >>>>>> Jonathan >>>>>> >>>>>> On Feb 5, 9:47 pm, Bill Robertson <[email protected]> wrote: >>>>>> >>>>>>> On Feb 4, 11:58 am, gafter <[email protected]> wrote: >>>>>>> >>>>>>>> Although I believe the syntax is not ideal in its current form, I'm >>>>>>>> not going to spend more time on it until Sun formally decides they >>>>>>>> want to move forward with it, and that's not going to happen in JDK7. >>>>>>>> >>>>>>> I certainly understand that position, but I think its worth >>>>>>> considering syntax, even if only in a passive manner (i.e. just think >>>>>>> about it). I've been dealing with C++ recently, and man oh man* I >>>>>>> forgot what a pain that was after not having touched it in so long. >>>>>>> Generics nudged Java syntax in this direction, and the little bits and >>>>>>> bobs of closure syntax that I've seen so far (no specific proposal >>>>>>> mind you), have left me with that same feeling. I hate to try to >>>>>>> suggest answers when I don't believe I have good ones, but I also hate >>>>>>> to just complain w/o offering suggestions. So I would like to offer >>>>>>> up the suggestion of considering keywords rather than oddball >>>>>>> symbols. e.g. lambda v.s. => >>>>>>> >>>>>>> Thanks. >>>>>>> >>>>>>> *Not to be confused with, "OhmanOh Man," a lesser known super hero. >>>>>>> > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaposse?hl=en -~----------~----~----~----~------~----~------~--~---
