Review Part 2: Developing with Intel Haswell Harris Beach SDS Ultrabook





0/5 (0投票)
Review Part 2: Developing with Intel Haswell Harris Beach SDS Ultrabook
我收到 Intel寄来的 Intel Haswell Harris Beach SDS Ultrabook 进行评测已经有一个多月了,不得不说我爱死了这款小巧的笔记本电脑。我一直在尝试只用它,而且做得相当不错。
当然,也遇到了一些麻烦和挑战。这是一款开发者原型机,我当时异想天开地直接安装了 Windows 8.1。事后证明这是一个错误,因为驱动程序和 BIOS 配置都无法很好地兼容 Windows 8.1。我给使用这些电脑的人的建议是,在驱动程序更成熟之前,避免使用 8.1。我在睡眠、唤醒以及各种应用程序的触摸功能方面都遇到了问题。不过,这是我安装预览版 Windows 的风险,我只能怪自己。
现在我回到了 Windows 8,一切又恢复正常了。
您首先要做的是下载 Windows 8 示例应用程序。虽然 Intel 的示例应用很不错,但它们都是用 C++ 编写的。当我向他们索要 .NET 版本时,他们给了我一个 .NET UI,它调用了一个使用传感器的 C++ 程序集。这并不是我想要的……。
如果您下载了“完整”示例列表,将有超过 270 个应用程序供您探索。正如我在第一部分中提到的,这款笔记本电脑配备了您可能想要的所有传感器,用于开发 Windows 8 或 Windows 8.1 应用程序。我注意到,即使代码库很大,这款笔记本电脑在运行 Visual Studio 2012 和 Visual Studio 2013 时性能也非常出色。性能令人难以置信,我认为这很大程度上归功于 8.1 的 HDD 评分;Visual Studio 在编译、代码感知和其他通常会产生影响的功能方面一直对硬盘要求很高。这款笔记本电脑能够应对 Visual Studio 所能提供的一切。
我首先想看的是 GPS 功能。现在,很少有笔记本电脑配备 GPS,但这款笔记本电脑有。
有很多种方法可以识别您的位置,操作系统对此进行了一些模糊处理,以便您可以使用单一 API 通过 Geolocator 来获取位置。即使没有 GPS,它也会进行一些“两步走”,利用 Wi-Fi 或其他方法来获取近似位置。
当您启动演示应用程序时,您将需要像任何应用程序一样,允许使用这些数据。
但是,一旦您允许了,您就可以将实时位置数据实时传输到您的应用程序中。虽然这里的精度是 100(我不知道这是什么测量单位,可能是 100 米),但在室内我看到过低至 50。
在示例代码中,您可以看到连接到传感器数据的简单性和易用性,所有 Windows 8 演示应用程序都展示了这一点。
private Geolocator _geolocator = null;
public Scenario1()
{
this.InitializeComponent();
_geolocator = new Geolocator();
}
///
/// Invoked when this page is about to be displayed in a Frame.
///
///Event data that describes how this page was reached. The Parameter
/// property is typically used to configure the page.
protected override void OnNavigatedTo(NavigationEventArgs e)
{
StartTrackingButton.IsEnabled = true;
StopTrackingButton.IsEnabled = false;
}
///
/// Invoked immediately before the Page is unloaded and is no longer the current source of a parent Frame.
///
///
/// Event data that can be examined by overriding code. The event data is representative
/// of the navigation that will unload the current Page unless canceled. The
/// navigation can potentially be canceled by setting e.Cancel to true.
///
protected override void OnNavigatingFrom(NavigatingCancelEventArgs e)
{
if (StopTrackingButton.IsEnabled)
{
_geolocator.PositionChanged -= new TypedEventHandler<geolocator, positionchangedeventargs="">(OnPositionChanged);
_geolocator.StatusChanged -= new TypedEventHandler<geolocator, statuschangedeventargs="">(OnStatusChanged);
}
base.OnNavigatingFrom(e);
}
///
/// This is the event handler for PositionChanged events.
///
///
///
async private void OnPositionChanged(Geolocator sender, PositionChangedEventArgs e)
{
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
{
Geoposition pos = e.Position;
rootPage.NotifyUser("Updated", NotifyType.StatusMessage);
ScenarioOutput_Latitude.Text = pos.Coordinate.Latitude.ToString();
ScenarioOutput_Longitude.Text = pos.Coordinate.Longitude.ToString();
ScenarioOutput_Accuracy.Text = pos.Coordinate.Accuracy.ToString();
});
}
您可以看到一个简单的对象,几个事件和一个异步进程来更新 UI。这简直太简单了,连我都能弄明白……
虽然 Microsoft 的示例提供了广度,向我们展示了如何与每个单独的组件进行交互,但 Intel 的示例为我们提供了一些完整的场景。有一个简单的 RTS 演示,还有一个枚举所有可用传感器的应用程序。Microsoft 的示例隐藏了细节,而 Intel 的示例则详细展示了它们。
要让一切正常工作,您需要 Windows SDK 和 DirectX SDK(分别适用于 Windows 8 或 Windows 8.1)。如果您安装了最新版本的 Visual Studio 2013,在安装 DirectX SDK(2010 年 6 月版)时可能会遇到“S1023”错误。如果可以,请先安装 DirectX SDK,否则您将不得不进行一些“折腾”才能让一切正常工作。
第一个应用程序是所有传感器的列表。如果您晃动笔记本电脑,可以看到数字在变化。此外,还有许多很棒的应用程序演示了 API 和传感器的实际应用。
在“触摸”文件夹中,有一个地形修改应用程序,可以让您用沙子绘制地形。
Tron 应用程序非常酷。它允许您通过笔记本电脑的水平方向来控制自行车。同样,Intel 的所有这些应用程序都是 C++ 编写的,我发现从架构角度来看很难理解代码,但您可以自己去探索。
实时战略应用程序允许您通过触摸来选择单位,然后通过点击地形来给它们下达命令。我们几乎总是忘记最重要、最常用的传感器——触摸屏。
结论
我从这款笔记本电脑上获得了很大的价值。基本上,我将它用作我的主要电脑,除非我需要运行虚拟机或使用麦克风(我在那里似乎遇到了驱动程序问题),这时我会切换到我那台拥有 TB 硬盘空间和 24GB RAM 的 8KG Dell。我还没有见过有哪款笔记本电脑能以我想要的尺寸和重量满足我的需求,所以我随身携带两台。这款出色的 Haswell 在电池续航方面表现出色。我上次充电已经过去了 5 个小时,我一直在写这篇帖子、浏览网页以及运行演示应用程序。同时还在下载和安装东西。而且我还有将近 40% 的电量剩余。虽然我一次充电无法获得完整的 8 小时续航,但我已经非常接近了。
你们的续航能用多久?
我基本上用这款笔记本电脑取代了我的 Acer Iconia W520,虽然我希望它有一个可拆卸的屏幕,但这真的不是问题。我仍然使用我的 Iconia,但它在浴室里充电。
如果您是开发 Windows 8 或 Windows 8.1 应用程序的开发者,我全心推荐这款笔记本电脑来构建它们。如果您只需要一款超极本,那么请务必选择 Haswell 处理器以获得更好的电池续航,并且我推荐那些同时也是平板电脑的混合型设备。
材料关联披露:我免费收到了上述一种或多种产品或服务,希望能在我的博客上提及。无论如何,我只推荐我个人使用并认为我的读者会喜欢的产品或服务。我在此披露是根据联邦贸易委员会第 16 章,第 255 部分:“关于在广告中使用代言和推荐的指南。”