⇪
PILLAR #2: SOFTWARE
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TABLE OF CONTENTS
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
COURSE 2: INTRODUCTION TO SOFTWARE, PROGRAMMING AND DATABASES [소프트웨어, 프로그래밍, 및 데이터베이스 기초]
⇒ Computing Platforms and Software Applications [컴퓨팅 플랫폼 및 응용 소프트웨어] ⇐
⇒ Fundamentals of Web Browser, Applications, and Cloud Computing [웹 브라우저, 애플리케이션, 클라우드 컴퓨팅] ⇐
⇒ Basics of Programming [프로그래밍 기초] ⇐
⇒ Database Fundamentals [데이터베이스 기초] ⇐
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
COURSE 2: INTRODUCTION TO SOFTWARE, PROGRAMMING AND DATABASES [소프트웨어, 프로그래밍, 및 데이터베이스 기초]
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TABLE OF CONTENTS
COMPUTING PLATFORMS AND SOFTWARE APPLICATIONS
⇒ Computing Platforms and Compatibility: COMPUTING PLATFORM DEFINED | SINGLE-PLATFORM SOFTWARE | CROSS-PLATFORM SOFTWARE ⇐
⇒ Commercial and Open Source Software: CLOSED SOURCE SOFTWARE DEFINED | OPEN SOURCE SOFTWARE DEFINED ⇐
⇒ Software Licenses: SOFTWARE LICENSE DEFINED | SOFTWARE PURCHASE MODELS | Product Keys and Activation ⇐
⇒ Software Installation and Uninstallation Management: Before Installation Considerations | Software Uninstallation Procedures ⇐
⇒ Software Versions: SOFTWARE VERSIONS DEFINED | Software Version Numbering Systems | Version Compatibility ⇐
⇒ Mobile Applications and Stores: MOBILE APPLICATION STORE DEFINED | ACCESS, SEARCH, DOWNLOAD, INSTALL, UPDATE ⇐
⇒ Common Types of Software: PRODUCTIVITY SOFTWARE | BUSINESS SOFTWARE | COLLABORATION SOFTWARE | UTILITY SOFTWARE ⇐
⇒ File Formats: File Extensions | EXECUTABLE FILES | COMPRESSION FILES | MEDIA FILES | IMAGE FILES | DOCUMENT FILES ⇐
FUNDAMENTALS OF WEB BROWSER, APPLICATIONS, AND CLOUD COMPUTING
⇒ Common Web Browsers: WEB BROWSER DEFINED | WEB BROWSER SOFTWARE COMPONENTS ⇐
⇒ Browser Installs and Updates: Obtaining Web Browsers | Importance of Browser Updates | Browser Update Schedules ⇐
⇒ Browser Plug-ins and Extensions: BROWSER PLUG-INS DEFINED | BROWSER EXTENSION DEFINED ⇐
⇒ Basic Browser Security Settings: PROXY SERVER DEFINED | COOKIES DEFINED | BROWSER AND CACHE ⇐
⇒ Browser Security Certificates and Pop-ups Settings: SECURITY CERTIFICATES DEFINED | Pop-up Defined ⇐
⇒ Private Browsing and Client-Side Scripting: PRIVATE BROWSING DEFINED | CLIENT-SIDE SCRIPTING DEFINED | JAVASCRIPT DISABLE ⇐
⇒ Introduction to Cloud Computing: CLOUD COMPUTING DEFINED | CLOUD DEPLOYMENT MODELS | CLOUD SERVICE MODELS ⇐
⇒ Application Architecture: APPLICATION ARCHITECTURE DEFINED | ONE-TIER MODEL | TWO-TIER MODEL | THREE-TIER MODEL | N-TIER MODEL ⇐
⇒ Application Delivery Methods: DELIVERY METHODS DEFINED | LOCAL INSTALLATION | LOCAL-NETWORK HOSTED | CLOUD-HOSTED ⇐
⇒ Software Development Life Cycle: SOFTWARE DEVELOPMENT LIFE CYCLE DEFINED | SDLC PHASES | POPULAR SDLC MODELS ⇐
BASICS OF PROGRAMMING
⇒ Programming Languages: PROGRAMMING LANGUAGE DEFINED | INTERPRETED LANGUAGE | COMPILED LANGUAGE ⇐
⇒ Comparing Compiled and Interpreted Programming Languages: Comparing Interpreted and Compiled | Examples of Programming Languages ⇐
⇒ Query and Assembly Languages: Programming Language Levels | QUERY LANGUAGES | QUERY STATEMENTS | ASSEMBLY LANGUAGES ⇐
⇒ Scripting Languages & Use Cases - Windows and Linux: SCRIPT DEFINED | SCRIPTING LANGUAGE | Examples of Scripting Languages ⇐
⇒ Understanding Code Organization Methods: IMPORTANCE OF CODE ORGANIZATION METHODS | FLOWCHARTS | PSEUDOCODE ⇐
⇒ Programming Logic: PROGRAMMING LOGIC DEFINED | BRANCHING PROGRAMMING LOGIC | LOOPING PROGRAMMING LOGIC ⇐
⇒ Introduction to Programming Concepts Part 1: IDENTIFIERS DEFINED | Constants | Variables | CONTAINERS DEFINED | Arrays | Vectors ⇐
⇒ Introduction to Programming Concepts Part 2: FUNCTION DEFINED | Function Types | OBJECTS DEFINED | Object-Oriented Programming ⇐
DATABASE FUNDAMENTALS
⇒ Types of Data, Sources, and Uses: DATA DEFINED | DATA CLASSIFICATIONS | DATA FORMS | DATA STRUCTURES | DATA SOURCES ⇐
⇒ Database Fundamentals and Constructs: DATABASE DEFINED | DATABASE QUERY | DATABASE CONSTRAINTS | Flat File vs. Database ⇐
⇒ Database Roles and Permissions: DATABASE PERMISSIONS | PERMISSION TYPES | PERMISSION COMMANDS | DATABASE ROLES ⇐
⇒ Database Types: DATA STRUCTURES | RELATIONAL DATABASE | NON-RELATIONAL DATABASE | Non-Relational Database Models ⇐
⇒ Interfacing with Databases: DATABASE INTERFACE DEFINED | PRINCIPLES OF DATABASE INTERFACE | ACCESSING DATABASE ⇐
⇒ Database Management: DATABASE MANAGEMENT DEFINED | SQL COMMAND CATEGORIES | DATA INPUT | DATA EXTRACTION ⇐
⇒ Backing Up Databases: DATABASE BACKUP DEFINED | PHYSICAL BACKUP | LOGICAL BACKUP | DATABASE BACKUP METHODS ⇐
COMPUTING PLATFORMS AND SOFTWARE APPLICATIONS [컴퓨팅 플랫폼 및 소프트웨어 응용]
COMPUTING PLATFORM DEFINED
⇒ Computing Platform: The environment where hardware and software work together to run applications. ⇐
⇒ Component - Hardware: The type of device such as a desktop computer, laptop, or smart phone. ⇐
⇒ Component - Software: The type of OS and the programs and applications which run on the OS. ⇐
⇒ Platform Type - Desktop Platform: Includes personal computers and laptops that run operating systems such as Windows, macOS, and Linux. ⇐
⇒ Platform Type - Web-Based Platform: Includes modern browsers like Firefox and Chrome that function the same in various operating systems. ⇐
⇒ Platform Type - Mobile Platform: Includes mobile devices like the Pixel and the iPhone which run operating systems such as Android and iOS. ⇐
⇒ Planning Application: The software developers must consider if they design for one platform or across platforms depending on the primary users. ⇐
SINGLE-PLATFORM SOFTWARE
⇒ Single-Platform Software: A software where the programming code only works on one kind of computing platform. ⇐
⇒ Single Platform Characteristics: [i] Written for a particular OS or version of OS [ii] Written in specific programming language [iii] Operates only in a target OS. ⇐
⇒ Single Platform - Pros: [i] Smaller and focused app user base [ii] Better performance and faster speed [iii] Program is easier to use as UX is designed for one OS. ⇐
⇒ Single Platform - Cons: [i] Higher cost of development [ii] Longer development time [iii] More specialized programming expertise needed [iv] Frequent updates. ⇐
CROSS-PLATFORM SOFTWARE
⇒ Cross-Platform Software: A software where the programming code can function on multiple computing platform. ⇐
⇒ Cross-Platform Characteristics: [i] Written for more than one OS type [ii] Operates similarly on platforms [iii] Performance varies due to platform differences. ⇐
⇒ Cross-Platform - Pros: [i] Programming expertise more generalized [ii] A wider app user base and market reach [iii] Lower cost of development in shorter term. ⇐
⇒ Cross-Platform - Cons: [i] Design challenges for similar the app functionalities on different OS [ii] Performance may vary due to differences [iii] UX may vary. ⇐
⇒ Cross-Platform Compatibility Concern #1: The software acts differently or may have limited usability across devices and platforms. ⇐
⇒ Cross-Platform Compatibility Concern #2: The software is created by different developers, so code interpretation could be different. ⇐
⇒ Cross-Platform Compatibility Concern #3: The functionalities and results differ across platform which ends up in undesired results. ⇐
CLOSED SOURCE SOFTWARE DEFINED
⇒ Closed Source Software [or Commercial or Proprietary]: A copyrighted software which is identified in the End User License Agreement.⇐
⇒ End-User License Agreement [EULA]: A legal contract between the software developer or vendors and the end user which outlines terms and conditions.⇐
⇒ Copyright Acknowledgment: When individual or company purchase the software, there must be an acknowledgement of the software developer copyright. ⇐
⇒ Prohibited Code Modification in Closed Source: The closed source code is private which means that users are disallowed to copy, modify, or redistribute. ⇐
⇒ Open Source Code Bundles: While developed for commercial profit, the software can include open source code bundles along with a private source code. ⇐
⇒ Product Key in Closed Source Software: Commercial software usually requires the product key or a serial number to certify that the software is original. ⇐
⇒ Freemium Closed Source Software: Some commercial software is free, but upgrades and updates may cost extra payment or the software contains Ads. ⇐
OPEN SOURCE SOFTWARE DEFINED
⇒ Open Source Software [or Free]: A free software which can be downloaded, installed, and used without any restriction.⇐
⇒ Allowed Code Modification in Open Source: Free source code which can be freely copied, modified, and redistributed. ⇐
⇒ Opened Access to Software Codes: Open access to the software functions an software code without cost or restrictions. ⇐
⇒ Allowed Developer Contributions: The developers and users can contribute to the source code to improve the software. ⇐
⇒ Copyright Agreement Is Still Required: Open source software requires users to agree to the EULA to use the software. ⇐
SOFTWARE LICENSE DEFINED
⇒ Software License: A contract which states the terms and conditions between the developer of the source code and use of the software. ⇐
⇒ Statement #1: [i] Specifies who owns the software, [ii] outlines copyrights for the software, and [iii] specifies the terms and duration of the license. ⇐
⇒ Statement #2: [i] States where the software can be installed, [ii] how many copies of software can be installed, [iii] and how software can be used. ⇐
⇒ License Type - Single-Use License: A license which allows a single installation on one device or any machines which belong to only one user. ⇐
⇒ License Type - Group, Corporate, Campus, Site License: A license which allows multiple installation for a specified number of multiple users. ⇐
⇒ License Type - Concurrent License: A license which allows installation and access on many computers, but limited by concurrent user access. ⇐
⇒ Software License Type - Public Domain: Allows anyone to use, modify, and distribute the software freely without any restrictions. ⇐
⇒ Software License Type - Freeware: Allows anyone to freely use software, but source code is usually unavailable and unmodifiable. ⇐
⇒ Software License Type - Shareware: Allows users to try software for a limited period of time before deciding whether to purchase. ⇐
⇒ Software License Type - Open Source: Allows users access as long as license terms followed; often requires modifications shared. ⇐
⇒ Software License Type - Proprietary: Grants users right to use software, but source code is not available, and can not be modified. ⇐
⇒ Software License Type - Copyleft: Close to open source license, but source code is unavailable and unmodifiable unless permitted. ⇐
SOFTWARE PURCHASE MODELS
⇒ Purchase Model - Trial: Usually free only given for a limited time, so that a user can decide if they want to purchase after their trials. ⇐
⇒ Purchase Model - Subscription: A payment model which requires recurring payments and users are billed regularly on a set schedule. ⇐
⇒ Purchase Model - One-Time: A payment model which users pay just once for the software and can be not interrupted for software life. ⇐
⇒ Subscription Characteristics: [i] Generates more income for developers [ii] Can control the costs and updates [iii] Access to software for a limited time. ⇐
⇒ One-Time Characteristics: [i] The software updates and upgrades may not be available [ii] Can access anytime without interruption under software life. ⇐
Product Keys and Activation
⇒ Product Key: The unique and long sequences of numbers which certify the originality of software copy; locked to a specific computer once activated. ⇐
⇒ Delivery of Product Key: [i] Included in the physical packaging [ii] Sent via Email for downloaded software [iii] Automatically registers when installed.⇐
Before Installation Considerations
⇒ Consideration #1: Avoid software with Ads or other unwanted software and avoid downloading software which contains malware. ⇐
⇒ Consideration #2: Review permission requests to access other applications and hardware on the device which software is installed. ⇐
⇒ Consideration #3: Be selective when allowing application privileges to item such as device camera, contact lists, location data, etc. ⇐
⇒ Consideration #4: Consider minimum system requirements such as processor speed, amount of RAM, compatible OS versions, etc. ⇐
Software Uninstallation Procedures
⇒ Uninstallation Reason #1: The specific software slows down overall speed of the computer device. ⇐
⇒ Uninstallation Reason #2: The software version is outdated, so new software installation is needed. ⇐
⇒ Uninstallation Reason #3: The device does not have enough available storage space with software. ⇐
SOFTWARE VERSIONS DEFINED
⇒ Software Versions: Represented by version numbers, the software versions indicate release history, update history, and patches, i.e., small fixes or updates.⇐
⇒ Software Versions Functionalities: [i] Users can determine what software version in use [ii] Developers can provide useful information with version numbers. ⇐
Software Version Numbering Systems
⇒ Version Numbering System: Some version numbers follow the semantic numbering system and have four parts separated by the period, e.g., 9.1.33.6⇐
⇒ Numbering Information: [i] 1.0 generally indicates first release [ii] Software with many releases have a larger number [iii] Some use dates as numbers. ⇐
⇒ Numbering - First Number: Indicates major changes to software such as a new release. ⇐
⇒ Numbering - Second Number: Indicates minor changes made to the pieces of software. ⇐
⇒ Numbering - Third Number: Indicates patches or minor bug fixes within the software. ⇐
⇒ Numbering - Fourth Number: Indicates build numbers, build dates, and other change. ⇐
Version Compatibility
⇒ Compatibility Issue and Update: The older software versions may not work as well in new versions, so an update to a new version might be needed. ⇐
⇒ Backward Compatibility: The software which has backward compatibility will function properly with older versions of files, programs, and systems. ⇐
MOBILE APPLICATION STORE DEFINED
⇒ Mobile Application Store: A trusted location for discovering millions of applications for operating system platforms, e.g., Apple App Store, Google Play Store.⇐
⇒ Trusted Source to Download and Install: The App Stores have high standards for applications in them, requiring strict guidelines for data security and privacy. ⇐
ACCESS, SEARCH, DOWNLOAD, INSTALL, UPDATE
⇒ Access: The process or navigating to the mobile application store through a mobile device, e.g., built-in app or internet access. ⇐
⇒ Search: The action of finding an application within the app store by using tools including keywords, categories, or voice input. ⇐
⇒ Download: The process of transferring an application package file from the mobile application store servers to a mobile device. ⇐
⇒ Install: The process of unpacking and configuring the downloaded application file into the operating system of a mobile device. ⇐
⇒ Update: The act of applying a newer version of already installed applications to improve features, fix bugs, or enhance security. ⇐
PRODUCTIVITY SOFTWARE
⇒ Productivity Software: The programs and applications which users use everyday, helping users to manage activities and complete daily tasks. ⇐
⇒ Example - Word Processing Software: [Purpose] To create, use, and edit documents [Examples] Words, Pages, Google Docs ⇐
⇒ Example - Presentation Software: [Purpose] To create slides for presentations [Examples] PowerPoint, Keynote, Google Slides ⇐
⇒ Example - Spreadsheet Software: [Purpose] To create worksheets that perform calculations on numerical data [Examples] Excel, Google Sheets ⇐
⇒ Example - Web Browser Software: [Purpose] To allow users to browser the Internet or local networks [Examples] Google Chrome, Microsoft Edge ⇐
⇒ Example - Visual Diagramming Software: [Purpose] To create, use, and edit visual files [Examples] Adobe Photoshop and Illustrator, Microsoft Visio ⇐
BUSINESS SOFTWARE
⇒ Business Software: The programs and applications which help businesses complete work tasks and business-specific processes more efficiently. ⇐
⇒ Example - Database Software: [Purpose] To create, manage, maintain databases [Examples] IBM DB2, MS SQL Server, MySQL, Oracle Database, Amazon RDS ⇐
⇒ Example - Business Specific Software: [Purpose] To perform functions specific to business [Examples] Salesforce, Oracle NetSuite, SAP HANA, WorkWise ⇐
⇒ Example - Project Management Software: [Purpose] To build, implement, track, manage projects [Examples] MS Project, Oracle NetSuite, Wrike, ZenHub ⇐
⇒ Example - Accounting Software: [Purpose] To track and manage financial transactions and records [Examples] Intuit Quickbooks, Xero, FINSYNC ⇐
COLLABORATION SOFTWARE
⇒ Collaboration Software: Helps communication and collaboration by allowing the users to create, develop, and share information collaboratively.⇐
⇒ Example - Email Client: [Purpose] To send and receive Emails [Examples] Microsoft Outlook, Apple Mail, Gmail, Yahoo Mail, Naver Mail ⇐
⇒ Example - Conferencing Software: [Purpose] To connect users via video calls, screen sharing [Examples] Zoom, Microsoft Teams, Cisco Webex ⇐
⇒ Example - Instant Messaging Software: [Purpose] To connect users in real-time texts and video [Examples] Facebook Messenger, Snapchat, Skype ⇐
⇒ Example - Online Workspace: [Purpose] To provide online environment for service and application [Examples] Microsoft Online 365, Slack, Google Docs ⇐
⇒ Example - Document Sharing: [Purpose] To host provate and sharable file storage by cloud-based services [Examples] MS OneDrive, Google Drive, Dropbox ⇐
UTILITY SOFTWARE
⇒ Utility Software: Runs continuously on a computer without requiring direct user interaction, keeping computers and networks function properly. ⇐
⇒ Example - Anti-Malware Software: [Purpose] To protect computers from malware, e.g., viruses, spyware, worms, trojans [Examples] Bitdefender, McAfee ⇐
⇒ Example - Firewall Software: [Purpose] To protect computers from cyberattacks and to filter network traffic [Examples] Windows Firewall, Cisco Secure Firewall ⇐
⇒ Example - Preventative Maintenance Software: [Purpose] To scan, check, diagnosis hard disk errors and optimize operations [Examples] Windows Disk Management ⇐
File Extensions
⇒ File Extensions: A file identification with three and four letters, telling users more information about files and the application that use those files. ⇐
⇒ File Extension Naming Rules and Examples: [i] Three to four letters [ii] Appear after the file name [Ex] filename.api | filename.doc | filename.docx ⇐
EXECUTABLE FILES
⇒ Executable Files: Files which run programs and applications as a part of the operating system, an installation package, or an application that runs. ⇐
⇒ Executable Files File Format Extension Examples: [i] .exe EXE [ii] .bat BAT [iii] .sh SH [iv] .cmd CMD [v] .app APP [vi] .msi orMSI ⇐
COMPRESSION FILES
⇒ Compression Files: Files used to [i] combine large files to save disk space, [ii] store archived files not needing regular access, [iii] condense any type of files. ⇐
⇒ Compression Files File Format Extensions Examples: [i] ZIP or ZIPX [ii] 7-ZIP, 7z [iii] GZIP, GZ [iv] ISO [v] JAR [vi] RAR [v] TAR ⇐
MEDIA FILES
⇒ Media Files [Audio and Video Files]: The media files which can contain sound recordings, video recordings, or both; different media formats are available. ⇐
⇒ Media Files File Format Extensions Examples: [Audio] WAV, MPEG (MP3 and MP4), AAC, MIDI [Video] AVI, FLV, MPEG, WMV ⇐
IMAGE FILES
⇒ Image Files: The images, photos, digital paintings, and pictures can be stored as image files, e.g., JPEG, PNG, TIFF, GIF.⇐
⇒ Image Files File Format Extensions Examples: [i] GIF [ii] JPG or JPEG: small size, low quality [iii] PNG [iv] TIFF or TIF ⇐
DOCUMENT FILES
⇒ Document Files: The files that rely on mostly text are saved as document files, TXT, RTF, DOCX, XLSC, PDF, PPTX.⇐
⇒ Document Files File Format Extensions Examples: [i] TXT [ii] RTF [iii] DOCX or DOC [iv] XLSX or SLX [v] PDF ⇐
FUNDAMENTALS OF WEB BROWSER, APPLICATIONS, AND CLOUD COMPUTING [웹 브라우저, 애플리케이션, 클라우드 컴퓨팅]
WEB BROWSER DEFINED
⇒ Web Browser: A software interface to access recourses on the internet by allowing users to request and retrieve web-based contents stored on web servers.⇐
⇒ Web Browser Role: [i] Users request access to webpages on various websites [ii] Browsers request and retrieve content [iii] Display content on web pages. ⇐
⇒ Web Browser Market Share: [i] Google Chrome: 64.47% [ii] Apple Safari: 29.06% [iii] Microsoft Edge: 3.99% [Next] Mozilla Firefox, Samsung Internet. ⇐
WEB BROWSER SOFTWARE COMPONENTS
⇒ Component - User Interface: Where the user uses common UI elements, e.g., search bars, address bars, buttons, history, bookmarks, favorites. ⇐
⇒ Uniform Resource Locator [URL]: A reference to resource that specifies its location on a computer network and a mechanism for retrieving it. ⇐
⇒ UI Tools: [Navigation Tools] Buttons used for navigation, e.g., home, back, forward, refresh. [Address Bar] To enter a URL to search for contents. ⇐
⇒ Component - Browser Engine: The pieces of code responsible for querying and controlling rendering engine based on user interactions in UI. ⇐
⇒ Browser Engine Requesting Functionalities: [i] Request to load the URL [ii] Request to back and forward navigation when the user is browsing. ⇐
⇒ Component - Rendering Engine: An engine that interprets and presents--i.e., renders--the requested web pages and content on browser screen. ⇐
⇒ HyperText Markup Language [HTML]: The standard markup language for documents which are designed to be displayed in the web browser. ⇐
⇒ Extensible Markup Language [XML]: The metalanguage that allows users to define own customized markup languages to display documents. ⇐
⇒ Interprets and Presents: [i] Interprets HTML code, XML documents, and images [ii] Presents in easily digestible formats on the browser screen. ⇐
⇒ Rendering Engine and Plugins and Extensions: A rendering engine is capable of displaying other kinds of data by using plugins and extensions. ⇐
⇒ Component - Networking: A component which retrieves the entered URLs by using Internet Communication Protocol such as HTTP and FTP. ⇐
⇒ HyperText Transfer Protocol [HTTP]: The foundation of the World Wide Web (WWW) which is utilized to load web pages using hypertext link. ⇐
⇒ File Transfer Protocol [FTP]: A protocol used for secure transferring of computer files between a client and a server on the computer network. ⇐
⇒ Responsibilities of Networking: Responsible to handle the cache of recently retrieved content, which allows browsers to re-issue when requested. ⇐
⇒ Benefits: [i] Reduce network traffic [ii] Speeds up web requests [iii] Eliminates need to go back to source content which was previously retrieved. ⇐
⇒ Component - JavaScript Interpreter: Interprets and executes JavaScript code embedded in viewed website, directing result to rendering engine. ⇐
⇒ Javascript: A scripting language which is primarily used to make web pages interactive, allowing the developers to implement dynamic feature. ⇐
⇒ Directing Interpretation to Rendering Engine: The interpreted results are directed to the rendering engine to be rendered on the browser screen. ⇐
⇒ Component - UI Backend: Responsible for drawing basic widget by using underlying operating system UI methods to expose generic interface. ⇐
⇒ Web Widget: The small, customizable applications or tools embedded into website or web application to enhance functionality and engage user. ⇐
⇒ Widget - Windows: A graphic user interface widget which acts as a container for interface elements, representing independent workspace or view. ⇐
⇒ Widget - Combo Boxes: A user interface widget which combines a drop-down list with an editable text box to select from list or enter own value. ⇐
⇒ Component - Data Persistence: A data storage component that is essentially a small database located on the local device which stores user data.⇐
⇒ User Data Stored in Data Persistence: [i] Cache of the Computer [ii] Session Storage [iii] Cookies [iv] Bookmarks [v] User Profile Preferences ⇐
Obtaining Web Browsers
⇒ Pre-Installed: [i] Edge on Microsoft Windows OS [ii] Safari on iOS and macOS [iii] Samsung Internet on Android ⇐
⇒ Download on Website or App Store: [i] Edge [ii] Safari [iii] Chrome [iv] Firefox [v] Opera [vi] Samsung Internet ⇐
⇒ Setting Default Browser: The default browser is the browser which the operating system will automatically direct. ⇐
Importance of Browser Updates
⇒ Compatibility With Websites: As new web-based technologies emerge, the web browsers need to be updated to support new technologies. ⇐
⇒ Security Vulnerabilities: Not having an updated web browser can lead into possibility of being compromised by malicious software attack. ⇐
⇒ New Features: As a developer add new or improved features to their browser software, the web browsers need to gain the updated benefits. ⇐
Browser Update Schedules
⇒ Major Update Frequency: A major update happen every four weeks for Google Chrome, Microsoft Edge, and Mozilla Firefox Browsers. ⇐
⇒ Minor Update Frequency: Minor updates--e.g.,security fixes, crash fixes, policy updates--happen as needed within the four-week period. ⇐
⇒ Extended Release Vendors: Some vender offer extended release for updates at much-reduced frequency for the structured environments. ⇐
BROWSER PLUG-INS DEFINED
⇒ Browser Plug-In [or Add-In or Add-On]: A small piece of software which provides some specific bit of extra functionality to the web browser, e.g., to view content. ⇐
⇒ Viewing Web Browser Contents: A web browser, along HTML contents, also allows viewing of other web-based content, e.g., images, video, audio, and XML files. ⇐
BROWSER EXTENSION DEFINED
⇒ Browser Extension: An application which provides the extended functionalities for the web browser, along with enabling its users to customize their web browser. ⇐
⇒ Difference Between Plug-In and Extension: The plug-ins are executable code to add functionality, while extensions are non-executable code to extend functionality. ⇐
⇒ Extension Capability: The extensions can customize browser context menus, add buttons and toolbars, manage cookies, and block pop-ups, whereas plug-ins cannot. ⇐
PROXY SERVER DEFINED
⇒ Proxy Server: An intermediary that makes web requests on behalf of clients to protect privacy and bypass limits, making a website think the proxy is site visitor. ⇐
⇒ Organizational Benefits of Proxy Server: The proxy server helps organizations to maintain web security, web monitoring, and content filtering for all employees. ⇐
⇒ Performance Efficiency of Proxy Server: The proxy server reduces bandwidth usage and improves the web request speed by modifying IP addresses information. ⇐
COOKIES DEFINED
⇒ Cookie: The small pieces of text-based data storing information about computer when browsing a website, saving session information for customized experience. ⇐
⇒ Session Cookie: The specific type of data which retains items in the online shopping basket when the user is actively purchasing goods on the retail service website. ⇐
⇒ Security Risks: The potential of invading privacy through browsing behavior tracking for unsolicited ads or utilizing cookie fraud to falsify the users online identity. ⇐
⇒ Cookie Control: The browser settings which is used to allow all cookies, block third-party cookies, or block all cookies depending on the user privacy requirements. ⇐
BROWSER AND CACHE
⇒ Cache: The temporary storage area which is used to store web data so it can be quickly retrieved and reused instead of needing to go back to the original source. ⇐
⇒ Cache Purging: The process of clearing cached images and files from the local disk to ensure the browser successfully retrieves the latest content from the internet. ⇐
SECURITY CERTIFICATES DEFINED
⇒ Padlock Icon: The visual indicator next to URL confirming that connection is secure and that the site uses SSL or TLS encryption standards for HTTPS protocol. ⇐
⇒ Not Secure Warning: A notification appearing when a site uses HTTP protocol instead of HTTPS protocol or has an expired or untrusted SSL security certificate. ⇐
⇒ SSL and TLS (Modern Version): The protocol standards for secure communication between systems using encryption algorithms to protect data during transit. ⇐
Pop-up Defined
⇒ Pop-up: The third-party scripts or advertisements which appear during browsing, typically used for targeted online marketing purposes. ⇐
⇒ Malicious Pop-ups: The deceptive notifications which may look legitimate, but contain malware designed to gain control of the computers. ⇐
PRIVATE BROWSING DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
CLIENT-SIDE SCRIPTING DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
JAVASCRIPT DISABLE
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
CLOUD COMPUTING DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
CLOUD DEPLOYMENT MODELS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
CLOUD SERVICE MODELS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
APPLICATION ARCHITECTURE DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
ONE-TIER MODEL
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
TWO-TIER MODEL
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
THREE-TIER MODEL
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
N-TIER MODEL
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DELIVERY METHODS DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
LOCAL INSTALLATION
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
LOCAL-NETWORK HOSTED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
CLOUD HOSTED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
SOFTWARE DEVELOPMENT LIFE CYCLE DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
SDLC PHASES
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
POPULAR SDLC MODELS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
BASICS OF PROGRAMMING [프로그래밍 기초]
PROGRAMMING LANGUAGE DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
INTERPRETED LANGUAGE
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
COMPILED LANGUAGE
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Comparing Interpreted and Compiled
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Examples of Programming Languages
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Programming Language Levels
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
QUERY LANGUAGES
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
QUERY STATEMENTS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
ASSEMBLY LANGUAGES
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
SCRIPT DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
SCRIPTING LANGUAGE
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Examples of Scripting Languages
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
IMPORTANCE OF CODE ORGANIZATION
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
FLOWCHARTS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
PSEUDOCODE
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
PROGRAMMING LOGIC DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
BRANCHING PROGRAMMING LOGIC
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
LOOPING PROGRAMMING LOGIC
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
IDENTIFIERS DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Variables
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
CONTAINERS DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Arrays
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Vectors
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
FUNCTION DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Function Types
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
OBJECTS DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Object-Oriented Programming
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATABASE FUNDAMENTALS [데이터베이스 기초]
DATA DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATA CLASSIFICATIONS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATA FORMS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATA STRUCTURES
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATA SOURCES
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATABASE DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATABASE QUERY
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATABASE CONSTRAINTS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Flat File vs. Database
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATABASE PERMISSIONS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
PERMISSION TYPES
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
PERMISSION COMMANDS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATABASE ROLES
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATA STRUCTURES
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
RELATIONAL DATABASE
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
NON-RELATIONAL DATABASE
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
Non-Relational Database Models
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATABASE INTERFACE DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
PRINCIPLES OF DATABASE INTERFACE
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
ACCESSING DATABASE
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATABASE MANAGEMENT DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
SQL COMMAND CATEGORIES
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATA INPUT
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATA EXTRACTION
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATABASE BACKUP DEFINED
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
PHYSICAL BACKUP
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
LOGICAL BACKUP
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐
DATABASE BACKUP METHODS
⇒ ____________ ⇐
⇒ ____________ ⇐
⇒ ____________ ⇐