Mobile Computing Reviewer PDF
Document Details
Uploaded by ProfuseDada
Tags
Summary
The document provides an overview of mobile computing, including definitions, hardware, mobile software and the history of mobile computing. It also discusses concepts like mobile communication, trends and development environments.
Full Transcript
with signals carried over Mobile Computing Reviewer the air via radio waves. 2. Mobile Hardware: ○ Includes mobile devices or Definitions...
with signals carried over Mobile Computing Reviewer the air via radio waves. 2. Mobile Hardware: ○ Includes mobile devices or Definitions components like laptops, smartphones, tablets, and Computing: Operation of computers, PDAs. according to Oxford Advanced ○ These devices have Learner’s Dictionary. receptor media capable of sensing and receiving Mobile: That someone or something can signals and operate in move or be moved easily and quickly full-duplex mode, sending from place to place. and receiving signals simultaneously. Mobile Computing: 3. Mobile Software: Users with portable computers ○ The actual program that still have network connections runs on mobile hardware, while they move. including operating A technology that allows systems and applications. transmission of data, voice, and ○ It ensures users can video via a computer or any operate from anywhere other wireless-enabled device and incorporates wireless without having to be connected communication features. to a fixed physical link. History of Mobile Computing Main Concepts in Mobile Computing 1970s–1980s: 1. Mobile Communication: 1970s: Alan Kay envisions the ○ Refers to the portable computer Dynabook at infrastructure put in place Xerox PARC. to ensure seamless and 1981: Osborne 1, the first reliable communication. consumer laptop, is released but ○ Includes devices such as has limitations. protocols, services, 1983: Kyocera Kyotronic becomes bandwidth, and portals a widely-used early laptop, necessary to support followed by GriDPad, considered stated services. the first tablet. ○ Media is unguided/unbounded, 1990s: 1990: Intel’s mobile-specific Limited battery life and processor enhances battery processing speed. management. Awkward input methods and 1992–1996: PDAs like Newton platform diversity challenges. MessagePad and PalmPilot dominate. 1993: IBM Simon, the first Development Environments smartphone, is launched. Android Studio: Official IDE for 2000s: Android (Kotlin, Java, C++). 2000: Microsoft introduces Pocket Xcode: Apple’s IDE for iOS and PC. macOS. 2007: Apple launches the iPhone, Flutter: Cross-platform and Google unveils Android. development using Dart. React Native: JavaScript-based 2010s: framework for Android/iOS apps. Visual Studio with Xamarin: C# Rise of mobile OSs like iOS and for cross-platform development. Android, mobile payments, and 4G networks. Introduction of foldable phones and augmented reality (AR). Top Trends in Mobile Computing 2020s: 1. Tailor-Made Experiences: Custom, personalized features for unique Expansion of 5G networks, user interactions. AI-powered cameras, and 2. Globalization: Apps catering to sustainability efforts. multiple languages and cultural traits. 3. Narrow Target Audience: Niche applications for specific Advantages & Disadvantages of Mobile demographics. Devices 4. IoT Approach: Mobile apps as Advantages: portals for smart, interconnected devices. Always with the user. 5. Free Always Sells: Freemium Internet access, GPS, cameras, models with flexible integration and microphones. into ecosystems. Free or low-cost apps. Disadvantages: Mobile Systems Reviewer sensors (e.g., location, acceleration, and proximity). Mobile System Overview Wireless Networks A mobile system consists of the following key components: 1. Cellular Network: ○ Connects mobile devices 1. Mobile Device: Includes to cell sites or base hardware such as CPU, memory, stations. and storage, operating similarly ○ Requires devices to to desktop components but with communicate through lower performance. base stations before 2. Mobile Operating System accessing the Internet or (Mobile OS): Platforms such as other devices. iOS, Android, Windows Phone, 2. Wi-Fi: Blackberry, and others. Devices ○ A local area wireless also run a secondary real-time technology operating in OS for managing radio 2.4 GHz or 5 GHz bands. communications. ○ Enables cheaper 3. Wireless Network: Mobile deployment of LAN and devices connect to the internet uses WPA2 encryption for and communicate through security. wireless technologies like Cellular Networks and Wi-Fi. 4. Mobile App: Programs designed Mobile Apps and Platforms for mobile devices, distributed via platforms like App Store, Mobile apps are programs Google Play, Windows Phone designed for smartphones and Store, and BlackBerry App tablets. World. Popular platforms: App Store, Google Play, Windows Phone Store, and BlackBerry App Key Features of Mobile Devices World. Equipped with Wi-Fi, Bluetooth, and GPS capabilities. Optimizations in Mobile Systems Includes camera, microphone, audio systems, and various Mobile devices face constraints in: 1. Energy (battery life). 4G LTE (Long-Term Evolution): 2. Performance. Increased capacity and speed of 3. Networking speed. wireless data networks. 4. Resources (e.g., storage, CPU). Solutions involve optimization algorithms balancing these factors. Global Impact of GSM and LTE GSM EDGE: Dominates subscriptions due to affordability. Mobile Cloud Computing LTE Deployment: Expected to cover 60% of the world's Combines cloud computing, population by 2018. mobile computing, and wireless networks. Addresses limitations like resources and computational Portability and Accessibility ability by offloading processes Devices like Tablets, iPads, and to the cloud. Smartphones enable users to: Challenges: Latency, energy management, security, and Update documents, surf the privacy. web, and stream videos. Support video and voice Mobile Technology - Growth conferencing. and Reach Mobile Market Statistics Generational Evolution of Mobile Technology 96% global population had mobile subscriptions by 2013, 1G (1981): First generation, with 7 billion subscriptions. introducing analog Smartphones made up 50% of communication. sales; subscriptions expected to 2G (GSM): Developed by the hit 4.5 billion by 2018. European Telecommunications Mobile broadband is growing Standards Institute, became the faster than fixed broadband. global default for mobile communication. Enhanced by EDGE (Enhanced Data Rates for Global Mobile Web Traffic (2019) GSM Evolution) for faster data. Based on the share of mobile OS ○ Enables users to work in global web requests. from anywhere with an Highlights demand for robust established connection. smart devices driving ○ Facilitates multitasking competition among and mobility in performing manufacturers. jobs. 2. Saves Time ○ Reduces commuting time by allowing remote access Competition Among Smartphone OS to important documents. Major players: Apple's iPhone ○ Enhances telecommuting, OS, Google's Android, Microsoft minimizing unnecessary Windows Mobile, and expenses. Blackberry OS. 3. Enhanced Productivity Compete to offer better ○ Allows users to work performance and features with efficiently from their every release. preferred locations, increasing output. 4. Ease of Research ○ Simplifies data collection The Essence of Mobile Computing and sharing for field officers and researchers. Work from Anywhere: Enabled ○ Eliminates the need for by iPads, tablets, smartphones, repeated trips to the and notebooks. office. Applications in Business: 5. Entertainment ○ Access sales reports and ○ Provides access to market forecasts. streaming videos, movies, ○ Conduct video/audio and educational materials conferences. on the go. Constant demand for ○ Supported by high-speed, state-of-the-art applications cost-effective data fuels innovation. connections. 6. Streamlining Business Advantages and Disadvantages Processes of Mobile Computing ○ Enables secure access to business processes over the internet. Advantages of Mobile Computing ○ Facilitates collaboration and meetings via video 1. Location Flexibility and voice conferencing, reducing travel time and cybercrimes increase with expenses. careless app usage. 5. Addiction and Overdependence ○ Excessive smartphone use may lead to addiction and Disadvantages of Mobile Computing distractions while driving. 1. Health Issues ○ Frequent upgrades to new ○ Electromagnetic models can result in radiation from heavy unnecessary expenses. internet usage may cause 6. Real-Life Disconnect brain tumors and skin ○ Overemphasis on virtual cancer. interactions can dilute the ○ Screen emissions can true essence of real-life cause severe eye strain experiences and values. and retinal damage. ○ Physical problems like neck pain and sleep Key Takeaway deprivation are common. 2. Psychological Impact Mobile computing offers unmatched ○ Overuse can lead to flexibility and efficiency but requires loneliness, self-discipline to mitigate its self-centeredness, and drawbacks. Proper balance and trust issues. informed use can maximize the benefits ○ Excessive online presence while minimizing potential risks. reduces real-life interactions and JavaScript Overview and Key experiences. Concepts 3. Impact on Family and Social Life JavaScript is the most popular ○ Over-reliance on programming language in the world and smartphones can strain is fundamental for building dynamic family relationships and and interactive websites. Here’s an reduce quality time. organized overview of its essentials: 4. Internet Dangers ○ Children’s mental and physical growth may be impacted by exposure to 1. Introduction inappropriate content. ○ Risks of fraud, personal Nature: JavaScript is a data leaks, and programming language that enables interactivity in web Store data in the browser (e.g., pages. cookies, local storage). Execution: Runs directly in web browsers and on servers What JavaScript Cannot Do: (Node.js). Directly access files on a user’s Ease of Learning: Designed to computer. be accessible for beginners and Interact with the operating powerful for advanced system at a low level. developers. Cross-origin communication Comparison with Java: Despite without explicit permissions. the name, JavaScript and Java are unrelated except for some superficial syntax similarities. 4. Core Syntax Variables: 2. Basic Features Declared using var, let, or const. Scripts: JavaScript code can be javascript embedded in HTML using the Copy code tag or linked as an let x = 5; external file. Execution: JavaScript engines, const y = 10; such as V8 (Chrome) or SpiderMonkey (Firefox), convert var z = x + y; // 15 the scripts into machine code. Data Types: 3. Capabilities and Restrictions Primitive types: string, number, What JavaScript Can Do: boolean, undefined, null. Modify webpage content (e.g., Dynamic typing allows variables to hold adding/removing elements any type: dynamically). javascript Handle user interactions like Copy code clicks, key presses, or mouse let data = 42; // Number movements. data = "Hello"; // String Communicate with servers (AJAX, fetch API). Special values like undefined and null denote absence or Arrays: unknown values. Collections of elements stored in square Operators: brackets. Arithmetic: +, -, *, /, %. javascript Comparisons: ==, ===, !=, !==. Copy code Logical: &&, ||, !. let fruits = ["Apple", "Banana", "Cherry"]; 5. Key Objects and Methods Useful Methods for Output: Strings: innerHTML: Update an HTML element's Declared with single or double quotes. content. javascript javascript Copy code Copy code let greeting = "Hello, World!"; document.getElementById("example ").innerHTML = "Updated!"; 1. Numbers: 2. document.write(): Outputs HTML but overwrites the Includes integers and document post-load (for testing floating-point values. only). Supports operations like addition, 3. alert(): Displays an alert box. subtraction, and scientific notation. 4. console.log(): Prints to the javascript developer console for debugging. Copy code let value = 1.23e4; // 12300 6. Advanced Concepts Booleans: Dynamic Execution: JavaScript code adapts during runtime, true or false values used for often optimizing itself based on conditions. execution patterns. javascript Same-Origin Policy: Restricts Copy code access across domains for let isTrue = (5 > 3); // true security reasons. Modules: Used for better code ECMA-376-Standard for Office organization and reusability Open XML (OOXML) file formats (import and export). used by Microsoft Office Apps ECMA-404- Standard for JSON (JavaScript Object Notation), a lightweight data-interchange 7. Summary format widely used in web applications JavaScript is a versatile and robust language for creating interactive web Overview of JavaScript Updates applications. It works in tandem with JavaScript (JS) is a lightweight, HTML and CSS to bring webpages to life object-oriented, interpreted while maintaining security constraints programming language. In 1961, to protect users. Netscape submitted JS to ECMA International to be standardized, which led to a new version called ECMAScript. MIDTERMS ES6 ECMAScript 1 (1997) What is ECMA? Established Foundational Syntax ECMA or European Computer and Semantics for the language Manufacturers Association, is an Introduced variable industry association that develops and declarations, data types, and publishes standards for information basic control structures and communication systems. Variable Declaration was done using var keyword. Specific ECMA Standards ECMAScript (ECMA-262)- Defines JavaScript scripting language used in web var greeting="Hello World!"; console.log(greeting); development including JS C# (ECMA-334)- Standard for C#, which is widely used for developing Windows applications ECMAScript 2 (1998) and games using Unity Minor update focus on editorial C++ (ECMA-148)- Standard for improvements and clarifications C++, which is used in Clarified how whitespace and system/software and game comments should be treated, development ensuring code was interpreted uniformly across different Significant Evolution of the implementations Language Key features include arrow ECMAScript 3 (1999) functions, classes, template Brought enhancements such as literals, and promises for support for regular expressions handling asynchronous and better string manipulation operations. methods Introduced try-catch NOTES: statements for error handling There have been four more updates since: ECMAScript 2016 ECMAScript 4 (Abandoned) (ES7), 2017 (ES8), 2018 (ES9), and Planned to have major 2019 (ES10). advancements like classes, In general, ECMAScript is the title modules, and strong typing. for the formal standardized Due to disagreements, it was language, while JS refers to the never finalized and was programming language itself. abandoned in 2008 ECMAScript 5 (2009) Critical update with features like JSON support and strict mode. MOST IMPORTANT ES6 (2015) Introduced new array methods UPDATES such as forEach and map which facilitated functional Block-Scoped Let and Const programming patterns Introduced let and const which Enabled JavaScript to be were block-scoped meaning they supported in all browsers are only accessible within the block JavaScript const number=[1,2,3,4,5]; function printNumber(num){ Arrow Functions console.log(num); Introduced arrows => as a } shorthand way to declare functions. numbers.forEach(printNumber); Classes Did not introduce ECMAScript 6 (2015) Object-Oriented inheritance model. class declaration and constructor MOST IMPORTANT ES8 (2017) method UPDATES Object.values returns an array of Template Literals all the values of the object Allows for easy implementation Object.entries that returns an of variables with a “${ }” and array that contains both keys embed expression and values. The template literal syntax is async function allows us to define enclosed in backticks” ` ` “. an asynchronous function and return a Promise Other updates with ES6.await() operator waits for a Additional String Methods Promise inside the async function Destructuring Array Improvements Otherchanges from ES8: Symbols String Padding Promises Shared memory and atomics Default function arguments i.e. Object.getOwnPropertyDescripto default parameters and default rs( ) values Trailing commas in function Generator parameter lists and calls Proxies Object literal updates Sets, WeakSets, Maps, and WeakMaps MOST IMPORTANT ES9 (2018) UPDATES MOST IMPORTANT ES7 (2016) Spread operator enables cloning UPDATES of an object. SHOULD NOT BE The.includes( ) method makes it USED AT THE END easier for you to check if “ … ” THREE DOTS particular values are stored in an Asynchronous Iteration- enables array. await to declare asynchronous Exponential operator “**” loops if the data comes from an asynchronous source. JavaScript ○ Uses for-await-of to //OLD WAY console.log(Math.pow(2,2)); convert iterables to a Promise //NEW WAY ○ async iterator is much like console.log(2**2); an iterator, except that its next() method returns a promise for a { value, done } pair. pioneered by cognitive scientist Other ES9 Features: Don Norman in the 1990s. Lifting template literals restriction Core Principle of UX Design RegExp features Usability ○ focusing on making a MOST IMPORTANT ES10 (2019) product easy to use and UPDATES accessible. Array.prototype.flat feature ○ Principles such as essentially flattens an array affordance and recursively up to a pre-specified discoverability, they depth. The flat() method makes a should indicate their new array containing all purpose, and users should sub-array elements. Infinity is easily understand what used to flatten nested arrays. actions are possible. Simplicity and Clarity Other updates include: ○ All about removing String.prototype.trimStart( )/ unnecessary complexity trimEnd( ) and clutter, allowing users Changes to Array.sort to focus on the essential Function.prototype.toString( ) functions Optional Catch Binding ○ A clear interface layout guides users seamlessly UI/UX through tasks. Consistency ○ refers to maintaining Definition and Importance of UX uniformity in design Overall experience users have elements across an when interacting with a product interface, making it easier system or service. for users to predict and Focuses on meeting users' needs learn how to use different and ensuring they find value in parts of the product. what is being offered Feedback UX has become a defining factor ○ informing users about the in product success. outcomes of their actions. ○ Proper feedback reassures History of UX users that the system is The concept of UX is rooted in responsive, building the broader field of confidence in the product. human-centered design, Key Elements of the UX Design letting users test and Process experience the product User Research flow before development. ○ Allow designers to understand user needs, The role of UI in UX preferences, and pain UI focuses on the product's visual points. elements like colors, fonts, and layouts. ○ Research methods include UX encompasses the overall interaction surveys, interviews, and experience, like usability, accessibility, observations, and satisfaction. ○ Research findings inform design decisions, ensuring Visual Design that the product resonates Impacts user perception and with its intended audience. engagement with a product. Personas and User Stories Involves selecting colors to evoke ○ help design teams emotions empathize with the Focuses on typography for audience by building readability. fictional representations of Utilizes layout principles like target users. visual hierarchy and white space ○ outline specific scenarios for easy navigation and aesthetic from the user's appeal. perspective, Information Architecture Interaction Design ○ organize and label content Aims to create intuitive controls in a way that users can for user engagement. easily navigate. Includes designing buttons, ○ requires an understanding sliders, and navigation elements. of how users seek Ensures smooth, predictable information and what interactions, like swiping and paths they take to find it. tapping gestures on mobile Wireframing and Prototyping devices. ○ low-fidelity sketches or Focuses on minimizing user digital outlines of a frustration and enhancing the UX product’s layout, focusing experience. on functionality over visual design. What is HCI? (Human Computer ○ creating interactive, Interaction) high-fidelity mockups, It is the study of how people Challenges before React: interact with computers and to what ○ Managing dynamic web extent computers are or are not applications was difficult. developed for successful interaction ○ Limited reusability of with human beings. components. Study and practice of Usability ○ Poor performance in ○ Understanding and updating UIs with creating software that JavaScript. people will want to use and are able to use effectively Key Milestones in React History Study of how people use computers to perform tasks 1. 2011: Initial creation by Jordan ○ provide us with all Walke. understanding of the 2. 2013: Open-sourced at JSConf computer and the person US. using it, so as to make the 3. 2015: Launch of React Native for interaction between them mobile app development. more effective and more 4. 2017: Release of React Fiber, a enjoyable. major update for better rendering. FINALS 5. 2020: React 17 focuses on seamless upgrades. Introduction to React: A Comprehensive Overview Key Concepts in React What is React? 1. JSX: JavaScript syntax extension for writing HTML-like code. A JavaScript library for building 2. Components: Reusable, user interfaces. self-contained UI units. Developed by Facebook in 2011 3. Props: Used to pass data to and open-sourced in 2013. components. Features a component-based, 4. State: Manages declarative, and efficient component-specific data. approach. Advantages of React Why React Was Created High Performance: Achieved Facebook: Social media with the virtual DOM. platform. Reusable Components: Instagram: Social sharing app. Promotes efficiency in Netflix: Streaming service. development. Airbnb: Travel and booking Large Ecosystem: Supported by platform. a strong community and numerous tools. Platform Compatibility: Developer Benefits of React Supports web applications and mobile apps through React Component-based architecture Native. simplifies coding and maintenance. Virtual DOM ensures fast Applications Built with React rendering. Strong community support with Single Page Applications tools like React Developer Tools. (SPAs). E-commerce websites. Social media platforms. Real-time dashboards and analytics. Mobile applications (via React Native). React vs. React Native React: For web applications, rendering HTML. React Native: For mobile applications, rendering native components. Similarities: Share the same syntax, component structure, and use of JavaScript. Real-World Examples Using React