Cross-Platform Mobile App Software Development in the Curriculum
|
|
|
- Hannah Hodges
- 10 years ago
- Views:
Transcription
1 Issues in Informing Science and Information Technology Volume 9, 2012 Cross-Platform Mobile App Software Development in the Curriculum Kyle Lutes Department of Computer and Information Technology, Purdue University, West Lafayette, Indiana, USA Abstract The Department of Computer and Information Technology at Purdue University in West Lafayette, Indiana has offered courses in app development for mobile devices (e.g. smartphones) beginning in Teaching mobile app development courses present many challenges to educators given that mobile device technologies are changing at a blistering pace, and there is no clear smartphone market leader. In this paper, I present my experience teaching such courses over the past 10 years, suggest a new approach that uses cross-platform development tools, and describe the pedagogy I am currently using in my CIT 355 Software Development for Mobile Devices 1 course. Finally, I include discussion on why I plan to continue using this pedagogy with crossplatform development tools. Keywords: Smartphone, mobility, apps, software development, programming, iphone, Android Introduction Since its introduction in 2007, the Apple iphone has changed our perception of how mobile phones should look and how consumers use them. At the same time the iphone has helped to make Apple the most valuable company in America. However, even with its runaway commercial success, the Apple iphone is not the current smartphone market share leader. Heavy competition from Google Android, Microsoft Windows Phone, and Research in Motion Blackberry, along with fickle consumers, keep the smartphone market from being dominated by a single platform. Recent statistics from market intelligence company comscore listed the U.S. Smartphone platform market share for January 2012 as 48.6% for Google Android, 29.% for Apple ios, 15.2% RIM Blackberry, and 4.4% Microsoft Windows Phone ( comscore Reveals, 2012). As an indicator of how quickly market share can change, the low market share for Windows Phone is predicted to increase to 20.9% by 2015 ( IDC: Android, 2012). No clear platform leader does present a conundrum for professional software developers as each mobile device platform maker provides software development tools for their platform. Because Material published as part of this publication, either on-line or in print, is copyrighted by the Informing Science Institute. Permission to make digital or paper copy of part or all of these works for personal or classroom use is granted without fee provided that the copies are not made or distributed for profit or commercial advantage AND that copies 1) bear this notice in full and 2) give the full citation on the first page. It is permissible to abstract these works so long as credit is given. To copy in all other cases or to republish or to post on a server or to redistribute to lists requires specific permission and payment of a fee. Contact [email protected] to request redistribution permission. the vendor s tools have little in common, an app that runs on multiple smartphone platforms must be written for each of those platforms. Choosing a mobile platform and toolset is especially difficult for educators who have little free time to become skilled on any one platform, let alone several. The Department of Computer and Information Technology at Purdue University in
2 Cross-Platform Mobile App Software Development West Lafayette, Indiana has offered courses in app development for mobile devices since Fall Each semester all students have been required to write code using the native app developer tools provided by the platform vendor. During the Fall 2011 semester I am trying a new approach of using cross-platform mobile app development tools which should allow students to develop apps for the platform of their choosing. In this paper, I discuss my experiences teaching with these tools including an overview of how apps can be built using these cross-platform technologies, our course pedagogy, the learning topics we covered, problems we encountered, and our recommendations for others considering the same approach. Background By design, the curriculum in the Department of Computer and Information Technology (CIT) at Purdue University in West Lafayette, Indiana is focused on the application of Information Technology (IT) rather than on theoretical computing. To this end, CIT s course learning objectives are designed so students learn through hands-on, practical experience. This characteristic differentiates our courses from those of the Computer Science (CS) or Electrical and Computer Engineering (ECE) departments, which are more theoretical based. The typical student progression through our curriculum includes a minimum background of three programming courses, including an introductory course using C#, a web application development course using HTML and C#, and an intermediate object-oriented programming course using Java (Harriger, Lutes, & Purdum, 2007). I have been teaching mobile app development courses for CIT beginning in the Fall 2002 semester. These courses, CIT 355 Software Development for Mobile Devices 1 and CIT 425 Software Development for Mobile Devices 2 (Lutes, 2004), have proven to be popular and have been offered nearly every semester since. The typical student is a junior or senior majoring in CIT. Occasionally undergraduate and graduate students from other related disciplines such as CS, ECE, and Computer Graphics also take the courses. Typical enrollment figures are between 12 and 20 students per semester. The enrollment numbers are limited by the number of workstations and mobile devices in our department s mobile computing laboratory. My original goal for developing these courses was simply to motivate more students to choose careers in software development. While CIT offers many elective computer programming courses, none seemed to offer the fun factor that we found when writing apps for mobile devices. CIT s mobile courses were first based on the Palm OS PDA platform, but were quickly changed to the Microsoft Pocket PC PDA platform as Pocket PCs were the clear market share leader in the handheld device space at the time. In addition to being the market share leader, the Pocket PC platform proved useful for pedagogical reasons. The toolset used to develop apps for this platform consisted of the C# programming language, the Visual Studio IDE, the.net Framework class libraries, and a Windows PC all tools our students had used in prerequisite courses. Perhaps more importantly, the tools provided by Microsoft were tightly integrated resulting in a very productive environment for software developers. The tools worked together so well that within two weeks into the semester, our students were over any learning curve associated with using the tools. Very little effort was spent figuring out the quirks and bugs with the tools. Instead, student time was devoted to actual app design and development giving the course the fun factor we had hoped for. From PDAs to Smartphones As commercial mobile device technologies evolved from PDAs to smartphones, so did the courses. We switched from the Microsoft Pocket PC platform to the Microsoft Windows Mobile 116
3 Lutes Smartphone platform, which used the same developer tools used for Pocket PC PDAs. With that change, my course become slightly harder to teach as new abilities were added to the phones, new topics were introduced to the courses, and the device profiles became fragmented. Overall, teaching the course was manageable and remained popular with students. Over the next few years we found the Windows Mobile smartphone platform becoming outdated and the students expressed interest in new mobile platforms, including the Apple iphone. A primary reason for teaching software development courses for mobile devices is because of student interest, and my experience has shown student interest in smartphone platforms is directly linked to popularity. Heavy competition between Apple ios, Google Android, Microsoft Windows Phone, and Research in Motion Blackberry, along with fickle consumers, keep the market from being dominated by a single smartphone platform. This market fluctuation and heavy competition is generally seen as good because it spurs innovation and will ultimately benefit consumers. However, no clear platform leader does present a conundrum for software developers. Each mobile device platform maker provides software development tools for their platform, but unfortunately for software developers, these tools have very little in common. For example, developers for Apple ios devices typically use the Objective-C programming language, Java is used for Google Android, and Windows Phone developers use Silverlight and C# for app development. Because the vendor s tools have little in common, an app that runs on multiple smartphone platforms must be written for each of those platforms. Choosing a platform and toolset for professional developers is difficult enough, but the choice is especially difficulty for educators who have little free time to become skilled on any one platform, let alone several. Seeking to provide an enjoyable experience for the students similar to that of the early Pocket PC-based courses, I have reworked the courses over the past few years to use many of the popular smartphone platforms. Smartphone App Development Options In this paper I use the term native app to describe an app written using the developer tools and APIs provided by the smartphone platform vendors (e.g. Google Android, Apple ios, Microsoft Windows Phone). Native apps typically are written using a compiled programming language (e.g. Java, Objective-C, C#), code class libraries from the vendors, a robust IDE, and UI design tools. Native apps have access to all platform specific features and are distributed through the vendor app stores. On the other end of the spectrum is mobile web apps. Mobile web apps are simply web sites designed with a UI optimized for mobile devices. Mobile apps are created using standards-based web browser technologies such as HTML, CSS, and interpreted JavaScript. Mobile web apps are not distributed from vendor app stores and are instead accessed using the web browser found on the mobile device. A native web app is a hybrid between a native app and a mobile web app. In this paper, I use the term native web app to describe an app that is written using HTML5, CSS, and JavaScript, but it compiled into a native app for distribution via the vendor app stores. From a user s perspective, there should be no difference between a native app and a native web app. What allows native web apps to be cross platform is that they exploit the fact that each of the major smartphone OSs contain a mobile browser that can run HTML5, CSS, and JavaScript code, and use local device storage. Open-source libraries and tools provide a shell project with the main UI being a single web browser widget that processes the HTML5, CSS, and JavaScript code packaged into the native app. 117
4 Cross-Platform Mobile App Software Development RIM Blackberry The Spring 2009 semester of CIT 425 was taught using the RIM Blackberry smartphone platform. For pedagogical reasons, the Blackberry was a good choice. We were loaned Blackberry smartphone devices from RIM, RIM provided some instructional materials, the software development tools are free and run on Windows workstations, and the development environment is based on the Java programming language, of which CIT students have had prior experience. Although the class was well received, common student complaints included: the development environment being regarded as too similar to Windows Mobile devices, yet more cumbersome to use; and students were not interested in the Blackberry platform as few students owned Blackberry devices because of its perception of a business enterprise smartphone platform. Apple ios The Fall 2010 semester of CIT 425 was taught using the Apple ios platform that is used for iphones, ipads, and ipods. Even though the student demand for an iphone programming course was high, I was hesitant to teach such a course because of several perceived obstacles (Lutes, Shanklin, 2012). Developing for the iphone requires using Macintosh workstations. Macintosh workstations use the Macintosh Operating System (Mac OS). While many students, and a few faculty, own and use Mac computers, no prerequisite courses require any working knowledge of Mac computers. All prior development for mobile devices had been done in a Windows PC environment. In fact, there was no Macintosh computing laboratory within our department. Software development for iphones also would require instructors and students to learn new development tools the Xcode IDE, Interface Builder, new class libraries and SDKs, and the Objective-C programming language. Finally, obtaining handheld device hardware would be problematic. For each semester the mobile courses have been offered, I have always provided loaner devices for each student to use. While the platform vendors provide excellent software simulators for testing and debugging, real user experience, with all the trials that this includes, can only be found using actual devices. For example, touch-based UIs, performance, sensor interaction, how an algorithm affects battery life, and data communication via phone carrier network all behave much differently on real devices compared with simulators running on a PC. Through several sources, I obtained funding to equip our computer lab with the necessary desktop and mobile device hardware and software. The course began with a high level of excitement, but little enthusiasm remained when the semester ended. The very high learning curve associated with the ios developer tools sapped much of the fun I originally hoped for and have seen in previous semesters. In fact, my opinion is that a minimum of two semesters is required for students to thoroughly grasp the fundamentals of ios app development using the native app developer tools. Windows Phone 7 Hoping to achieve the level of productivity we saw from our students with the Windows Mobile platform, we tried the newly released Windows Phone platform during the Spring 2011 semester of CIT 355. This new platform from Microsoft had been receiving good reviews and the primary app developer tools consisted of the familiar C#, Visual Studio,.NET class library, and a Windows PC. Additionally, Microsoft loaned our department unlocked phones to use in our classes. In the end, the Windows Phone platform proved unpopular for students. Although students were skilled with C# and Visual Studio, user interfaces (UIs) for native Windows Phone apps are de- 118
5 Lutes veloped with Microsoft Silverlight and the Microsoft Expression Blend UI design tool. At the time, very little documentation could be found for Windows Phone app development, and once again a steep learning curve was present in the form of the Silverlight and Expression Blend tools. This learning curve greatly increased development time and so reduced the complexity of the apps that could be developed within the confines of a single academic semester. The learning curve, coupled with the low student interest in Windows Phone caused me to once again to rethink the smartphone platform I use in my courses. Cross-Platform Mobile App Software Development Because students reported an equal interest in developing apps for ios and for Android, I decided to change the CIT 355 course once again for the Fall 2011 semester. Rather than requiring the students to use the native app developer tools supplied by the platform vendors, we are using cross-platform mobile app development tools and allowing students to develop apps for the platform of their choosing. Unlike failed cross-platform development tools of the past, such as J2ME, the current toolset actually holds promise for a workable cross-platform mobile app development environment. Another difference is that I did not provide a smartphone device for each student. Instead, students were encouraged to use their own personal smartphones. If they did not own a suitable device, they could check out an ipod Touch, ipad, or Windows Phone device from my mobile computing lab. Course Pedagogy For the Fall 2011 semester, I followed the same basic strategy I have used in previous semesters with other smartphone platforms. I typically do not require a textbook for these mobile courses, and this semester was no exception. The state of the art in mobile app development is changing at a blistering pace and no current industry book, let alone a college textbook, contains current relevant information. Instead, I provide the students with a list of learning objectives for each unit and require readings from various websites found online. As for assessments, essential app development topics are covered and each week a programming assignment is given based on that week s topic. These programming assignments are graded by myself (or sometimes a teaching assistant) by running the app and reviewing the source code. Weekly quizzes are given, as well as a midterm and final exam. Additionally, the students are required to complete a semester project of their choosing which can consist of either the development of a non-trivial mobile app, or a research paper on a topic related to mobile computing. Students can choose to work alone, or work in a team of their choosing. The following sections describe the topics we covered in each unit, as well as my impressions of teaching that unit. Differences compared with desktop app development We start the course by discussing attributes unique to smartphone app development. Today s college students have likely only used computers with gigabytes of RAM, multiple overpowered CPUs, terabytes of disk space, multiple large LCD monitors, and are always connected to the Internet via a high speed network. To give the students a different way of thinking of app development, we discuss challenges associated with mobile device development including: single-tasking OSs; limited memory; tiny screens; battery power; alternative input/output options such as touch, voice, and soft keyboards; interaction with device hardware sensors such as accelerometers, GPS, gyroscopes, and cameras; 119
6 Cross-Platform Mobile App Software Development the importance of conserving data transmission both to preserve battery power and save the consumer money on expensive data plans; and finally vendor control over the platform ecosystems. Platform developer tool options In this unit, the students research smartphone market share, and what tools are used for app development for the top platforms. New this semester was a discussion of using the cross-platform technologies of HTML5, CSS, and JavaScript to develop native web apps, as well as the pros and cons of native apps vs. web apps vs. native web apps. We discuss how hardware companies are continually improving processing speed in smartphones which can allow interpreted JavaScript code to perform at acceptable speeds, and the fact that both Apple and Google have used the WebKit layout engine in their mobile browsers which has made cross platform development between ios and Android not only possible, but also practical. We then discuss how open-source code libraries such as PhoneGap ( can be used to compile a web app into a native app, which then allows the app to take advantage of some of the hardware unique to the smartphone and additionally allows an app to be distributed through the vendor app stores. The pros and cons of using third-party developer tools options, such as Appcelerator ( and MonoTouch ( are discussed. For pedagogical and personal bias reasons, students in my courses are not allowed to use 3rd-party tools when doing weekly homework assignments. My arguments against using these tools include: they are typically immature and buggy; 3rd-party tool companies historically lack longevity; they might have high licensing fees; they tend to be targeted at web designers rather than application coders; and most importantly, I feel I should be encouraging students to learn essential software development skills rather than how to use a vendor product. However, students can elect to further investigate 3rd-party tools such as these for their semester project assignment. A first Hello World app The purpose of this unit is to get the students familiar with the essentials necessary to develop a trivial app for their target platform. In previous semesters, this assignment consisted of installing various IDEs and simulators, understanding the need of the many project files needed, developing a simple user interface, and compiling and running the app on a simulator. Once the students can complete these steps, they know they have their development environment set up correctly. For the Fall 2011 semester, this topic was much shorter than previous semesters because the developer tools used are the same rudimentary tools that can be used to develop trivial web sites. A text editor for typing code and web browser for testing are all that is required. Students were allowed to use their favorite text editor and develop on the desktop OS of their choosing. As all students had experience with basic web site development, the file structure of HTML and CSS documents were given a quick review. Students who planned on ultimately developing for the iphone were instructed to test on the desktop Safari web browser and students planning for Android apps were instructed to test on Google s Chrome browser. Programming language overview To add functionality to apps, the JavaScript programming language was used. While all students had done some work with JavaScript in previous semesters to add minimum functionality to web sites, I felt it necessary to teach the essentials of JavaScript from a programming language perspective. Topics covered included: variable declaration and scope; data types and type conversions; decisions; loops; functions; arrays; math functions; OOP; and interacting with DOM elements. 120
7 Lutes Debugging No program is ever written without having some errors that have to be found and corrected, so debugging techniques were next covered. It was at this stage that frustrations began to emerge. Students were used to using modern tools and had to be shown old-school ways of designing, coding, and testing applications. Modern IDEs display color-coded syntax with code auto completion simplifying the task of typing code. Compilers easily identify syntax errors. Students were used to using Visual Studio to perform interactive debugging by setting breakpoints and stepping through code line by line. Additionally, students were used to using the Visual Studio Forms Designer tool to easily layout a UI by dragging and dropping UI widgets onto a form. The HTML5, CSS, and JavaScript style of development was new to most students and reckoned back to programming strategies of the 1980s. Students quickly found out that using a text editor that at least had color-coded syntax display for HTML, CSS, and JavaScript was helpful. However, UIs had to be designed by altering plain-text HTML and CSS statements, then loading in a browser to see the results. Additionally, because JavaScript is not compiled (and is case sensitive to boot), simple syntax errors were only found by running the code in a browser. If it weren t for the fact that the Safari and Chrome web browsers have developer tools built-in that allow breakpoints to be set in JavaScript statements, variable contents to be examined, and statements to be executed line-by-line, I feel many students would never have been able to find the simple coding mistakes that would be discovered in seconds when using a more mature and robust IDE. Persisting data HTML5 provides two methods for data storage that are supported on both ios and Android web apps. Local storage can be used for saving the values of a few simple string-type variables. For more complex datasets, the SQLite RDBMS engine can be used. Our students were able to use both methods satisfactorily. However, simple sequential file access is not supported as apps are not allowed access to the file system. This lack of access to simple file structures is unfortunate since storing data in an RDBMS on a smartphone requires additional coding in the form of logic to dynamically generate DDL and SQL statements, is often overkill for simple datasets, and is difficult to code and test using JavaScript. Perhaps more importantly is the inability of an app to know when it is ending so that it can persist state information, and then load that state information the next time the app is started. When an app cannot reliably be informed it is closing, its only alternative is to save state information whenever the state information changes. This time consuming process is normally not advised on resource constrained device such as a smartphone and especially one written in a programming language being interpreted at runtime by a web browser control. Deployment Probably the most frustrating part of developing for ios devices is compiling and deploying to an actual hardware device. Our development cycle consisted of first debugging and testing an app using a desktop web browser. Once it was determined the app functioned reasonably correct, the HTML, CSS, and JavaScript source code files were copied to a web server. The app was then accessed from a device s web browser and tested again to ensure it would run on an actual device. The next step was to compile the HTML, CSS, and Javascript into a native web app using the PhoneGap tools. If the build was successful, the app could be deployed to the student s device. However, because Apple controls which apps can be deployed to ios devices, this process is non-trivial. A complex sequence of registering the device, registering the developer, registering the app, and registering developer s computer with Apple must be followed. When this process 121
8 Cross-Platform Mobile App Software Development fails, it is very difficult to discover why, which results in many hours of trial and error attempts by the students. Client/Server communication Many mobile apps benefit by sending and receiving data to and from a server. Client/server communication can be accomplished in mobile web apps by using the XMLHttpRequest object to make simple text-based HTTP requests. While other protocols can be used for network communications, I prefer the simplicity and scalability of HTTP. Additionally, our students have had experience developing server-side code to handle HTTP requests in prerequisite courses to send dynamically generated HTML to a web browser. To test server communication, students were required to develop a simple chat program that allowed at least two users to send text messages to each other through a server. While this programming task ultimately worked, we at first feared client/server communication would not be possible once the apps were deployed to the smartphones because the specification for the XMLHttpRequest object states that, for security reasons, cross-app HTTP requests were not allowed. Fortunately, the mobile web browsers we tested don t enforce this restriction. Graphics and game programming I have found that students enjoy developing games and so have included units on developing 2D casual games in my smartphone classes. We were worried that the performance and features of the JavaScript-based apps wouldn t allow this topic to be covered in a reasonable manner. However, we were pleasantly surprised to learn that it works very well. JavaScript has timer functions that allow a simple game loop to execute 30 times a second. HTML5 contains a Canvas element that comes with a reasonable set of graphical functions for drawing simple 2D shapes and text. Similarly, raster graphics can be manipulated from JavaScript allowing games to be implemented using sprite sheets. Multimedia We attempted to add sound to our 2D casual games but here again we found the HTML5, CSS, and JavaScript environment to be lacking. HTML5 does contain an Audio tag that can be used to play audio files such as MP3s and WAVs, however our experience showed the performance is not quite good enough to use for sound effects for an interactive game. Additionally, audio files could only be played as the result of a user action (such as touching the screen) and so could not be reliably used from within a game loop to indicate some event has occurred (such as two sprites colliding). Interfacing with device hardware Interfacing with device hardware is one of the unique aspects of developing apps for mobile devices. The inclusion of many sensors in the phone hardware make new categories of applications possible. Because HTML5, CSS, JavaScript are primarily used as cross-platform web app development technologies, they were not designed to directly support communicating with the sensors commonly found in smartphones. Fortunately, the PhoneGap API does provide much of this missing functionality. PhoneGap libraries allow JavaScript code to interact with many (but not all) common sensors including: the accelerometer; compass; GPS; cameras; microphone; network connection status; and dedicated hardware buttons (e.g. volume up and down). Students are given a programming assignment to implement sensor input in a non-trivial way. 122
9 Lutes Advanced UI design and development Developing an app using HTML5, CSS, and JavaScript and getting it to run on a smartphone is quite doable. Making that same app have the same look and feel of a native app proves quite time consuming. In fact, this unit caused us the most problems and because it was covered early in the semester, I had serious doubts about continuing the course using these technologies. Developers use many tricks to make a native web app appear with the same UI as a native app. Most often these tricks are in the form of open source JavaScript frameworks, highly detailed CSS styling, and bitmap graphic slices used for UI object backgrounds. Based on our research into these frameworks, we can determine that mimicking the look of native apps is highly desirable for many developers, yet clearly hard to do. I base my opinion on the sheer number of frameworks available and the many differing opinions on how to achieve what should be simple effects. In fact, we found over 80 3rd-party JavaScript code libraries and related frameworks available that profess to simplify app development. Projects such as Sencha Touch, JQuery Mobile, and NimbleKit all can be used to help a native web app look like a native app. However, we found subpar performance, sketchy reliability, and limited technical support. These frameworks also illustrate how broken the toolset is. After all, GUI widget kits have been available for over 25 years in one form or another. If the state of the art in mobile app development requires developers to hack together a UI using many open source, free, perhaps unsupported, JavaScript code libraries and image files to do things as simple as gradient colored buttons, scrolling lists, and animated page transitions, the software development field is clearly moving in the wrong direction. In future semesters, I plan to de-emphasize the desire to make our native web apps appear the same as native apps and will instead use simple HTML5, CSS, and JavaScript drawing techniques to present an attractive UI that may not look exactly the same as a native app, but proves more than satisfactory. I also intend to move the advanced UI design and development topics to late in the semester so that students can achieve a level of success developing usable mobile apps, before resorting to the messy matter of reviewing, testing, and coding with these 3rd-party libraries. Conclusion The smartphone market share continues to fluctuate providing a problem for software developers as native app development requires learning a different toolset for each smartphone platform. Educators should consider teaching mobile app development courses, but choosing a smartphone platform is an especially difficult choice for faculty who don t have the free time required to learn the developer tools for any given platform, and design and deliver a course that uses those tools. By utilizing the web development technologies of HTML5, CSS, and JavaScript along with native web app developer tools such as PhoneGap, I feel a reasonable cross-platform toolset and mobile app development course is both feasible for the instructor and fun for the students. My experience using these cross-platform tools during the Fall 2011 semester were full of difficulties and left a lot to be desired from the software development tools when compared with the developer tools available for more mature computing platforms. Still, students were able to make more progress than what was experienced using the native app development tools for ios, RIM Blackberry, and Microsoft Windows Phone. An added bonus is that students were allowed to develop apps for the smartphone platform of their choosing. Based on my experiences during the Fall 2011 semester, I am continuing the same pedagogy in the CIT 355 course during the Spring 2012 semester. I feel if make a few adjustments to how topics are presented, the course can once 123
10 Cross-Platform Mobile App Software Development again provide the fun factor I originally hoped to get from teaching mobile app development courses. References comscore Reveals the Top Smartphone Platform Share. (2012). Retrieved March 19, 2012, from: IDC: Android, Windows Phone to lead smartphone market in (2012). Retrieved March 19 th, 2012 from: Harriger, A., Lutes, K., & Purdum, J. (2007). Designing Curricula to Teach Concepts and Increase Employability. Proceedings of American Society for Engineering Education, Lutes, K. (2004). Software development for mobile computers. IEEE Pervasive Computing, July- September Lutes, K., & Shanklin, T. (2012). So you want to teach an IPhone programming course? Computers in Education Journal, 3(1), Biography Kyle Lutes is an Associate Professor for the Department of Computer & Information Technology (CIT) at Purdue University. Kyle joined the department in 1998 and is the chair of the department s software development curriculum. His teaching and scholarly interests cover a broad range of software development areas including software applica- tions for mobile devices, data-centered application development, and software entrepreneurialism. He has authored/co-authored numerous papers and two college textbooks on various software development- related topics. Prior to his current appointment at Purdue, Kyle worked for 16 years as a software engineer and developed systems for such industries as banking, telecommunications, publishing, healthcare, athletic recruiting, retail, and pharmaceutical sales. In addition to his teaching and research duties at Purdue, Kyle is the founder of DelMar Information Technologies, LLC. His company specializes in custom software development for mobile (smartphones and tablets), enterprise, web, client/server and desktop architectures. DelMar Information Technologies also sells many software products and services, including training classes. 124
Developing Applications for ios
Developing Applications for ios Lecture 1: Mobile Applications Development Radu Ionescu [email protected] Faculty of Mathematics and Computer Science University of Bucharest Content Key concepts
Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013
Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone
How To Teach A Mobile Operating System To An It Project
Mobile Application Development: Essential New Directions for IT Chia-Chi Teng, Richard Helps School of Technology, Brigham Young University Abstract As mobile devices have become more powerful and pervasive,
How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE
How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE Solutions Introduction: Enterprises around the globe are mobilizing mission-critical services. Businesses get streamlined due
SYST35300 Hybrid Mobile Application Development
SYST35300 Hybrid Mobile Application Development Native, Web and Hybrid applications Hybrid Applications: Frameworks Native, Web and Hybrid Applications Mobile application development is the process by
Lecture 4 Cross-Platform Development. <lecturer, date>
Lecture 4 Cross-Platform Development Outline Cross-Platform Development PhoneGap Appcelerator Titanium Xamarin References Native Development Represents the baseline for comparisons You
Building Mobile Applications Creating ios applications with jquery Mobile, PhoneGap, and Drupal 7
Building Mobile Applications Creating ios applications with jquery Mobile, PhoneGap, and Drupal 7 Jeff Linwood 1st Chapter, Early Release Introduction... 3 Prerequisites... 3 Introduction to Mobile Apps...
CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application
BACKBONE.JS Sencha Touch CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application A RapidValue Solutions Whitepaper Author: Pooja Prasad, Technical Lead, RapidValue Solutions Contents Executive
The Suitability of Native Application for University E-Learning Compared to Web-Based Application
The Suitability of Native Application for University E-Learning Compared to Web-Based Application Maya Novia Sari 1, Noor Azian Bt. Mohamad Ali 2 Department of Information Systems, Kulliyyah of Information
Mobile Development Frameworks Overview. Understand the pros and cons of using different mobile development frameworks for mobile projects.
Mobile Development Frameworks Overview Understand the pros and cons of using different mobile development frameworks for mobile projects. Mobile Solution Frameworks One of the biggest technological decisions
Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application
DATABASES AND INFORMATION SYSTEMS H.-M. Haav, A. Kalja and T. Robal (Eds.) Proc. of the 11th International Baltic Conference, Baltic DB&IS 2014 TUT Press, 2014 215 Issues of Hybrid Mobile Application Development
HYBRID APPLICATION DEVELOPMENT IN PHONEGAP USING UI TOOLKITS
HYBRID APPLICATION DEVELOPMENT IN PHONEGAP USING UI TOOLKITS RAJESH KUMAR Technical Lead, Aricent PUNEET INDER KAUR Senior Software Engineer, Aricent HYBRID APPLICATION DEVELOPMENT IN PHONEGAP USING UI
Chapter 1. Introduction to ios Development. Objectives: Touch on the history of ios and the devices that support this operating system.
Chapter 1 Introduction to ios Development Objectives: Touch on the history of ios and the devices that support this operating system. Understand the different types of Apple Developer accounts. Introduce
Computer Science Course Descriptions Page 1
CS 101 Intro to Computer Science An introduction to computer science concepts and the role of computers in society. Topics include the history of computing, computer hardware, operating systems, the Internet,
Native, Hybrid or Mobile Web Application Development
Native, Hybrid or Mobile Web Application Development Learn more about the three approaches to mobile application development and the pros and cons of each method. White Paper Develop a Mobile Application
Article. One for All Apps in HTML5
One for All Apps The boom of smartphones and tablets in the consumer sector creates new problems for developers of industrial Apps: They have to build Apps quickly that run on any type of smartphone and
Developing and deploying mobile apps
Developing and deploying mobile apps 1 Overview HTML5: write once, run anywhere for developing mobile applications 2 Native app alternative Android -- Java ios -- Objective-C Windows Mobile -- MS tools
Enterprise Mobile Application Development: Native or Hybrid?
Enterprise Mobile Application Development: Native or Hybrid? Enterprise Mobile Application Development: Native or Hybrid? SevenTablets 855-285-2322 [email protected] http://www.seventablets.com
Syllabus INFO-GB-3322. Design and Development of Web and Mobile Applications (Especially for Start Ups)
Syllabus INFO-GB-3322 Design and Development of Web and Mobile Applications (Especially for Start Ups) Spring 2015 Stern School of Business Norman White, KMEC 8-88 Email: [email protected] Phone: 212-998
Mobile Learning Application Based On Hybrid Mobile Application Technology Running On Android Smartphone and Blackberry
Mobile Learning Application Based On Hybrid Mobile Application Technology Running On Android Smartphone and Blackberry Djoni Haryadi Setiabudi, Lady Joanne Tjahyana,Winsen Informatics Department Petra
Development of mobile applications for multiple platforms
Harwell Innovation Centre Building 173 Curie Avenue Harwell Oxford Didcot Oxfordshire, OX11 0QG +44 1235 838 531 www.redskiessoftware.com Development of mobile applications for multiple platforms By Darren
COMPUTER SCIENCE (AS) Associate Degree, Certificate of Achievement & Department Certificate Programs
A Course of Study for COMPUTER SCIENCE (AS) Associate Degree, Certificate of Achievement & Department Certificate Programs The field of computer science leads to a variety of careers that all require core
Mobile App Infrastructure for Cross-Platform Deployment (N11-38)
Mobile App Infrastructure for Cross-Platform Deployment (N11-38) Contents Introduction... 2 Background... 2 Goals and objectives... 3 Technical approaches and frameworks... 4 Key outcomes... 5 Project
Cross-Platform Mobile Apps Solution
Cross-Platform Mobile Apps Solution Prepared by Kevin Mullins CEO and Chief Developer Appracatappra, LLC. 709 Gale Street #8 Seabrook, TX 77586 [email protected] http://appracatappra.com Table
Whitepaper. Trans. for Mobile
Whitepaper Trans forming Your Vision Into Winning Solutions How to Save 50%, 75% or more for Mobile Appp Development www.baytechservices.com Background As mobile access has transitioned from a nice to
Smartphone Application Development using HTML5-based Cross- Platform Framework
Smartphone Application Development using HTML5-based Cross- Platform Framework Si-Ho Cha 1 and Yeomun Yun 2,* 1 Dept. of Multimedia Science, Chungwoon University 113, Sukgol-ro, Nam-gu, Incheon, South
Course Descriptions. preparation.
Course Descriptions CS 101 Intro to Computer Science An introduction to computer science concepts and the role of computers in society. Topics include the history of computing, computer hardware, operating
Mobile Game and App Development the Easy Way
Mobile Game and App Development the Easy Way Developed and maintained by Pocketeers Limited (http://www.pocketeers.co.uk). For support please visit http://www.appeasymobile.com This document is protected
Native mobile apps: The wrong choice for business?
Native mobile apps: The wrong choice for business? Why businesses should think twice before building native mobile applications A white paper from Introduction Native mobile applications are popular with
QML and JavaScript for Native App Development
Esri Developer Summit March 8 11, 2016 Palm Springs, CA QML and JavaScript for Native App Development Michael Tims Lucas Danzinger Agenda Native apps. Why? Overview of Qt and QML How to use JavaScript
Mobile Phones Operating Systems
Mobile Phones Operating Systems José Costa Software for Embedded Systems Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2015-05-28 José Costa (DEI/IST) Mobile Phones Operating
CROSS PLATFORM DEVELOPMENT The HTML5 Way
CROSS PLATFORM DEVELOPMENT The HTML5 Way A Whitepaper by Rahul Joshi Business Analysis & Consulting Division Abstract With over half a dozen mobile platforms out there and more in line to come up, it has
Syllabus INFO-UB-3322. Design and Development of Web and Mobile Applications (Especially for Start Ups)
Syllabus INFO-UB-3322 Design and Development of Web and Mobile Applications (Especially for Start Ups) Fall 2014 Stern School of Business Norman White, KMEC 8-88 Email: [email protected] Phone: 212-998
Lee Barnes, CTO Utopia Solutions. Utopia Solutions
Mobile Technology Testing Are You Ready? Lee Barnes, CTO Utopia Solutions Agenda 1. Mobile Testing Challenges 2. Mobile Testing Practices 3. Mobile Test Automation 4. Summary and Q & A Mobile Testing Challenges
Cross-Platform Development: Target More Platforms and Devices with a Minimal Amount of Source Code
Cross-Platform Development: Target More Platforms and Devices with a Minimal Amount of Source Code What is cross-platform development? Cross-platform development produces a single code base that can be
Bridging the Gap: from a Web App to a Mobile Device App
Bridging the Gap: from a Web App to a Mobile Device App or, so how does this PhoneGap* stuff work? *Other names and brands may be claimed as the property of others. 1 Users Want Mobile Apps, Not Mobile
Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) <lecturer, date>
Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) Outline Smartphones Developing Mobile Applications Android ios BlackBerry Windows Mobile References Cell phones
Choosing a Mobile Application Development Approach
ASEAN Journal of Management & Innovation Vol. 1 No. 1, 69 74 by Stamford International University DOI: 10.14456/ajmi..4 ajmi.stamford.edu Choosing a Mobile Application Development Approach Phyo Min Tun
Statement of Direction
Mobile First: Taking Mobile CRM to the Next Level 1 January 2013 Mobile First: Taking Mobile CRM to the Next Level Whitepaper Mobile First: Taking Mobile CRM to the Next Level 2 Table of Contents Notes...
OpenEdge and Mobile Applications
PUG-Norway OpenEdge and Mobile Applications Gus Björklund. Wizard. Progress. PUG-Norway, Oslo, Norge, tirsdag 05.mars 2013 FinPUG, S/S Borea, Turku, Finland, 7-8.3.2013 Reminder: Turn your cell phones
A Modular Approach to Teaching Mobile APPS Development
2014 Hawaii University International Conferences Science, Technology, Engineering, Math & Education June 16, 17, & 18 2014 Ala Moana Hotel, Honolulu, Hawaii A Modular Approach to Teaching Mobile APPS Development
Cross Platform Applications with IBM Worklight
IJCSNS International Journal of Computer Science and Network Security, VOL.15 No.11, November 2015 101 Cross Platform Applications with IBM Worklight P.S.S.Vara Prasad and Mrs.S.Durga Devi Dept. of IT
Mobile web apps: The best option for business? A whitepaper from mrc
Mobile web apps: The best option for business? A whitepaper from mrc Introduction Mobile apps have finally reached the point where businesses can no longer afford to ignore them. Recent surveys and studies
HTML5 as the Core Technology of the Mobile Enterprise
Worklight - Extend Your Business White Paper HTML5 as the Core Technology of the Mobile Enterprise Contents Intro... 4 Strategic Considerations... 4 Commitment from Mobile Vendors... 4 Active Standardization
Developing Cross-platform Mobile and Web Apps
1 Developing Cross-platform Mobile and Web Apps Xiang Mao 1 and Jiannong Xin * 2 1 Department of Electrical and Computer Engineering, University of Florida 2 Institute of Food and Agricultural Sciences
Platform Independent Mobile Application Development
International Journal of Information and Computation Technology. ISSN 0974-2239 Volume 4, Number 5 (2014), pp. 527-532 International Research Publications House http://www. irphouse.com /ijict.htm Platform
WEB, HYBRID, NATIVE EXPLAINED CRAIG ISAKSON. June 2013 MOBILE ENGINEERING LEAD / SOFTWARE ENGINEER
WEB, HYBRID, NATIVE EXPLAINED June 2013 CRAIG ISAKSON MOBILE ENGINEERING LEAD / SOFTWARE ENGINEER 701.235.5525 888.sundog fax: 701.235.8941 2000 44th St. S Floor 6 Fargo, ND 58103 www.sundoginteractive.com
Module Title: Software Development A: Mobile Application Development
Module Title: Software Development A: Mobile Application Development Module Code: SDA SDA prerequisites: CT1, HS1, MS001, CA Award of BSc. In Information Technology The Bachelor of Science in Information
Navigating the Mobile App Development Landscape
Navigating the Mobile App Development Landscape You keep hearing about user trends towards mobile devices; your 10- year old knows your ipad better than you, and so you figure that your business should
HTML5. Turn this page to see Quick Guide of CTTC
Programming SharePoint 2013 Development Courses ASP.NET SQL TECHNOLGY TRAINING GUIDE Visual Studio PHP Programming Android App Programming HTML5 Jquery Your Training Partner in Cutting Edge Technologies
HTML5 the new. standard for Interactive Web
WHITE PAPER HTML the new standard for Interactive Web by Gokul Seenivasan, Aspire Systems HTML is everywhere these days. Whether desktop or mobile, windows or Mac, or just about any other modern form factor
COMPUTER SCIENCE (AS) Associate Degree, Certificate of Achievement & Department Certificate Programs
A Course of Study f COMPUTER SCIENCE (AS) Associate Degree, Certificate of Achievement & Department Certificate Programs The field of computer science leads to a variety of careers that all require ce
Cross-Platform Phone Apps & Sites with jquery Mobile
Cross-Platform Phone Apps & Sites with jquery Mobile Nick Landry, MVP Senior Product Manager Infragistics Nokia Developer Champion [email protected] @ActiveNick www.activenick.net Who is ActiveNick?
Computer Science. 232 Computer Science. Degrees and Certificates Awarded. A.S. Degree Requirements. Program Student Outcomes. Department Offices
232 Computer Science Computer Science (See Computer Information Systems section for additional computer courses.) We are in the Computer Age. Virtually every occupation in the world today has an interface
Native, web or hybrid mobile-app development
IBM Software Thought Leadership White Paper WebSphere Native, web or hybrid mobile-app development 2 Native, web or hybrid mobile-app development Contents 2 Introduction 2 Introducing the approaches 2
Leveraging Partners and Open Source Technology in your Mobility Strategy. emids webinar Thursday, August 11, 2011 1:00 pm 2:00 pm EDT
Leveraging Partners and Open Source Technology in your Mobility Strategy emids webinar Thursday, August 11, 2011 1:00 pm 2:00 pm EDT Presenters Jerry Buchanan Account Director emids Technologies Ambarish
Technology Services...Ahead of Times. Enterprise Application on ipad
Technology Services...Ahead of Times Enterprise Application on ipad Diaspark, 60/2 Babu Labhchand Chhajlani Marg, Indore M.P. (India) 452009 Overview This white paper talks about the capabilities of ipad
The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, 2012 10.5682/2066-026X-12-115
The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, 2012 10.5682/2066-026X-12-115 TRADE-OFFS IN DEVELOPING HIGHLY INTERACTIVE MLEARNING CONTENT USING
RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE. CISY 105 Foundations of Computer Science
I. Basic Course Information RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE CISY 105 Foundations of Computer Science A. Course Number and Title: CISY-105, Foundations of Computer Science B. New
Best practices building multi-platform apps. John Hasthorpe & Josh Venman
Best practices building multi-platform apps John Hasthorpe & Josh Venman It s good to have options Android 4.3 10 Tablet Windows 7 14 Laptop Windows 7 15 Laptop Mac OSX 15 Laptop ios 6 4.6 Phone Android
ios SDK possibilities & limitations
ios SDK possibilities & limitations Licensing Licensing Registered as an Apple Developer (free) Access to XCode3 and ios SDK ios, Mac and Safari Dev Center Resources No possibility of distribution of developed
ipad, a revolutionary device - Apple
Flash vs HTML5 ipad, a revolutionary device Apple Lightweight and portable Sufficient battery life Completely Wireless Convenient multitouch interface Huge number of apps (some of them are useful) No Flash
Retool your HTML/JavaScript to go Mobile
Retool your HTML/JavaScript to go Mobile @atdebonis 2008 Troy Web Consulting LLC All rights reserved 1 Overview What is PhoneGap? What is it good for? What can you use with it? Device Features Dev Tools
Mobile App Development Using App Inventor
Mobile App Development Using App Inventor October 2013 Mahsa Mohaghegh and Mobile Development Team @ Unitec The Post-PC Era 2007: Apple releases ios on the iphone 2008: Google releases Android on the HTC
Mobile App Design and Development
Mobile App Design and Development The course includes following topics: Apps Development 101 Introduction to mobile devices and administrative: Mobile devices vs. desktop devices ARM and intel architectures
Choosing a Mobile Strategy for Your Business
Choosing a Mobile Strategy for Your Business Michael Slater, CEO [email protected] 888.670.6793 www.webvanta.com 1 Welcome to the Webinar Thanks for joining us! Ask questions at any time in the chat
Cross-Platform Development
2 Cross-Platform Development Cross-Platform Development The world of mobile applications has exploded over the past five years. Since 2007 the growth has been staggering with over 1 million apps available
Mobile App Development
Mobile App Development Spring 2013 Agenda Practical information Introduction to mobile development Introduction to Android development 1 About us Jacob Avlund, course manager Kasper Østerbye, teacher Charlotte
White Paper INTRODUCTION. In mobile development, there are three different types of applications: PRE-SMARTPHONE MOBILITY NATIVE MOBILE APPLICATIONS
INTRODUCTION The mobile development arena is growing very quickly, especially in the business-to-consumer (B2C) space. We are also seeing significant growth in business-to-business (B2B) enterprise applications
Course Descriptions. CS 101 Intro to Computer Science
Course Descriptions CS 101 Intro to Computer Science An introduction to computer science concepts and the role of computers in society. Topics include the history of computing, computer hardware, operating
How To Use Titanium Studio
Crossplatform Programming Lecture 3 Introduction to Titanium http://dsg.ce.unipr.it/ http://dsg.ce.unipr.it/?q=node/37 [email protected] 2015 Parma Outline Introduction Installation and Configuration
Keywords Online Aptitude Test, Android, IOS, Cross Platform mobile application Development.
Volume 4, Issue 1, January 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Code Converter
WHITEPAPER. Pros & cons of native vs cross-platform mobile development with Xamarin
WHITEPAPER Pros & cons of native vs cross-platform mobile development with Xamarin Native or Cross-Platform Mobile Development? As the world is getting rapidly digitalized and global mobile data traffic
Middleware- Driven Mobile Applications
Middleware- Driven Mobile Applications A motwin White Paper When Launching New Mobile Services, Middleware Offers the Fastest, Most Flexible Development Path for Sophisticated Apps 1 Executive Summary
A Review of Different Comparative Studies on Mobile Operating System
Research Journal of Applied Sciences, Engineering and Technology 7(12): 2578-2582, 2014 ISSN: 2040-7459; e-issn: 2040-7467 Maxwell Scientific Organization, 2014 Submitted: August 30, 2013 Accepted: September
A Beginners Guide To Responsive, Mobile & Native Websites 2013 Enhance.ie.All Rights Reserved.
A Beginners Guide To Responsive, Mobile & Native Websites 2013 Enhance.ie.All Rights Reserved. 1 The Mobile Web refers to access to the world wide web, i.e. the use of browser-based Internet services,
MOBILIZE ME! APPS FOR MOBILE DEVICES OR MOBILE WEB APPS TECHNOLOGIES, TOOLS, ASSESSMENTS
MOBILIZE ME! APPS FOR MOBILE DEVICES OR MOBILE WEB APPS TECHNOLOGIES, TOOLS, ASSESSMENTS The uptrend in mobile web apps is continuing. More and more people are tending to their private and professional
Evaluating Cross-Platform Development Approaches (WORA Tools ) for Mobile Applications
Evaluating Cross-Platform Development Approaches (WORA Tools ) for Mobile Applications Prof. Vijaya Jadhav Asst. Professor, ASM s IBMR, E-mail : [email protected] Prof. Haridini Bhagwat Asst. Professor,
Mobile Application Design and Development Industry Certification
Page 1 Mobile Application Design and Development Industry Certification Certification and Course Overview This course provides the learner with an introduction to mobile application development. The course
ORACLE ADF MOBILE DATA SHEET
ORACLE ADF MOBILE DATA SHEET PRODUCTIVE ENTERPRISE MOBILE APPLICATIONS DEVELOPMENT KEY FEATURES Visual and declarative development Java technology enables cross-platform business logic Mobile optimized
Technical and Business Challenges for Mobile Application Developers. Tony Wasserman Carnegie Mellon Silicon Valley Mobicase 2010
Technical and Business Challenges for Mobile Application Developers Tony Wasserman Carnegie Mellon Silicon Valley Mobicase 2010 The Growth of Mobile Applications From zero to 500,000 (or so) in 3 years!
Mobile Apps, Mobile Web, and Other Cool Tools. Thursday, November 9, 2012 3:00pm 4:00pm Michael Hostad and Scott Owczarek
Mobile Apps, Mobile Web, and Other Cool Tools Thursday, November 9, 2012 3:00pm 4:00pm Michael Hostad and Scott Owczarek Overview Trends in mobile Different mobile strategies UW-Madison mobile approach
Mobile Enterprise Application Development - a Cross-Platform Framework
Mobile Enterprise Application Development - a Cross-Platform Framework FLORIAN WOLF, KARSTEN HUFFSTADT Applied Research Center for Mobile Solutions University of Applied Sciences Wuerzburg-Schweinfurt
All About Android WHAT IS ANDROID?
All About Android WHAT IS ANDROID? Android specifically refers to a mobile operating system (based on Linux) that is developed by Google. It is open-source software, meaning that anyone can download the
Take full advantage of IBM s IDEs for end- to- end mobile development
Take full advantage of IBM s IDEs for end- to- end mobile development ABSTRACT Mobile development with Rational Application Developer 8.5, Rational Software Architect 8.5, Rational Developer for zenterprise
Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality,
Mobile Testing Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality, usability and consistency. A mobile application
To Study and Design a Cross-Platform Mobile Application for Student Information System using PhoneGap Framework
To Study and Design a Cross-Platform Mobile Application for Student Information System using PhoneGap Framework Avinash Shrivas 1, Anandkumar Pardeshi 2 1 Associate Professor, Vidyalankar Institute of
City of Dublin Education & Training Board. Programme Module for. Mobile Technologies. leading to. Level 6 FETAC. Mobile Technologies 6N0734
City of Dublin Education & Training Board Programme Module for Mobile Technologies leading to Level 6 FETAC Version 3 1 Introduction This programme module may be delivered as a standalone module leading
Mobile Application Development
Web Engineering Mobile Application Development Copyright 2015 Slides from Federico M. Facca (2010), Nelia Lasierra (updates) 1 2 Where we are? # Date Title 1 5 th March Web Engineering Introduction and
place/business fetch details, 184 185 removefromfavorite () function, 189 search button handler bind, 190 191 B BlackBerry build environment
Index A addtofavorite() method, 175 177, 188 189 Android ADT Plugin for Eclipse installation, 22 24 application, GWT Build Path, 244 device info, 247 directory structure, 244, 245 Eclipse classpath, 244
MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER
MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER TABLE OF CONTENTS Market Demand for Enterprise Mobile Mobile App Development Approaches Native Apps Mobile Web Apps Hybrid Apps Mendix Vision for Mobile App
Lecture 1 Introduction to Android
These slides are by Dr. Jaerock Kwon at. The original URL is http://kettering.jrkwon.com/sites/default/files/2011-2/ce-491/lecture/alecture-01.pdf so please use that instead of pointing to this local copy
