Topics covered:

  • History of Windows OS for Desktop
    • From Windows 3.0 to Windows 10
  • History of Windows OS for Mobile
    • From Windows CE to Windows Mobile to Windows Phone to Windows 10 Mobile
  • Ways to Develop Windows Applications
    • MFC, WinForms, WPF
    • Windows Universal Apps (Win 8.1)
    • Universal Windows Platform (Win10)
  • Other Platforms for Windows Apps
    • Unity3D, Xamarin, Apache Cordova

Video (in Bulgarian)

Presentation Content

First Windows Versions

  • 1975–1981: Microsoft boots up
    • MS‑DOS
  • 1982–1985: IntroducingWindows 1.0
  • 1987–1990: Windows2.0–2.11 – More windows

Windows 3.0

  • Windows 3.0
    • Release: May 1990
    • Support end: Dec 2001
  • Able to compete with
  • Macintosh UI
  • Multimedia upgrade kit
    • CD-ROM
    • Sound card

Windows 95

  • Windows 95
    • Release: Aug 1995
    • Support end: Dec 2001
  • Consumer oriented
  • Key new features:
    • Win32 API
    • The “Start” button
    • The taskbar

Windows 98

  • Windows 98
    • Release: June 1998
    • Support end: July 2006
  • Key new features
    • Windows Driver Model
    • Wider support for USB
    • ACPI support – Standby and Hibernate states

Windows Millennium Edition

  • Windows ME (Mistake Edition)
    • Release: Sep 2000
    • Support end: Jul 2006
  • Main target home PC users
  • Key new features
    • Customizable Windows Explorer toolbars
    • Personalized menus
    • Autocomplete in Windows Explorer address bar

Windows XP

  • Windows XP
    • Release: Dec 2001
    • Support end: April 2014
  • Improved hardware support
  • Key new features
    • Windows Product Activation
    • Internet Connection Firewall
    • Internet Connection Sharing
    • Remote Desktop

Windows Vista

  • Windows Vista
    • Release: Jan 2007
    • Support end: April 2017
  • Improved security
  • Kew new features
    • Improved UI – Windows Aero
    • Windows Search
    • Increased level of communication between home network machines

Windows 7

  • Windows 7
    • Released: Oct 2009
    • Support end: Jan 2020
  • Key new features
    • Improved performance on multi-core CPUs
    • Taskbar “pin application”

Windows 8

  • Windows 8
    • Released: Oct 2012
    • Support end: Jan 2023
    • Metro Design
  • Key new features
    • Windows Store
    • Improved mobile UI
    • New start screen
    • USB 3.0 support

Windows 8.1

  • Windows 8.1
    • Released: Oct 2013
    • Support end: Jan 2023
  • Major update to Win 8
  • Key new features
    • All Apps view
    • Improved window snapping
    • Tighter OneDrive integration
    • Support for 3D printing using NFC tags

Windows 10

  • Windows 10
    • Released: Jul 2015
    • Support end: Oct 2025
  • Free for Win 8 users
  • Key new features
    • Harmonized UX between all devices
    • Universal Windows Platform
      • Shared code and UI for desktop and mobile
      • Responsive design

Windows Mobile History

  • Windows CE
    • Based on Windows 95 code
    • UI developed separately (WinPad)
  • Pocket PC 2000
    • Released on April 19, 2000
    • Based on Windows CE 3.0
  • Pocket PC 2002
    • Released in October 2001
    • Meant to be similar to Windows XP
  • Windows Mobile 2003
    • Released on June 23, 2003
    • First release named Windows Mobile
    • Superseded by WindowsMobile 2003 SE on March 24, 2004
  • Windows Mobile 5
    • Released on May 2005
    • .NET Compact Framework 1.0 SP3
    • A lot of enchacements
  • Windows Mobile 6
    • Released on February 12, 2007
    • Similar in design to Windows Vista
  • Windows Mobile 6.1
    • Announced April 1, 2008
    • Minor upgrade to the WM 6 platform
  • Windows Mobile 6.5
    • Middle update between WM 6.1 andyet-to-be released Windows Mobile 7

Windows Phone 7 History

  • Windows Phone 7
    • Released on October 2010
    • Metro design
    • Windows CE-based architecture
  • Windows Phone 7.5 Mango
    • Release 2011
    • Mobile version of IE 9
    • Multi-tasking of third-party apps
  • Windows Phone 7.8 (few features of WP 8)
  • Windows Phone 8
    • Released on October 29, 2012
    • Flat user interface based on Metro
    • Windows NT kernel architecture (Win8)
  • Windows Phone 8.1
    • Released on April 14, 2014
    • Cortana, IE 11, HTML 5 videos
    • Same app model with Windows 8.1
      • Windows Universal Apps

Windows 10 Mobile

  • Windows 10 Mobile
    • Released on November 20, 2015
    • Converged operating system
    • Greater consistency with PC
    • New universal application platform
      • Allows one app to run onmultiple Windows 10 devices
    • Cortana, Edge, Same store as PC
    • Continuum – Connect it to display and keyboard and you have a PC in your pocket

Microsoft Foundation Classes

Windows forms

  • GUI class library
    • Replaces the MicrosoftFoundation Class library
    • The first C# UI framework
  • Event driven applications
  • Access to native WindowsUser Interface Controls
  • Better exposure of the Win32 API than MFC
  • The Control class
    • Location, size, color, font, text, click, drag

WPF

  • XAML based
    • Similar idea to HTML
  • Uses DirectX and Direct3D
  • Provides data binding
  • Rich media support
    • Vector and raster images, audio and video
  • Supports animations and templates
  • Silverlight is a subset of WPF for RIA
    • As replacement of Flash, later for mobile apps
    • Deprecated

History of Windows Universal

  • 2010 – Windows Phone 7
  • Mid-2011 – public beta of  Windows 8
  • Mid-2012 – publicly released Windows 8
    • Designed for touch
    • Microsoft’s OS was headed for the tablet
  • April 2014 – Windows Universal Apps
    • Convergence of Windows 8.1 and WP 8.1
    • Create applications that target the phone and tablet and share a single code base
  • July 2015 – Universal Windows Platform (UWP)
    • As part of Windows 10 and Windows 10 Mobile

Windows 8.1 Universal Concepts

  • Develop a universal Windows app that targets Windows and Windows Phone
    • Share: code, user controls, styles, strings, and other assets between the two projects
    • Linked files between projects
    • Conditional compilation with preprocessor directives

#if WINDOWS_APP

// run Windows specific code

#elif WINDOWS_PHONE_APP

// run Windows Phone specific code

#endif

Universal Windows Platform

  • Released 2015
  • Targets device families, not an OS
  • One Store for all devices
  • Common UI
    • Responsive controls
    • Same UI code used for both mobile and desktop

Unity3D

  • A cross-platformgame engine
    • PC, consoles,mobile devicesand websites
  • Can build Windows Universal apps
  • Supports C# and JavaScript
  • Can also be used for both 2D and 3D games
  • There are paid and free versions
  • telerikacademy.com/Courses/Courses/Details/235

Xamarin and Xamarin Forms

  • Uses C# code forcreating native apps
  • Xamarin
    • Shared C# logic
    • Separate UI for iOS, Android and Windows
  • By the creators of Mono
  • Xamarin Forms
    • Shares both UI and C# logic
    • Not free
      • 25$/month indie license
      • 999$/year business license

Apache Cordova

  • Apache Cordova is an open-source mobile application development framework
  • Enables building of hybrid mobile applications using JavaScript , HTML and CSS (Ruby as well)
    • Instead of often less-known languages such as Objective-C and Java
  • The Cordova applications are hybrid
    • All layout rendering is done via the web view instead of Objective-C or Java
    • Most of the HTML5 features are supported
  • Yet, as any hybrid app, Cordova apps do not have full access to the device API ( Camera , accelerometer , etc.)

Windows Bridges

  • Take existing code or project and convert it to a Universal Windows Application
    • Use a Microsoft interoperability library to integrate Microsoft services into your app
    • Test and debug from your preferred IDE
    • Publish through the Windows Store