I really hope Microsoft understand that if we made the move to C# they have a brilliant opportunity to set the standard for how to behave.
(Meanwhile, I'm in the process of using Go for projects)
281–290 of 341 posts
I really hope Microsoft understand that if we made the move to C# they have a brilliant opportunity to set the standard for how to behave.
(Meanwhile, I'm in the process of using Go for projects)
Earlier quoted context omitted.
C# offers more support for memory friendly coding and performance than Java, which could ultimately improve Android's performance. Of course, this would only work if they switch languages, which I don't see the Android team doing willingly without upper management "help".
Do you have any metrics to prove your baseless assumptions?
1 - define a class in Java and a struct in C# then measure how many bytes it takes.
2 - define an array data structure in Java and C# (with value types), for graph navigation, and check which allows for cache friendly algorithms
3 - try to implement an image codec in Java using vector indexes vs the same algorithm using pointers and SIMD in C#
Why do you think Oracle is adding those features to Java 10? Just to keep themselves busy?
Earlier quoted context omitted.
When I started going into C# from Java a bit, there were two things slightly annoying me: - Class extensions: I saw code examples online that just wouldn't work for me because the compiler told me a certain method of a built-in class wouldn't exist. After I while I found out that the author of that snippet had used class extensions and not bothered to mention. - The var keyword: While this is sometimes nice for quick…
Do you really think something like this: Dictionary >> foo = new Dictionary >>(); Is prefferable to: var foo = new Dictionary >>(); What do you get from the former that makes the eye-pain worth it? Also, the var keyword is necessary for anonymous types if you want to hold a reference to one. And this is a language feature I sorely miss in Java-land.
Dictionary>> foo = new Dictionary();
Earlier quoted context omitted.
They said "has support for", not "is". This is a natural consequence of having value types (structs). You can even change the bit packing and other layout properties of structs.
Are you replying to the proper comment? In any case, he stated that an Android C# app would be more performant than an app coded in Java without supplying any metrics to prove his point. >This is a natural consequence of having value types (structs). You can even change the bit packing and other layout properties of structs. And yet the JVM still beats the CLR in performance.
Which CLR and which JVM?
Languages are not implementations, I remember when junior Assembly coders could easily write code better than any C compiler, and look how C is regarded nowadays!
As for the CLR code, if you know about compilers and watched Channel 9 and MS blogs, than you would know that Microsoft only made the CLR good enough.
Only now they are sharing the backend with Visual C++.
Earlier quoted context omitted.
Silly idea that will never happen, but imagine Google and Microsoft* working together on Android and it becoming actually open (i.e. not a tool to protect google search on mobile) and easily targetable by Java, C#, Go, etc. apps. From a technical point of view it might sound difficult until you realize modern smartphones are veritable beasts compared to computers 10 years ago, and we've had general purpose OSes for d…
Imagine google buying MS. They seem more complimentary than competitive these days.
Earlier quoted context omitted.
C# offers more support for memory friendly coding and performance than Java, which could ultimately improve Android's performance. Of course, this would only work if they switch languages, which I don't see the Android team doing willingly without upper management "help".
Other than some hypothetical legal advantage in Oracle vs Google case. C# in place of Java would be as likely supported by management as MS Exchange/Outlook in place of Gmail
Earlier quoted context omitted.
You can't have generic functions that can wrap data so you end up passing concrete models or interfaces to views - no generic view-models for you. The inflexibility of the type system isn't a big deal when you are working on network applications or tools, but causes serious duplication when you do anything that passes around concepts internally.
i don't think generic is relevant to GUI. objective c didn't have generics, and i don't think it mattered in any way when they built cocoa. now generics is a problem of its own when working with data and algorithms, but they managed to get along with it in the backend so far, so...
Earlier quoted context omitted.
This was 2009 and the smartphone was not a mature platform. People still used their computers on an everyday basis and didn't rely on their phones as much. This is not the case anymore. I work at a university where I have network statics for all devices connected and can tell how they are used and what they are used for. People expect certain things from their phones now and if they cant have it they would go somewhe…
Since Android debuted, it has gotten rid of SD card slots, keyboard layout options, removable batteries, and replaced most of it's open source apps with proprietary Google Apps. Android has gone from being generally unlocked to where even Google's own Pixel had to essentially get jailbroken with an exploit. UI design catered to power users has been replaced with large simplified UIs with excessive animations and brig…
People are once again using their phones for a lot more than casually surfing the web and playing games. Access to someone's phone now can give you access to their entire life hence the tougher security.
I guess Google can't satisfy everyone and there are options for now with Tizen right?
Earlier quoted context omitted.
While I prefer C#'s delegates/lambdas, there has been an occasional time I've wished for the ability to construct a full instanced object in that case - Java's anonymous inner classes are brilliant at this. Likewise Java's OOP enums (basically singletons) are something I miss too. That's a few small features I notice missing when I switch to C#. Plus, in general I find there's a difference in style. C# libraries tend…
Maven, Ant, and Gradle are also in a class of their own. They help making building Java apps universally extremely easy. C# has an annoying amount of complexity in this area, with a lot of things being built into Visual Studio, and therefore Windows only. “Visual Studio” isn’t a fun build system if you’re not on Windows. And compiling people’s libraries from random repositories over github, bitbucket, etc., only to f…