Posts Tagged ‘Windows Phone’

Developing cross-platform mobile apps: A new playlist

Published by | Wednesday, July 10th, 2013

iOS Note-Taking App

Creating an app for Android, iOS, or Windows means learning two things: a programming language and the SDK. Even if you use one of the cross-platform frameworks, you’ll still need to learn some peculiarities of each system. It requires a significant investment in time and talents—and you’ll have to repeat it to create the same app for a different phone.

lynda.com can help with this learning curve. We’ve created a playlist of three new parallel courses: Building a Note-Taking App for Android, Building a Note-Taking App for iOS, and Building a Note-Taking App for Windows Phone 8 and Windows Store. Together they provide a roadmap for building a cross-platform mobile app.

We’ve built the same app for all three mobile platforms (actually four; Windows Store and Windows Phone are separate), using the same assets and creating the same functionality for each. We enlisted three top-notch authors to show you how they would implement the application on each platform. Our authors shared outlines and met regularly to coordinate their efforts, only making changes when the particular language or SDK demanded it.

To use this set of courses most effectively, start with the platform you know best and review how that author chose to implement the app for your favored SDK and language. Then choose your next device and watch the related course. Feel free to switch back and forth between the two, comparing the platform you know to the platform you’re learning.

Our authors provide you with insights to each platform, pointing out differences that may trip you up if you’re making assumptions based on a different SDK. In the end, you should be able to map your experience from one device to another.

Please be sure to fill out the survey at the end of each course. We’ll read your comments to see how we’re doing and how we can improve.

Interested in more?

Start a 7-day free trial at lynda.com
• Watch Building a Note-Taking App for Android

• Watch Building a Note-Taking App for iOS
• Watch Building a Note-Taking App for Windows Phone 8 and Windows Store

All Developer courses at lynda.com

Building applications for Microsoft operating systems

Published by | Wednesday, April 11th, 2012

We recently released Silverlight 5 Essential Training, with Walt Ritscher. If you’re new to Silverlight, check out this overview of the plug-in from chapter one of the course:

If you’re a developer who’s interested in working with Microsoft operating systems such as Windows 7, Windows Phone, or the upcoming Windows 8, you might wonder why this course might be important. After all, Silverlight, like Adobe’s Flash Player, is a web browser plug-in. You should be interested because many mobile devices, such as the iPhone or iPad, can’t display content built for these technologies, and Microsoft has made it clear that Silverlight apps won’t  be able to run across all modes of Internet Explorer when Windows 8 is delivered.

Fortunately, the skills you have acquired to build Silverlight applications are directly transferable to some new and important application platforms. Silverlight applications are created with a combination of XAML (eXtensible Application Markup Language) and your choice of either C#, or Visual Basic. (In his Silverlight 5 Essential Training course, Walt Ritscher focuses exclusively on C#, since it’s the more popular of the two languages.) Wondering how it all ties together? The same languages—XAML, C#, and Visual Basic—are all at the core of Microsoft’s developer platforms of the future: Windows Phone and Windows 8.

Consider the following XAML code snippet that declares a page control in a Silverlight application:

<UserControl x:Class=”SilverlightApp.MainPage”
xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation”
xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml”
…more XML namespaces…
mc:Ignorable=”d” d:DesignHeight=”300″ d:DesignWidth=”400″>
<Grid x:Name=”LayoutRoot” Background=”White” Width=”300″ Height=”200″>
   <TextBlock Height=”23″ HorizontalAlignment=”Left” Margin=”10,10,0,0″
     Text=”Hello World” VerticalAlignment=”Top” />
 </Grid>
</UserControl>

The code in bold font defines the layout and presentation of a single line of text: “Hello World.” Now here’s a page control for a Windows 8 Metro app; notice that the bolded code looks almost exactly the same:

<Page x:Class=”Win8App.MainPage”
xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation”
xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml”
…more XML namespaces…
mc:Ignorable=”d”>
 <Grid Background=”{StaticResource ApplicationPageBackgroundBrush}”>
   <TextBlock HorizontalAlignment=”Left” Margin=”10,10,0,0″ TextWrapping=”Wrap”
     Text=”Hello World!” VerticalAlignment=”Top” FontSize=”36″/>
 </Grid>
</Page>

And here’s a page control for Windows Phone:

<phone:PhoneApplicationPage x:Class=”PhoneApp.MainPage”
xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation”
xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml”
…more XML namespaces and properties…>
 <Grid x:Name=”ContentPanel” Grid.Row=”1″ Margin=”12,0,12,0″>
   <TextBlock Height=”30″ HorizontalAlignment=”Left” Margin=”10,10,0,0″
     Text=”Hello World” VerticalAlignment=”Top” />
 </Grid>
</phone:PhoneApplicationPage>

These component definitions are all built with XAML, and use pretty much the same syntax to display text on the screen. They have different root elements: UserControl for Silverlight, Page for Windows 8, and PhoneApplicationPage for Windows Phone. But they all support the same basic set of visual controls such as Grid and TextBlock, and they all use “code-behind” architecture to bind logic written in C# or Visual Basic to visual presentation defined in XAML.

The bottom line is, you can’t just move an existing Silverlight or Windows Phone application to Windows 8 and expect it to work. The underlying technologies are different, and there are differences between the application programming interfaces (APIs) for the different operating systems. You’ll have to “port your application,” a process that involves creating new code files and copying selected portions of code to the new version of the application. You’ll probably also have to re-imagine the user interface for the new target OS, since applications written for a browser have different layout guidelines from those on a phone or tablet, or those designed to run full-screen in high resolution as they might on a Windows 8 desktop. If you already know how to use XAML and other .NET programming languages, learning how to build Windows 8 apps will be much faster and easier.

In this video from chapter three of the Silverlight 5 course, Walt explores the programming side of Silverlight 5 and discusses the relationship between XAML and .NET:

In the near future, we’ll be releasing courses on both Windows Phone and Windows 8 application development. If you want to learn some of the skills you’ll need right now, Walt Ritscher’s Silverlight 5 Essential Training course is a good place to start, along with his Visual Studio 2010 Essential Training, and Joe Marini’s C# Essential Training. You can use Microsoft’s free express versions of Visual Studio or a full copy of Visual Studio as your development environment. When you’re ready to get started with Windows 8, which is currently available as a free Consumer Preview, you can use a Beta version of Visual Studio that lets you build your first Metro apps right away.

Microsoft has put a lot of effort into making development skills and programming languages transferable across their multiple operating systems and application platforms; these efforts make it easier to learn, and easier to build applications for, their current and future technologies.

 

Interested in more?
• All developer courses on lynda.com
• All courses from David Gassner on lynda.com

Suggested courses to watch next:
• Silverlight 5 Essential Training
Windows 8 Consumer Preview First Look
Visual Studio 2010 Essential Training
C# Essential Training
ASP.NET Essential Training

Microsoft Silverlight, technology and education, ColdFusion, and Windows Phone

Published by | Friday, March 26th, 2010

Our authors have been busy as usual! Check out the latest news on conferences, speaking events, webinars, and blogs from a few of our fine lynda.com authors:

Walt RitscherAuthor Walt Ritscher is going to have a busy month. In April, he is speaking at three different Microsoft Silverlight conferences. Check him out at one near you:

April 17-18, 2010: Seattle Code Camp v5.0—Two full days of talking about code with fellow developers. Sessions will range from informal “chalk talks” to presentations. There will be a mix of presenters, some experienced folks, for some it may be their first opportunity to speak in public. We are expecting to see people from throughout the Pacific Northwest region and beyond.

April 26th: Silverlight User Group talk in New York. Join NYC WPF & Silverlight Meetup to get location information and RSVP.

April 27-29th: Devscovery Conference in New York, NY—Devscovery is a three-day multi-track indepth technical conference produced by Wintellect. In 2010, Devscovery will provide 33 technical sessions to cater to the intermediate to advanced developer.

Laurie Burruss, Simon AllardiceJoin authors Laurie Burruss (lynda.com Senior Director of Education) and Simon Allardice for MoblEd10 in Pasadena, CA April 19- 20. Explore how mobile technologies are impacting the ways we learn, work, and play anytime, anywhere, and everywhere. Register today.

Dan ShortDan Short, author of the new ColdFusion Builder Essential Training course, gave a great ColdFusion Builder webinar this week. ColdFusion Builder is Adobe’s first dedicated development environment for programmers of ColdFusion-based Internet applications. If you missed the webinar, you can watch the recorded content online.

Joe Marinilynda.com author and Product Manager for the Microsoft Windows Phone, Joe Marini, has launched the IE for Windows Phone Team Weblog. If you are looking for updates on the Windows Phone, mobile development tips and sample code, this is a great resource.