通过浏览器中托管的标准化虚拟机支持一组语言(Java,Python,Ruby等)是否有意义,而不是要求使用专门的语言 - 实际上,这是一种专门的范例 - 仅适用于客户端脚本?
为了澄清这个建议,网页将包含字节代码而不是像JavaScript这样的任何高级语言.
我理解实用的现实,即由于进化原因,JavaScript正是我们现在必须处理的事情,但我在考虑更长远的问题.关于向后兼容性,没有理由在一段时间内无法同时支持内联JavaScript,当然JavaScript可能是浏览器虚拟机支持的语言之一.
我正在开发一个需要与服务器双向通信的Android应用程序.通过这种方式,我的意思是服务器或设备可以随时发送消息,消息之间有任意的时间量.将数据从设备发送到服务器是一种常见的,我认为很容易理解的任务,但我不确定最好的方法是从服务器到设备的相反方向.
我认为让设备定期轮询服务器可能是一个坏主意,因为延迟和电池耗尽,但我愿意考虑这个选项.我目前的计划是通过电子邮件到SMS桥接器从服务器发送文本消息,并让我的应用程序运行服务来接收和处理这些消息.
我的问题是,如果有这种情况的最佳实践,并且如果使用短信有一些我没有考虑的缺点.为了这个问题,我想假设用户拥有无限制的文本数据计划,因此按文本付费不会成为问题.
我有一个View,它显示了一个DataGrid
绑定到ObservableCollection
ViewModel中的a.为了便于讨论,我们假设我们有一个Team
包含团队的视图DataGrid
,其中每行代表一个Player
.
我的问题是我应该使用什么数据类型来代表我的Team
收藏中的玩家.集合中的项目是ViewModels本身是一个好主意吗?在这种情况下,我的Team
View将与单个Team
ViewModel以及任意数量的Player
ViewModel(在Team集合中)相关联.
将多个ViewModel与单个View相关联是否违反了MVVM的任何设计准则,是否有实现此方案的首选方法?
谢谢!
int? x = null;
x = x + 1; // Works, but x remains null
Run Code Online (Sandbox Code Playgroud)
我希望编译器尝试将x转换为int,但显然它没有.
编辑由280Z28:更改NullReferenceException
到InvalidOperationException
,这是什么Nullable<T>.Value
时候抛出HasValue
是假的.
我最近遇到了一些我正在研究的代码中的情况,这对我来说没有意义.一组类继承自基类,纯粹是为了在基类中共享一些方法.没有方法覆盖,只有子类从父类调用方法.
在我看来,通过让子类引用父类而不是继承它来更好地建模,我认为这会减少不必要的复杂性.这是合理的,还是我错过了使用这样的继承的一些好处?
我有一个C#应用程序需要每秒反序列化数千个protobuf消息.为了避免不必要的垃圾收集,我想知道是否有办法使用预先分配的内存,以便每个反序列化操作都不需要分配新的内存.
我设想的是,我会在执行之前分配一个消息对象池,然后指示protobuf代码使用此池中的下一个可用消息进行每个反序列化.
此功能是否存在,或者在此方案中是否存在其他一些优化内存使用的方法?
谢谢!
是否存在任何库或其他开发资源可以帮助减少在各种移动平台之间移植应用程序所需的工作量?特别是,我有兴趣支持iPhone,Android和Windows Phone 7.一些关注的领域包括UI,客户端 - 服务器通信和硬件支持(例如,相机,GPS等).
考虑以下接口:
public interface IPlayerRepository
{
IPlayerInfo GetPlayerInfo(int id);
}
public interface IPlayerInfo
{
public int Id { get; set; }
public int GamesPlayed { get; set; }
public int GamesWon { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
以及相关的实施:
public class PlayerRepository : IPlayerRepository
{
IPlayerInfo GetPlayerInfo(int id)
{
// read from external data store
return new PlayerInfo();
}
}
public class PlayerInfo : IPlayerInfo
{
public int Id { get; set; }
public int GamesPlayed { get; set; }
public int GamesWon …
Run Code Online (Sandbox Code Playgroud) .net ×4
c# ×4
android ×2
oop ×2
exception ×1
iphone ×1
java ×1
javascript ×1
mvvm ×1
portability ×1
protobuf-net ×1
wpf ×1