I would like to give my feedback on ConnectIQ. I am not sure this forum is the best place to do this, but here are my comments:
MonkeyC:
-"For loop" may not have an increment phase (see here https://github.com/matco/badminton/blob/master/source/model/Helpers.mc#L12, please let me choose when I would like to increment variable i).
-Support shapes in layout. In my application, I draw a badminton court (see picture here) and I must have control of each corner of the court to be able to change their color. If I put this in a drawable, this is no more possible. Except, of course, if I put every corner in its own drawable.
-Is there a way to reference a resource string directly in a label (in order to avoid doing this for localization https://github.com/matco/badminton/blob/master/source/MainView.mc#L20)? Am I missing something?
-Advanced drawable position in xml layouts. I would like to be able to write this:
<label x="center - 5" y="center + 10" />
It is a pity to position labels programmatically, it ruins the concept of layout per device or language.
-Advanced string format (like the one I wrote here https://github.com/matco/badminton/blob/master/source/model/Helpers.mc#L7). When you translate the application, parameters may appear in different orders depending on the language, that is why named parameters are way better.
-Add a class List (like this one https://github.com/matco/badminton/blob/master/source/model/List.mc). We are in 2015, I don't want to play with a fixed size array.
-Add a class Assert (like this one https://github.com/matco/badminton/blob/master/source/model/Assert.mc). Because every code must be tested!
Plugin Eclipse:
-When you double click on text in a .mc file to make a selection, you get a really weird selection (try to double click anywhere on this line https://github.com/matco/badminton/blob/master/source/model/Helpers.mc#L15, it will select the whole paragraph).
-Do not parse keywords in strings (try to view this line in Eclipse https://github.com/matco/badminton/blob/master/source/test/ListTest.mc#L7).
Sample application:
When you create a new application using Eclipse plugin, some classes are automatically created. It is a bit weird to put class MainViewDelegate in Application.mc file. It would be better in MainView.mc.
During publication on an application:
-Preserve order of uploaded pictures so they appear in the same order on the store application page.
These are just my comments. I may have misunderstood some behaviors or be totally wrong. Feel free to comment the code of my application and show me my mistakes. I will be more than happy to fix or improve the code.
Anyway, I love my fenix 3, you've done a great job with this product! Thanks!
Matthieu.