4 ms·
- If you remove the boilerplate, you can likely get the Objective-C version down to about 40 lines.[1] - Can Lua/Wax not use IB? The Objective-C version uses I
by Zev 16y ago
- If you remove the boilerplate, you can likely get the Objective-C version down to about 40 lines.[1]
- Can Lua/Wax not use IB? The Objective-C version uses IB to lay the views out, while the Lua version seems to lay it out manually? It does for the main UIWindow, at least.
- The Objective-C and Lua code don't behave the same way. This isn't a 1:1 comparison.
1. Less, if you turn your AppDelegate into a UIApplication subclass (so it is a singleton, and you can not worry about dealloc in there because the app will be gone by the time dealloc is reached).
- richcollins 16y agoBoth projects use the same .xib created in Interface Builder, per the tutorial.
- Zev 16y agoIn that case, it is very weird that one sample (Lua) specifies the bounds of the UIWindow while the other is closer to the default setup and does not specify the bounds (Objective-C).
- chc 16y agoI was going to disagree with you about the boilerplate until I actually looked at the article, and you're right, it's just silly that the the Objective-C version gets about 10 additional methods that serve no real purpose.
- st3fan 16y agoThe author must not be very experienced with iOS development because you can simply ignore all those extra empty methods if you do not wish to implement them. It is really not fair to compare a verbose standard project template from Xcode with a a condensed Lua version.
- Stormbringer 16y agoIt is only 'not fair' if the number of lines of code is important. Only the most naive programmers think that LOC actually means anything. If you were really keen, you might consider which of the lines were authored by the programmer, and which were inserted by the tool 'auto-magically'. In that case, Objective-C may actually come out ahead in this example! Of course, I don't know how much of the Lua code was boilerplate supplied by the toolchain, all that stuff about twiddling the bounds and the frame might be boilerplate. In _that_ case, the actual amount of code written by both would be almost exactly the same. And then we get onto secondary claims, e.g. benefits of garbage collection. (See the pretty graph) Lastly we could compare them on 'prettiness' of code. Objective-C is quite ugly, but 'underscorising' the function names doesn't improve it much if at all. ----- So overall everything is equal apart from the garbage collection/memory usage thing which tips the scales in Lua's favour. Now, on iOS the speed can be a big issue, so knowing if there is a performance penalty that comes with that is a big deal, which I don't see covered in the article.
- scott_s 16y agoThen I must be a naive programmer. If I can accomplish something in 1 line of code that takes me 100 lines of code in another language, that matters. It also probably indicates that the more succinct language has a higher level of abstraction.
- loup-vaillant 16y ago> Only the most naive programmers think that LOC actually means anything. Call me naive, then. Source code, even automatically generated, will be read, and may be modified. It does count. XCode template (unlike Yacc output) is source code. > And then we get onto secondary claims, e.g. benefits of garbage collection. (See the pretty graph) If I got it right, the little graph is about some aspects of runtime performance, which is secondary. But you sound like you don't acknowledge the primary claim of garbage collection: that it simplifies programs.
- rbarooah 16y ago
- deleted 16y ago[deleted]
- deleted 16y ago[deleted]