Posted by jpluimers on 2015/07/22
See the gist below:
Example of xsd2code only handling xsd annotations for attributes, not for elements, types and other places where they can be used in an XSD.
Steps to reproduce:
- Install xsd2code and Visual Studio.
- Put all these files in one directory.
- Run `generate-C#-from-XSD-annotations.bat`.
- Diff `annotations.xsd.exe.cs` and `annotations.xsd2code.exe.cs`.
- Observe only 1 spot in `annotations.xsd2code.exe.cs` has the annotations converted to C# comments.
Gist: Example of xsd2code only handling xsd annotations for attributes, not for elements, types and other places where they can be used in an XSD. Steps to reproduce.
Report: xsd2Code community edition .net class generator from XSD schema – View Issue #17483: annotations are only emitted to C# when they are for XSD attributes, not for elements, types etc..
Posted in .NET, .NET 2.0, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, C#, C# 2.0, C# 3.0, C# 4.0, C# 5.0, C# 6 (Roslyn), Development, Software Development, XML, XML/XSD, XSD | Leave a Comment »
Posted by jpluimers on 2015/07/16
During a recent code review, I bumped into a couple of C# constructors having boolean parameters, leading to the dreaded magic booleans code smell.
This reminded me of the infamous Avoiding Booleans post on Coding Horror, which now is almost 10 years old.
To celebrate, I will coin the Dutch phrase when marking these in a review:
Boolean parameters en literals zijn vrijwel altijd een zwaktebod. Een teken dat beter nagedacht moet worden over het doel van de code.
The Dutch word zwaktebod is used when bidding Bridge using the Acol system. It is the equivalent of a “weak takeout” response to a bid of 1 NT (notrump or no trump, in other languages sometimes sans atout).
The English translation is just about this:
Boolean parameters and literals virtually always are a sign of weakness. It indicates you need to give more thought to the goal of the code.
Posted in .NET, .NET 1.x, .NET 2.0, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, C#, C# 1.0, C# 2.0, C# 3.0, C# 4.0, C# 5.0, C# 6 (Roslyn), Development, Software Development | Leave a Comment »
Posted by jpluimers on 2015/07/15
Thanks Jørn Einar Angeltveit for sharing this a while ago:
A session by Jon Skeet and Tony the Pony (which has strong teeth) presented during the Polish DevDay 2013 in Kraków, Poland.
+Jon Skeet’s speech “Back to basics” is really a good watch.
In a funny way, he explains why the simplest fundamentals of computer software text, dates and numbers can cause some real headace for the programmer…
In case you didn’t know: Jon Skeet is “Chuck Norris” on stackoverflow.com:
The subtitle is “the mess we’ve made of our fundamental data types”.
Some of the topics covered:
- numbers and storage formats
- strings and encodings
- dates, times and time zones
- scope things narrowly (YAGNI) in a conscious way, and understand beyond what you implement
He for instance shows that the fundamentals are both very much unknown by many among us, and less universal than we think.
via +Jon Skeet’s speech “Back to basics” is really a good watch. In a funny way,….
Read the rest of this entry »
Posted in .NET, C#, Delphi, Development, Encoding, i18n internatiolanization and L10 Localization, Java, Java Platform, Pascal, Scripting, Software Development, Unicode | 2 Comments »
Posted by jpluimers on 2015/06/30
A long while ago, someone (it was too long ago, so I sincerely forgot who, it probably was in the JBuilder era) told me that I should try out Ruby and Scala.
I did take a short look at Ruby back then, but since Ruby was so focussed on Web Development, and my heart really wasn’t there, postponed it to the times that the Web would be hot for me.
Then I should have taken a look at Scala (which compiles to Java bytecode), but since I abandoned Java (JBuilder wasn’t nice, Java programming was slow and modern IDEs like IntelliJ IDEA and Eclipse weren’t there yet).
Now that I’ve done truckloads of work in the .NET and Delphi world (including domain specific languages and Pascal based products), I bumped into these Scala videos by Venkat Subramaniam:
Boy, I should have taken a look earlier: like Delphi and C# it is a statically typed compiled language, but it is on steroids.
Yes, I know it leans on the Java bytecode as a run-time platform, but so does the Android SDK as one of the Java Platforms. Contrary Ruby, which with IronRuby runs on .NET and RubyMotion runs Mac and iOS, Scala does not run on the .NET platform any more.
Given the witty way of presenting I’m surely going to follow Venkat Subramaniam and watch some of his other videos too.
Shortly after watching the above I bumped into this video by Steve Yegge (Google): Dynamic Languages Strike Back – YouTube.
Posted in .NET, C#, Delphi, Development, Java, Java Platform, Ruby, Scala, Software Development | 3 Comments »