|
Dred_furst posted:One can hope for WPF, forget it for winforms. what's the point? Would people event want WPF skinned apps on Linux / OSX?
|
# ? Nov 13, 2014 01:48 |
|
|
# ? May 14, 2024 06:47 |
|
All I really want is cross platform MVVM + XAML that's not Silverlight.
|
# ? Nov 13, 2014 02:34 |
|
Bognar posted:I wouldn't expect any .NET UI libraries from Microsoft to make their way to other platforms anytime soon. Dang. I really wanted to develop for OSX but use C# without paying Xamarin any money.
|
# ? Nov 13, 2014 03:20 |
|
Martytoof posted:Dang. I really wanted to develop for OSX but use C# without paying Xamarin any money. Xamarin.Mac is free, but unsupported. Our mobile stuff requires a subscription.
|
# ? Nov 13, 2014 03:23 |
|
Drastic Actions posted:Xamarin.Mac is free, but unsupported. Our mobile stuff requires a subscription. Huh. I haven't checked it out in a month or two but for some reason I had a hard time finding what I needed to get this done on your site I'll have to check again tomorrow, thanks!
|
# ? Nov 13, 2014 03:25 |
|
Martytoof posted:Huh. I haven't checked it out in a month or two but for some reason I had a hard time finding what I needed to get this done on your site Scratch that a little bit, it's MonoMac that's included in Xamarin Studio, and it is unsupported. But it is free. Mixed up my terms there . Just download Xamarin Studio on OSX and you should see it in the projects list.
|
# ? Nov 13, 2014 03:28 |
|
Oh okay so Xamarin.Mac is still a paid product then, right? That's fair I think this is what was confusing me.
|
# ? Nov 13, 2014 03:30 |
|
Bognar posted:Are there VMs of this [VS2015 Preview] on Azure? Apparently yes but I haven't tried it myself: http://blogs.msdn.com/b/visualstudioalm/archive/2014/06/04/visual-studio-14-ctp-now-available-in-the-virtual-machine-azure-gallery.aspx
|
# ? Nov 13, 2014 05:10 |
|
Chasiubao posted:Would people event want WPF skinned apps on Linux / OSX? I'd settle for a gui api that was cross-platform between windows 7 and windows 8
|
# ? Nov 13, 2014 07:41 |
|
ljw1004 posted:For VB/C#, here are complete lists of all new language features in C#6 and VB14.
|
# ? Nov 13, 2014 07:50 |
|
Null propagation yesssssssss one more battle won in the war against null.
|
# ? Nov 13, 2014 08:15 |
|
Dr Monkeysee posted:Null propagation yesssssssss one more battle won in the war against null. True that. The nameof operator and string interpolation look pretty neat too.
|
# ? Nov 13, 2014 09:05 |
|
Wouldn't WPF be easier and better to port than WinForms simply because it has its own rendering scheme with DirectX and isn't a native GUI wrapper? It's sort of like GTK in that respect, except not ugly. The only reason I still use WinForms nowadays is because Mono supports it but not WPF. One project I've been working on lately is a JSON editor that generates a GUI from a JSON schema and is extensible with custom value editors for things like colors, images, or file selectors. I'd really love to do this in WPF but I'm not going to give up on it being cross platform. Also, one thing I've been wanting to know is what exactly is .NET Core and how it relates to the existing framework and CLR. The .NET world already seems like it has too many different platforms and distributions with differences in libraries and functionality.
|
# ? Nov 13, 2014 14:07 |
|
This may not necessarily be a .Net question, but I'm working in C# so it's going here for now. I got bored and decided to make a contest entry bot for slickdeals. It's working fine except the session isn't being persisted across calls, despite doing what's described here. Full code here: http://pastebin.com/P9Rki02H What stupid thing am I doing/not doing?
|
# ? Nov 13, 2014 16:34 |
|
fleshweasel posted:I believe that's made possible by the LINQ to SQL library straight from Microsoft. Your code is being turned into a SQL script. TSQL won't parse dates in the format month.day.year as far as I can tell and its regular expression support is both extremely limited and nonstandard, so I don't think it's possible that it's translated into pure SQL. Don't much care though. It could be juicing an orphan every time I hit F5 and it's still be better than string manipulation in TSQL.
|
# ? Nov 13, 2014 17:57 |
|
Inverness posted:Also, one thing I've been wanting to know is what exactly is .NET Core and how it relates to the existing framework and CLR. The .NET world already seems like it has too many different platforms and distributions with differences in libraries and functionality. twodot fucked around with this message at 18:30 on Nov 13, 2014 |
# ? Nov 13, 2014 18:26 |
|
Gul Banana posted:very nice! nothing quite as exciting as record classes, but I'll be making immediate use of half this stuff. how on earth did you solve the memcpy problem to allow for parameterless value type constructors? Could you say precisely what you mean by "the memcpy problem" ? At the IL level, IL is able to construct things by a call to initobj (gives back a zeroed-out block of memory), or an explicit call to the constructor, or a call to Activator.CreateInstance<T> which does the right thing and is needed for this kind of place: code:
If you have an instance of a struct and assign it to another one, then yes it's just a straight memcpy, not expected to go via additional constructor calls. When you declare an array of structs, that's expected to be the same as default(T), i.e. to bypass the constructor.
|
# ? Nov 13, 2014 19:17 |
|
Here is a super obscure question: Can I use thread-local storage via __declspec in a static C library that's linked into a C++/CLI mixed-mode assembly? Implicit TLS didn't use to work in DLLs not present at process start, but I don't know if that restriction's still around, or how it related to C++/CLI.
|
# ? Nov 13, 2014 22:02 |
|
Gul Banana posted:very nice! nothing quite as exciting as record classes, but I'll be making immediate use of half this stuff. how on earth did you solve the memcpy problem to allow for parameterless value type constructors? Is it sad that I'm excited for multi-line string literals in VB? Man maybe it's time to switch over.
|
# ? Nov 13, 2014 23:31 |
|
Scaramouche posted:Is it sad that I'm excited for multi-line string literals in VB? Man maybe it's time to switch over. It's okay to be excited I'm putting together an MSDN article about "top 14 features in VB 14" and lots of people asked me to mention them. Not sure which other things to mention. Refactorings. Analyzers. 50% faster compile times and solution-load-times. NameOf operator. New in VB14: coding experience
New in VB14: fundamentals
New in VB14: language
|
# ? Nov 13, 2014 23:44 |
|
ljw1004 posted:Could you say precisely what you mean by "the memcpy problem" ? as I understand it, the CLR will sometimes initialise or copy value types around bytewise no matter what a language compiler has to say about it - meaning that constructors cannot be guaranteed to run. normally with a reference type you're assured by the language semantics that it will be given its initial state by application defined code, but this same guarantee can't be made for value types. I thought that was why you weren't allowed to write parameterless constructors for valueobject subtypes, and *were* allowed to assign Nothing or default(T) to them instead (which I assume uses initobj) - the parameteless constructor would have been a "trap" which looked like, but was not, the only way to init objects of the type. quote:So we just relaxed the restriction on the declaration side, and ensured that code only ever calls initobj in places where it knows for sure that it's a struct with no parameterless constructor. (Note that struct constructors are required, as always, to initialize all fields). this sounds like a partial solution, where the language makes what restrictions it can - but fundamentally, there are still situations where your struct gets inited to 0 rather than its constructor being called, which is not the case with classes?
|
# ? Nov 14, 2014 05:42 |
|
Gul Banana posted:this sounds like a partial solution, where the language makes what restrictions it can - but fundamentally, there are still situations where your struct gets inited to 0 rather than its constructor being called, which is not the case with classes? We make the solid guarantee that whenever you write "new" then the ctor always gets called, no exception. (if you find an exception then that's a bug and please let us know!) If the compiler emits in IL a call to Activator.CreateInstance or to an actual constructor, then the CLR will never bypass the ctor even on a struct. So it really is under the control of the compiler. (Yes there are still situations where the struct gets inited to 0 and the constructor is bypassed. The only such situation is when the compiler has emitted an INITOBJ instruction. So we guarantee never to emit INITOBJ in cases where the user wrote "new" and there is or might be a constructor.) ljw1004 fucked around with this message at 06:37 on Nov 14, 2014 |
# ? Nov 14, 2014 06:32 |
|
is this interpretation correct?code:
|
# ? Nov 14, 2014 11:25 |
|
The inclusion of parameterless constructors for structs is interesting. I liked that C# didn't let you write them before so you had to be prepared to deal with a struct that has been zero-initialized. I feel like there is going to be some people that are fooled into thinking a parameterless constructor is always called.twodot posted:.NET Core is CoreCLR, the build of CLR that runs on phone and the K runtime (edit: and Silverlight). I've looked through some of the reference source and the old CLR 2.0 code that is available and it seems married to things like COM and other platform-specific APIs.
|
# ? Nov 14, 2014 14:04 |
|
Does anybody here have experience with Xamarin? How is it in terms of stability, performance and documentation? Is it actually a competitive technology?
|
# ? Nov 14, 2014 15:05 |
|
Forgall posted:Does anybody here have experience with Xamarin? How is it in terms of stability, performance and documentation? Is it actually a competitive technology? I've been working with Xamarin + MvvmCross on a decent sized learning-based iPad application for the past 6 months or so. Ultimately, the tooling could be better, but the cross-compilation works exactly as expected. Developing for iOS necessarily requires some kind of machine running OS X with Xcode. You can develop in Xamarin Studio on the a Mac, or you can set up a Mac with a build server and develop in Visual Studio with a plugin that manages remote compilation and remote debugging (what we did). This piece used to be really buggy and I'd have to reset it every day, sometimes more than that, but it has really improved in the last few months. Every now and then Apple will release an update to Xcode or Xamarin will release an update to the runtime and various things will break - though it's usually fixed within a day. I haven't really seen any issues with performance. I'm not making 3D games or anything, but I am doing a lot of data manipulation through LINQ which theoretically will create a lot of garbage and cause GC pauses - but really I haven't seen any problems. AFAIK, Xamarin compiles directly to ARM for iOS with capability of calling to iOS APIs, and it compiles to IL for Android which is then JITted. Really, you should be getting as close to native performance as it gets. The documentation is pretty good, though you can tell a great portion of it was written for iOS 6. I don't have much insight into the Android docs. So a lot of the documentation doesn't reflect the API updates from Apple, but also a lot of the basic stuff hasn't changed so you can still get a lot of useful information. Overall I've been really happy with Xamarin and would recommend it to anyone looking to do cross platform in C#. Some people consider the price too high, but I would pay it 3 times over to write in C# instead of Objective-C. Now that Swift is out, maybe that's different, but potentially being able to cross compile to Android and reuse all of our business logic code should still be super useful.
|
# ? Nov 14, 2014 15:27 |
|
So with all the announcements and updates, I'm a little fuzzy on one Xamarin item: can I now develop Android apps via Xamarin in Visual Studio without, you know, paying them money? Their licenses are pretty pricey for a hobby/indie developer.
|
# ? Nov 14, 2014 16:40 |
|
Rooster Brooster posted:So with all the announcements and updates, I'm a little fuzzy on one Xamarin item: can I now develop Android apps via Xamarin in Visual Studio without, you know, paying them money? Their licenses are pretty pricey for a hobby/indie developer. Before the VS Community edition was released, you had to have VS Professional or up in order to use Xamarin, because it was an extension. Now you don't have to. And becaues the community edition is free, the Starter edition of Xamarin now works on VS. We also made changes to the starter edition so that you can have "bigger" apps, but realistically it's more so you can see how it works and get a feel for making something, rather than releasing a full blown app with it. But yeah, basically, you still have to pay us. VS support only comes with the business license and up too . Edit: quote:The documentation is pretty good, though you can tell a great portion of it was written for iOS 6. I don't have much insight into the Android docs. So a lot of the documentation doesn't reflect the API updates from Apple, but also a lot of the basic stuff hasn't changed so you can still get a lot of useful information. There is an effort going on to update it, or at least provide newer samples as new releases come up. Drastic Actions fucked around with this message at 16:53 on Nov 14, 2014 |
# ? Nov 14, 2014 16:46 |
|
Bognar posted:Developing for iOS necessarily requires some kind of machine running OS X with Xcode. You can develop in Xamarin Studio on the a Mac, or you can set up a Mac with a build server and develop in Visual Studio with a plugin that manages remote compilation and remote debugging (what we did). This piece used to be really buggy and I'd have to reset it every day, sometimes more than that, but it has really improved in the last few months. Every now and then Apple will release an update to Xcode or Xamarin will release an update to the runtime and various things will break - though it's usually fixed within a day. Drastic Actions posted:And becaues the community edition is free, the Starter edition of Xamarin now works on VS.
|
# ? Nov 14, 2014 18:25 |
|
Forgall posted:My goal at the moment is to simply try it out and learn something. As far as I understand I can at least create a Xamarin.Forms project, build it for android or windows phone and see it in action. I guess I won't be able to use iOS-specific features without a Mac, but I'll have to live with that. Maybe he means "support" in the "we provide support if you have problems" sense.
|
# ? Nov 14, 2014 19:03 |
|
Inverness posted:I'm not really familiar with the limitations of that compared to the normal CLR. Also, will the normal CLR continue to have a place in the world as a separate thing? quote:Is .NET going to move to a model where you can build the CLR with the features you need? twodot fucked around with this message at 19:37 on Nov 14, 2014 |
# ? Nov 14, 2014 19:31 |
|
twodot posted:Once we're open source, I suppose this would be in theory possible, but I doubt it would be actively supported.
|
# ? Nov 14, 2014 19:49 |
|
Forgall posted:Those two statements seem to contradict each other. You can try out the VS extension with starter, but if you want to use it without those size restrictions, you have to pay, and when you do you have to use Business license or up.
|
# ? Nov 14, 2014 19:51 |
|
Inverness posted:What I'm really getting at here are the features that seem to be excluded from CoreCLR or .NET Core as its called now. When I look through the reference source I see flags for FEATURE_SERIALIZATION, FEATURE_REMOTING, FEATURE_CLICKONCE, and several others. I'm only familiar with your normal desktop development, so I'm wondering what determines which platforms/builds get what features and how that concerns .NET Core going forward.
|
# ? Nov 14, 2014 20:09 |
|
Drastic Actions posted:You can try out the VS extension with starter, but if you want to use it without those size restrictions, you have to pay, and when you do you have to use Business license or up.
|
# ? Nov 14, 2014 20:22 |
|
twodot posted:I'm not certain I understand. There's an MSBuild file the looks to see whether we're building Desktop or CoreCLR and turns on various feature based on that (there's like ~100 of them). It's unclear to me whether any of that will be exposed, since it's not relevant. What gets turned on is subject to change, we've certainly grown CoreCLR capabilities in the past. Removing capabilities most likely won't happen as breaking changes are frowned on. One of the benefits of .NET Core is that it has a lighter footprint due to modularity. You'll be able to choose which assemblies you want to deploy privately instead of relying on the full 200 MB or so framework. My question was about how much this drive towards modular deployment would apply to the CLR itself since its designed to be able to chose what features it builds with and some of them are more platform-dependent than others. What if someone decides they want a feature level somewhere in between the Desktop and Core builds?
|
# ? Nov 14, 2014 21:21 |
|
Inverness posted:My question was about how much this drive towards modular deployment would apply to the CLR itself since its designed to be able to chose what features it builds with and some of them are more platform-dependent than others. What if someone decides they want a feature level somewhere in between the Desktop and Core builds? twodot fucked around with this message at 21:37 on Nov 14, 2014 |
# ? Nov 14, 2014 21:33 |
|
twodot posted:This depends on how the open source stuff ends up working which to my knowledge hasn't been announced or even decided firmly. It's plausible that we give out the full source and disable the Desktop build, or just say that we don't want changes outside of Core, in that scenario it would be entirely possible to build something in between, with the warning that extra effort might be required to make such a configuration work. It's also plausible that the source is scrubbed and the source for Desktop only features doesn't even make it to the repository, then you'd be stuck building the feature yourself. Based on the messaging I suspect scrubbing is likely, but I don't actually know. In either scenario, it wouldn't be officially supported.
|
# ? Nov 14, 2014 22:04 |
|
Inverness posted:Do you know why Microsoft isn't open-sourcing everything for Desktop too? If you mean Forms, I think that'd entail all of Windows from some of the stuff hackbunny has been saying in his YOSPOS thread.
|
# ? Nov 14, 2014 22:25 |
|
|
# ? May 14, 2024 06:47 |
|
Munkeymon posted:If you mean Forms, I think that'd entail all of Windows from some of the stuff hackbunny has been saying in his YOSPOS thread. People would be better of just installing Windows
|
# ? Nov 14, 2014 23:08 |