4 ms·
I think it also depends on the language too. In languages with more expressive type systems, you can usually make an educated guess about something based on the
by tych0 13y ago
I think it also depends on the language too. In languages with more expressive type systems, you can usually make an educated guess about something based on the type signatures it has. For the dynamic languages, though, reading the code is an absolute must.
- tterrace 13y agoIt definitely depends on the language. The author mentions spring security so I'm assuming he's using java, where it's a massive PITA to manually hunt down and attach the sources to the 50 jars you have in lib/. Maven probably has something that will automatically do this but if your legacy project is just using ant then you're pretty much stuck.
- jradakov 13y agoJava is exactly what I'm using, and you are correct... it is a massive PITA to attach sources. Unfortunately, we're not using Maven but plan to in the future.
- tterrace 13y agoIf you're using eclipse, I found this plugin helps a bit: http://marketplace.eclipse.org/content/java-source-attacher http://marketplace.eclipse.org/content/java-source-attacher . For most popular jars you can just right click and hit "attach source".
- kaffeinecoma 13y agoIf you use Intellij + Maven this becomes magically seamless. I assume there is something similar for Eclipse as well. Really worth your time to make this work.
- kaffeinecoma 13y agoI agree, and sadly it's way harder to locate relevant bits of code in dynamic languages. (Hey Steve Yegge- can we have Grok now, please?) But even in static languages it's a must for me. I find that Javadoc becomes largely irrelevant if I can just click through to the actual source.
- camus 13y agostrictly typed languages like java are harder to write , but easier to work with (and document ) since one can know what is what , and what a method expects. It's easy to write a hash in JS but harder to understand what parameters are expected when you are using a library that passes hashes as parameters. That's why i prefer languages with type inference rather than dynamic typing. You can be explicit when you need to and lazy when you want to. (Excuse my french)