Live data from Hacker News

Google joins .NET Foundation as Samsung brings .NET support to Tizen

techcrunch.com

221–230 of 341 posts

Re: Google joins .NET Foundation as Samsung brings .NET support to Tizen

#221

Earlier quoted context omitted.

UI development is one of the areas where object orientation really helps encapsulate the code in smaller chunks that are easy to map mentally to the graphical representation. I'm not sure Go's interfaces are as powerful of an abstraction. Mind you, there might be an opportunity there for developing a different kind of UI paradigm where interface elements don't map to objects and actions are the main driver of screen…

> UI development is one of the areas where object orientation really helps encapsulate the code in smaller chunks that are easy to map mentally to the graphical representation. I'm not sure Go's interfaces are as powerful of an abstraction. See, I feel the opposite. I think UI programming is the worst application of OO-design because the data and actions of a UI are inherently decoupled. You have have n data structur…

I don't like UI frameworks that work the way you describe either! I think this is mainly C++-legacy living on in Java and .NET, where they pay a penalty for being static. OO UI frameworks in dynamic languages can be structured very differently.

In Cocoa, you don't have these silly class-specific interfaces ("ButtonClickListener" or whatever). Instead it uses target/action: you give the button an object, and the method name to call on the object. So it does allow you to bind any member of that "world of classes" as-is.

Next, you allow the target to be dynamically determined. For example, say you have a button representing the Copy to Clipboard. You can set its target object to a sentinel representing the keyboard focus. And the button can even use reflection, and disable itself if the focus doesn't support Copy.

In a functional world, functions are opaque: the only thing you can ultimately do with a function is call it. But in an OO world, functions are closer to objects: they have names, they can be inspected, they can be dynamically dispatched. This is part of what makes OO languages excel at UIs.

Re: Google joins .NET Foundation as Samsung brings .NET support to Tizen

#222
post #83
post #69

Earlier quoted context omitted.

Dart doesn't have the adoption yet and has a different plan when it comes to mobile ( https://github.com/flutter/flutter ). I love Go, but it's not really a suitable language to do UI, or anything that deals with data models. C#, however, is a perfect replacement for Java, most of the times. I would say "it's simply superior in every imaginable metric other than cross-platform implementations of the compiler/VM" but…

Why do you consider Go unsuitable for UI development?

Go is unsuitable for programming, and UI development typically involves some programming.

Re: Google joins .NET Foundation as Samsung brings .NET support to Tizen

#223

Earlier quoted context omitted.

I disagree, while some may buy samsung as they see it as the top 'android' choice, I buy them because the displays look the nicest to me. I could care less what OS it was running, and I can't be the only one. (Why do you think people can iOS android but not android 3rd party? The adjustment is the same and not everyone buys a phone to play games with their friends)

You are only saying this because you have all the same apps on Google Play Store as you do on the Apple App Store(basically). You would begin to care what OS you have real quick when it doesn't serve you very well and no one is talking about games here(Banking apps etc)

It definitely didn't start that way. For a very long time, Android didn't have most of the apps iPhone users wanted, especially not back in 2009 when I got my Android. It took time, but it happened. Especially in the case of Tizen, where it could run Android apps, they'd really just need to convince the top 200 apps or so to port over to their store, and that'd get them started pretty well.

The challenge is not getting the apps ported, the challenge is making devs want to port the apps. Sometimes that comes because everyone is talking about a new phone, but where Android started, was the developers of those apps themselves getting excited about it. But Android no longer caters to developers, so a platform like Tizen has a great opening there. As Windows Phone is closed source, it couldn't capitalize on this nearly as well.

Re: Google joins .NET Foundation as Samsung brings .NET support to Tizen

#224
post #69

Earlier quoted context omitted.

Dart doesn't have the adoption yet and has a different plan when it comes to mobile ( https://github.com/flutter/flutter ). I love Go, but it's not really a suitable language to do UI, or anything that deals with data models. C#, however, is a perfect replacement for Java, most of the times. I would say "it's simply superior in every imaginable metric other than cross-platform implementations of the compiler/VM" but…

I always hear of the JVM's legendary capabilities, the result of so many million engineer-hours baked in. What would be required to bring the CLR into parity with it?

Generally when referring to the JVM's performance people are talking about IBM J9, Azul Zing, HotSpot, etc, while Android has its own VM.

Additionally, most high-performance JVMs are optimized for long-running server applications, wile the CLR is optimized more for desktop applications (considerably better startup time, is fast without requiring lots of warmup, but doesn't do some of the very advanced optimizations JVMs tend to do). I suspect it would be easier to make the CLR performant on mobile than to make a JVM fast with constrained memory.

So basically, the CLR is probably already competitive on mobile devices. Does anyone know if Windows Phone uses a stock CLR or if they reimplemented it? Seems pretty snappy.

Re: Google joins .NET Foundation as Samsung brings .NET support to Tizen

#225
post #69

Earlier quoted context omitted.

Dart doesn't have the adoption yet and has a different plan when it comes to mobile ( https://github.com/flutter/flutter ). I love Go, but it's not really a suitable language to do UI, or anything that deals with data models. C#, however, is a perfect replacement for Java, most of the times. I would say "it's simply superior in every imaginable metric other than cross-platform implementations of the compiler/VM" but…

Just go use Kotlin instead. Much nicer than C#, runs on any JVM.

Kotlin is missing monadic comprehension I'd say it's less powerful than C#.

Re: Google joins .NET Foundation as Samsung brings .NET support to Tizen

#226

Earlier quoted context omitted.

You are only saying this because you have all the same apps on Google Play Store as you do on the Apple App Store(basically). You would begin to care what OS you have real quick when it doesn't serve you very well and no one is talking about games here(Banking apps etc)

It definitely didn't start that way. For a very long time, Android didn't have most of the apps iPhone users wanted, especially not back in 2009 when I got my Android. It took time, but it happened. Especially in the case of Tizen, where it could run Android apps, they'd really just need to convince the top 200 apps or so to port over to their store, and that'd get them started pretty well. The challenge is not getti…

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 somewhere else. You're in denial.

"But Android no longer caters to developers" Can you explain what you mean by this?

Re: Google joins .NET Foundation as Samsung brings .NET support to Tizen

#227
post #224

Earlier quoted context omitted.

I always hear of the JVM's legendary capabilities, the result of so many million engineer-hours baked in. What would be required to bring the CLR into parity with it?

Generally when referring to the JVM's performance people are talking about IBM J9, Azul Zing, HotSpot, etc, while Android has its own VM. Additionally, most high-performance JVMs are optimized for long-running server applications, wile the CLR is optimized more for desktop applications (considerably better startup time, is fast without requiring lots of warmup, but doesn't do some of the very advanced optimizations J…

CoreCLR, the same used in .NET Core

Re: Google joins .NET Foundation as Samsung brings .NET support to Tizen

#228
post #48
post #2

Nice. Now please make C# a first-class citizen in Android and start to migrate from Java to C#.

Google have not made their own languages Dart/Go official to Android. Why would they make languages other than Java a priority now?

google is not good at making and fostering languages, C# and .net is much better bet

Re: Google joins .NET Foundation as Samsung brings .NET support to Tizen

#229

Earlier quoted context omitted.

> The var keyword: While this is sometimes nice for quick scripting or hacking in the debugger console, it opens the door for hard-to-read code. I find type inference to be the opposite, generally, because it encourages good naming, and it reduces noise/boilerplate. It also makes writing and refactoring faster (don't have to think about the return types, just the code flow). The only situation I can even think of whe…

> It also makes writing and refactoring faster (don't have to think about the return types, just the code flow). I see what you mean, but isn't this one of the advantages of explicitly declaring types? If you refactor a method to return a different (incompatible) type, you'll have to touch all affected code parts, possibly revealing uninteded consequences of the change. Also, I think remembering that autocompletion i…

If you change the return type of a method without using var you would still have the exact same problems. That's not an actual problem.

I've used var since it came out years ago and never had this autocompletion problem you talk about.

You sometimes had to explicitly declare a type in foreach loops, but that had more to do with shitty legacy APIs that used abstract classes as return types. Wasn't really var's fault though.

Re: Google joins .NET Foundation as Samsung brings .NET support to Tizen

#230
post #143

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…

They also open sourced MSBuild
Post reply on HN