Syntax Directed Translation Professor Yihjia Tsai Tamkang University.
Tamkang’’ University Social’Media’Apps’Programming’
Transcript of Tamkang’’ University Social’Media’Apps’Programming’
![Page 1: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/1.jpg)
Social Media Apps Programming
Min-‐Yuh Day, Ph.D. Assistant Professor
Department of Informa9on Management Tamkang University
h?p://mail.tku.edu.tw/myday
Google Cloud Pla6orm
Tamkang University
2014-‐12-‐03
1031SMAP10 TLMXM1A (8687) (M2143) (Fall 2014)
(MIS MBA) (2 Credits, Elec9ve) [Full English Course] Thu 8,9 (15:10-‐17:00) V201
![Page 2: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/2.jpg)
Course Schedule (1/3) Week Date Subject/Topics • 1 2014/09/17 Course Orienta9on and Introduc9on to
Social Media and Mobile Apps Programming • 2 2014/09/24 Introduc9on to Android / iOS Apps
Programming • 3 2014/10/01 Developing Android Na9ve Apps with
Java (Eclipse) (MIT App Inventor) • 4 2014/10/08 Developing iPhone / iPad Na9ve Apps with
Swib / Objec9ve-‐C (XCode) • 5 2014/10/15 Mobile Apps Using HTML5/CSS3/JavaScript • 6 2014/10/22 jQuery Mobile
2
![Page 3: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/3.jpg)
Course Schedule (2/3) Week Date Subject/Topics • 7 2014/10/29 Create Hybrid Apps with Phonegap • 8 2014/11/05 jQuery Mobile/Phonegap • 9 2014/11/12 jQuery Mobile/Phonegap • 10 2014/11/19 Midterm Exam Week
(Midterm Project Report) • 11 2014/11/26 Case Study on Social Media Apps
Programming and Marke9ng in Google Play and App Store
• 12 2014/12/03 Google Cloud Plahorm
3
![Page 4: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/4.jpg)
Course Schedule (3/3) Week Date Subject/Topics • 13 2014/12/10 Invited Talk: Social, Data and Business Model
-‐ Let’s see PIXNET [Invited Speaker: Dr. Rick Cheng-‐Yu Lu, Technical Director, PIXNET]
• 14 2014/12/17 Google App Engine and Google Map API • 15 2014/12/24 Facebook API (Facebook JavaScript SDK)
(Integrate Facebook with iOS/Android Apps) • 16 2014/01/31 Twi?er API • 17 2015/01/07 Final Project Presenta9on • 18 2015/01/14 Final Exam Week (Final Project Report)
4
![Page 5: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/5.jpg)
Outline • Google Cloud Pla6orm
– Google App Engine – Google Cloud Datastore – Google Cloud Endpoints
• Mobile App with Google Cloud Pla6orm
5
![Page 6: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/6.jpg)
6
h?ps://cloud.google.com/ Google Cloud Pla6orm
![Page 7: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/7.jpg)
Google Cloud Pla6orm
• Google Cloud Plahorm is a set of modular cloud-‐based services that allow you to create anything from simple websites to complex applica9ons.
7 Source: h?ps://cloud.google.com/
![Page 8: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/8.jpg)
8 Source: h?ps://cloud.google.com/products/
Big Data Storage HosEng + Compute Services
Google Cloud Pla6orm
![Page 9: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/9.jpg)
9 Source: h?ps://cloud.google.com/products/
Compute Engine
App Engine
Container Engine
Cloud Datastore
Cloud SQL
Cloud Storage
Big Query
Big Data Storage Compute Services
Cloud Endpoints
Translate API
Predic9on API
Google Cloud Pla6orm
![Page 10: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/10.jpg)
10 Source: h?ps://cloud.google.com/why-‐google/
Why Google Cloud Pla6orm
![Page 11: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/11.jpg)
11
Why Google Cloud Pla6orm
Source: h?ps://cloud.google.com/
![Page 12: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/12.jpg)
Customers of Google Cloud Pla6orm
12 Source: h?ps://cloud.google.com/customers/
![Page 13: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/13.jpg)
Angry Birds
13 Source: h?ps://cloud.google.com/customers/
![Page 14: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/14.jpg)
Compute
14 Source: h?ps://cloud.google.com/products/
![Page 15: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/15.jpg)
Storage
15 Source: h?ps://cloud.google.com/products/
![Page 16: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/16.jpg)
BigQuery
• Analyze Big Data in the cloud with BigQuery. • Run fast, SQL-‐like queries against mul9-‐terabyte datasets in seconds.
• Scalable and easy to use, BigQuery gives you real-‐9me insights about your data
16 Source: h?ps://cloud.google.com/products/
![Page 17: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/17.jpg)
Services
17 Source: h?ps://cloud.google.com/products/
![Page 18: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/18.jpg)
PredicEon API
• Use Google’s machine learning algorithms to analyze data and predict future outcomes using a familiar RESTful interface.
18 Source: h?ps://cloud.google.com/products/
![Page 19: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/19.jpg)
Google Cloud Pla6orm SoluEons
19 Source: h?ps://cloud.google.com/solu9ons/
![Page 20: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/20.jpg)
Mobile App with Google Cloud Pla6orm
20 Source: h?ps://cloud.google.com/solu9ons/mobile/
![Page 21: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/21.jpg)
21 Source: h?ps://cloud.google.com/solu9ons/mobile/
Mobile App with Google Cloud Pla6orm
![Page 22: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/22.jpg)
22 Source: h?ps://cloud.google.com/developers/ar9cles/mobile-‐applica9on-‐solu9ons/
![Page 23: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/23.jpg)
Mobile SoluEon on Google Cloud Pla6orm
• Support for Android and iOS devices through na9ve applica9ons
• Storage, retrieval, and processing data outside of mobile devices
• Orchestra9ng push no9fica9on to Android and IOS devices
• Geo-‐loca9on awareness and geo-‐proximity search • User authen9ca9on • High scalability
23 Source: h?ps://cloud.google.com/developers/ar9cles/mobile-‐applica9on-‐solu9ons/
![Page 24: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/24.jpg)
Mobile App SoluEons Architecture
24 Source: h?ps://cloud.google.com/developers/ar9cles/mobile-‐applica9on-‐solu9ons/
![Page 25: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/25.jpg)
Mobile App SoluEons Architecture
• Android and/or iOS mobile clients. • Google Cloud Endpoints used for communica9ons between the clients and the backend over REST API with op9onal OAuth2 authen9ca9on.
• Your mobile backend applica9on code running on Google App Engine and responsible for serving requests from the clients.
25 Source: h?ps://cloud.google.com/developers/ar9cles/mobile-‐applica9on-‐solu9ons/
![Page 26: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/26.jpg)
Storing data
26
![Page 27: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/27.jpg)
Google App Engine Datastore Quotas and limits
Limit Amount Maximum en9ty size 1 megabyte
Maximum transac9on size 10 megabytes
Maximum number of index entries for an en9ty 20000
Maximum number of bytes in composite indexes for an en9ty 2 megabytes
27 Source: h?ps://cloud.google.com/appengine/docs/java/datastore/
![Page 28: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/28.jpg)
OpEmizing data access with Memcache
28 Source: h?ps://cloud.google.com/developers/ar9cles/mobile-‐applica9on-‐solu9ons/
![Page 29: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/29.jpg)
Google App Engine Plahorm as a Service (PaaS)
29 Source: h?ps://cloud.google.com/appengine/docs
build and run applica9ons on Google’s infrastructure
![Page 30: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/30.jpg)
Google App Engine
• 1 GB of data storage and traffic for free
• can be increased by enabling paid applica9ons
30 Source: h?ps://cloud.google.com/appengine/docs/wha9sgoogleappengine
![Page 31: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/31.jpg)
Google App Engine
31
Python Java
PHP Go
Google App Engine supports apps wri?en in a variety of programming languages: Python, Java, PHP, Go
Source: h?ps://cloud.google.com/appengine/docs/wha9sgoogleappengine
![Page 32: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/32.jpg)
32
Google App Engine
h?ps://cloud.google.com/appengine/
![Page 33: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/33.jpg)
33
Google App Engine
h?ps://cloud.google.com/appengine/
![Page 34: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/34.jpg)
34
Google Cloud Datastore
h?ps://cloud.google.com/datastore/
![Page 35: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/35.jpg)
35
Google Cloud Datastore
h?ps://cloud.google.com/datastore/
![Page 36: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/36.jpg)
Google Cloud Endpoints
36 Source: h?ps://cloud.google.com/endpoints/
![Page 37: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/37.jpg)
37
Google Cloud Endpoints
Source: h?ps://cloud.google.com/endpoints/
![Page 38: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/38.jpg)
Mobile Apps Backend on Google App Engine
38 Source: h?ps://cloud.google.com/appengine/docs/java/endpoints/
Cloud Endpoints App Engine
Google Cloud Endpoints Architecture
![Page 39: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/39.jpg)
Mobile App, Goolge App Engine, Cloud Datasotre
39 h?p://www.youtube.com/watch?v=v5u_Owtbfew
![Page 40: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/40.jpg)
Mobile, Web and Cloud
40 h?p://www.youtube.com/watch?v=6_oO9Gwf_do
![Page 41: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/41.jpg)
Build your mobile app with Google Cloud Pla6orm
41 h?p://www.youtube.com/watch?v=ZZNb1NOPTp8
![Page 42: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/42.jpg)
42 h?p://www.youtube.com/watch?v=QJp6hmASstQ
App Engine Architecture and Services
![Page 43: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/43.jpg)
43
Source: Datastore Introduc9on, h?p://www.youtube.com/watch?v=fQazhzcC-‐rg
Datastore IntroducEon
![Page 44: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/44.jpg)
Google Cloud Datastore
44 Source: Datastore Introduc9on, h?p://www.youtube.com/watch?v=fQazhzcC-‐rg
Datasotre is a database (persistent storage) for App Engine
Google App Engine Tradi9onal Web applica9ons
Google App Engine (Java, Python, Go)
Datastore
RDBMS • MySQL • PostgreSQL • SQL Server • Oracle
Perl/CGI PHP
Ruby on Rails ASP/JSP
Web applica9on framework
(AP)
Persistent storage (Database)
![Page 45: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/45.jpg)
45
h?ps://cloud.google.com/docs/ Google Cloud Pla6orm
![Page 46: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/46.jpg)
Try Google Cloud Pla6orm for free
46
![Page 47: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/47.jpg)
47
Try Google Cloud Pla6orm for free
![Page 48: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/48.jpg)
48
h?ps://cloud.google.com/docs/ Google Cloud Pla6orm
![Page 49: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/49.jpg)
49
h?ps://cloud.google.com/docs/ Google Cloud Pla6orm
![Page 50: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/50.jpg)
App Engine "Hello World" starter
• Start edi9ng a working "Hello World" app right now, in the browser.
• This gives you a good star9ng point and a feel for what it's like edi9ng a working App Engine applica9on.
50
h?ps://console.developers.google.com/start/appengine
Google App Engine
Deploy your first app in five minutes
![Page 51: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/51.jpg)
Try Google App Engine Now
1. NAME YOUR PROJECT 2. SELECT YOUR LANGUAGE 3. EXPLORE THE STARTER CODE 4. INSTALL GOOGLE CLOUD SDK 5. RUN YOUR APP LOCALLY 6. CREATE YOUR PROJECT AND DEPLOY
51
![Page 52: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/52.jpg)
52
Google App Engine
![Page 53: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/53.jpg)
53
Google App Engine
![Page 54: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/54.jpg)
54
Google App Engine
![Page 55: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/55.jpg)
55
Google App Engine
![Page 56: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/56.jpg)
56
Google App Engine
![Page 57: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/57.jpg)
57
Google App Engine
![Page 58: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/58.jpg)
58
Google App Engine
![Page 59: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/59.jpg)
59
Google App Engine
![Page 60: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/60.jpg)
60
Google Cloud Pla6orm
![Page 61: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/61.jpg)
Summary • Google Cloud Pla6orm
– Google App Engine – Google Cloud Datastore – Google Cloud Endpoints
• Mobile App with Google Cloud Pla6orm
61
![Page 62: Tamkang’’ University Social’Media’Apps’Programming’](https://reader035.fdocuments.us/reader035/viewer/2022062309/62a6de6a291cb62325117f16/html5/thumbnails/62.jpg)
References • Google Cloud Plahorm,
h?ps://cloud.google.com/ • Google App Engine,
h?ps://cloud.google.com/appengine/ • Google Cloud Datastore,
h?ps://cloud.google.com/datastore/ • Google Cloud Endpoints,
h?ps://cloud.google.com/endpoints/
62