Introduction to Integrative Programming PDF
Document Details
Uploaded by IrreplaceableSanctuary2347
Polytechnic University of the Philippines
Jonnalyn B. Apsay, LPT
Tags
Summary
This document provides an introduction to integrative programming, explaining fundamental concepts like system integration, cross-platform development, and programming language compatibility. It also covers different types of system integrations, their benefits, and examples. This document is particularly useful for students or professionals interested in broadening their knowledge in programming and software development.
Full Transcript
# Introduction to Integrative Programming ## Prepared by: Jonnalyn B. Apsay, LPT ## Instructor ### Objectives - Explain the fundamental concepts of system integration, cross-platform development, and programming language compatibility. - Demonstrate how to create a basic program that integrates t...
# Introduction to Integrative Programming ## Prepared by: Jonnalyn B. Apsay, LPT ## Instructor ### Objectives - Explain the fundamental concepts of system integration, cross-platform development, and programming language compatibility. - Demonstrate how to create a basic program that integrates two programming languages. - Appreciate the importance of learning diverse programming languages for software integration and show openness to exploring cross-platform development. ## Introduction Integrative programming involves blending programming languages and tools to create efficient systems that work together seamlessly as modern software systems become more complex. It is crucial to integrate technologies to enable diverse applications to communicate and share data efficiently. ### Overview of System Integration - System integration involves combining different components and technologies to create cohesive software solutions that work seamlessly. This is critical in modern IT environments where diverse software systems need to interact to accomplish complex tasks. Integration can include databases, web services, and external APIs to enable smooth communication between disparate systems. - "Interoperability facilitates more efficient, specialized systems by allowing developers to select the best tools for each task." ## Types of System Integration ### 1. Enterprise Application Integration (EAI) - Enterprise Application Integration (EAI) is a specific type of system integration that focuses on connecting various software applications within a single organization. It specifically targets enterprise applications used by different departments, like CRM, ERP (Enterprise Resource Planning), and inventory management systems. ### 2. Point-to-point Integration - Point-to-point integration is a type of system integration where individual systems are directly connected to share data or functionalities they need to work together. Unlike other methods that rely on a central platform, point-to-point integration establishes a dedicated link between the two systems involved, enabling faster data exchange and potentially less complexity in the initial setup. Data exchange can be facilitated through custom code written specifically for the integration or by leveraging APIs provided by the systems themselves, which offer a standardized way for applications to communicate and share data. ### 3. Vertical Integration - Vertical integration in system integration focuses on connecting various systems within a specific department or business function within an organization. It aims to create a streamlined workflow and improve efficiency by unifying data and functionalities within a particular area. - Vertical integration concentrates on systems used within a specific function like HR, finance, manufacturing, or supply chain. For example, integrating HR management systems, payroll processing systems, and benefits administration systems within the HR department. ### 4. Horizontal Integration - Horizontal integration brings together functionalities and data from different departments within an organization, breaking down departmental silos and fostering a more unified view of operations. Unlike vertical integration which connects systems within a single department, it bridges the gap between different departments. ## Benefits of System Integration | Benefits | | ----- | | Increased Efficiency and Productivity | | Enhanced Collaboration | | Improved Data Visibility and Accuracy | | Reduced Costs | | Improved Competitive Advantage | | Scalability and Flexibility | | Better Customer Experience | | Simplified IT Management | ## Examples of Systems Integration - Inventory Management & Point-of-Sale (POS) Integration - Electronic Health Records (EHR) & Appointment Scheduling Systems Integration - CAD & Manufacturing Execution Systems (MES) Integration - Banking Systems & Accounting Software Integration - CRM & Marketing Automation Integration ## Role of APIs and Web Services - APIs and web services are integral to system integration, providing standardized methods for interaction between systems regardless of programming language or platform. ## Terminology Definition | Terminology | Definition | | ----- | ----- | | XML | eXtensible Markup Language | | JSON | JavaScript Object Notation | | HTTP | HyperText Transfer Protocol | | SOAP | Simple Object Access Protocol | | REST | REpresentational State Transfer | | Web Applications | Web app | ## What is a Web Service? - A Web service is a way for two machines to communicate with each other over a network. - A web server running on a computer listens for requests from other computers. When a request from another computer is received, over a network, the Web service returns the requested resources. This resource could be JSON, XML, an HTML file, Images, Audio Files, etc. ## Advantages of Web Services - Interoperability - Deployability - Usability - Reusability - Cost ## Types of Web Service Testing ### 1. SOAP Web Services - SOAP (Simple Object Access Protocol) is an XML-based protocol for accessing web services. Its interface is described in a machine-processable format called WSDL (Web Service Definition Language) document. A web service is described by using a standard, formal XML notion that provides all necessary details like message format, transport protocols, and location to interact with the web service. ### 2. REST Web Services - REST (Representational State Transfer) is a style of software architecture. The data format is described by using JSON schema notation, and it requires the use of the HTTP transport protocol. ## What is an API? - An API, or Application Programming Interface, is a set of definitions and protocols that allow one application to communicate with another application. ## Is a REST API a Web Service? - A REST API is a standardized architecture style for creating a Web Service API. One of the requirements to be a REST API is the utilization of HTTP methods to make a request over a network. - REST was officially defined by computer scientist Roy Fielding in 2000 during his Ph.D. dissertation. It essentially changed the way applications are built. The implementation of the frontend "client" can be built completely independently from the backend "server." ## A REST Request from the Client to the Server Usually Consists of the Following Components: - URL Path (e.g., `https://api.example.com/user`) - HTTP Method (GET, PUT, POST, PATCH, DELETE) - Header - (optional) additional information that the client needs to pass along in the request such Authorization credentials, Content-Type of the body, User-Agent to define what type of application is making the request, and more. - Parameters - (optional) variable fields that alter how the resource will be returned. - Body - (optional) contains data that needs to be sent to the server. ## What is Programming Language Interoperability? - Programming Language Interoperability refers to the ability of different programming languages to interact within the same application or system. This is crucial in diverse development environments where applications may need to leverage the unique strengths of multiple languages for improved functionality and efficiency. - Interoperability is the ability of different programming languages to communicate effectively within the same software environment. This can be essential for leveraging the strengths of each language, allowing for more robust and versatile applications. ## Importance of Interoperability - Code Reuse: Allows existing code written in one language to be used by applications in another, reducing redundancy. - Efficiency: Leveraging language-specific strengths can optimize performance, such as using Python for data processing and Java for scalability. - Maintainability: Enables teams to maintain legacy systems while integrating newer technologies, avoiding complete rewrites. ## Real World Examples - You go to a restaurant you sit at your table and you choose that you need ABC. You will have your waiter coming up and taking a note of what you want. You tell him that you want ABC. So, you are requesting ABC, the waiter responds back with ABC he gets in the kitchen and serves you the food. In this case, who is your interface in between you and the kitchen is your waiter. It's his responsibility to carry the request from you to the kitchen, make sure it's getting done, and you know once it is ready he gets back to you as a response. - Kayak is the biggest online site for booking tickets. You enter your destination, once you select dates and click on search, what you get back are the results from different airlines. How is Kayak communicating with all these airlines? There must be some ways that these airlines are actually exposing some level of information to Kayak. That's all the talking, it's through APIs - Now open UBER and see. Once the site is loaded, it gives you an ability to log in or continue with Facebook and Google. In this case, Google and Facebook are also exposing some level of users' information. There is an agreement between UBER and Google/Facebook that has already happened. That's the reason it is letting you sign up with Google/Facebook. ## What is Cross-Platform Development? - Cross-platform development refers to the practice of creating software applications that can run on multiple platforms or operating systems. In the context of mobile app development, it typically involves writing a single codebase that can be used to deploy the application on different mobile platforms, such as iOS and Android. - Instead of building separate versions of an app for each platform, developers use frameworks and tools that enable them to write code once and deploy it on multiple platforms. ## Native vs. Cross-Platform Development | Feature | Native Development | Cross-Platform Development | |---|---|---| | Codebase and Language | Separate codebases for iOS and Android, using platform-specific languages (Swift, Objective-C, Java, and Kotlin) | Single codebase for multiple platforms, utilizing web technologies (HTML, CSS, and JavaScript), Dart, or cross-platform frameworks (React Native, and Xamarin) | | Code Reusability | Limited code reuse between platforms | Higher code reusability, enabling development efficiency | | Performance | Optimal performance leveraging native APIs | Good performance, improving with advancements in cross-platform frameworks | | Longer development time due to separate codebases | Shorter development cycles, with the ability to write once and deploy on multiple platforms | | Development Time | | | | UI Consistency | Platform-specific UI design for native look and feel | Strives for UI consistency across platforms, might have subtle differences | ## Why Cross-Platform Development? - Write once, run anywhere - Cost-efficient and faster development time - Consistent user experience - Ease of maintenance - Access to a wider range of developers ## Challenges of Cross-Platform Development - Performance issues - Limited access to native and updated features - Debugging complexity - App store approval challenges ## Examples of World-Class Apps Developed Using Cross-Platform Frameworks - Google Ads - UberEats - Pinterest - Instagram - Microsoft Outlook ## Five Well-Known Platforms - React Native - PhoneGap/Cordova - Flutter - Xamarin - Ionic ## Five Well-Known Platforms - **React Native:** Developed by Facebook, React Native is a popular open-source framework for building mobile apps using JavaScript and React. It enables developers to create high-performance apps with a native look and feel for both iOS and Android. - **Flutter:** Flutter is an open-source UI toolkit created by Google for building natively compiled applications. It uses the Dart programming language and provides a rich set of pre-designed widgets, allowing developers to create fast and visually appealing cross-platform apps. - **Xamarin:** Owned by Microsoft, Xamarin allows developers to use C# and the .NET framework to build cross-platform mobile apps. It provides a single codebase that can be deployed on iOS, Android, and Windows, delivering native-like performance. - **PhoneGap / Apache Cordova:** Apache Cordova, often referred to as PhoneGap, is an open-source mobile development framework. It enables developers to use various web technologies such as HTML, CSS, and JavaScript to build cross-platform mobile apps. PhoneGap provides a bridge between web views and native device features. - **Ionic:** Ionic is a framework for building cross-platform mobile applications using web technologies like HTML, CSS, and JavaScript/TypeScript. It uses Angular as its primary JavaScript framework and provides a library of pre-built UI components for creating visually appealing apps. ## References - https://rapidapi.com/blog/api-vs-web-service/ - https://testautomationresources.com/api-testing/differences-web-services-api/ - https://testautomationresources.com/api-testing/introduction-api-testing-examples/ - https://em360tech.com/tech-article/system-integration - https://www.educative.io/blog/cross-platform-development-overview#Performance-issues # Web Service and API Integration ## Prepared by: Jonnalyn B. Apsay, LPT ## Instructor ### Objectives - Describe the differences between SOAP and REST web services and explain how APIs enable system integration. - Exhibit the ability to create and consume web services via SOAP and REST APIs for system integration.. - Demonstrate a positive attitude towards understanding and applying different API integration techniques in real-world scenarios. ## Introduction Web services and APIs are components in software development as they facilitate communication and data sharing between systems efficiently and securely through the internet using protocols like SOAP (Simple Object Access Protocol) and REST (Representational State Transfer). APIs establish the guidelines and frameworks for interaction among software elements to enable information exchange between applications. In this section of the course content, you will delve into the basics of APIs. ## Introduction to Web Services (SOAP, REST) - Web services provide a platform-independent and language-neutral mechanism for applications and devices to interact with each other over the World Wide Web. There are two types of web services mainly - SOAP and REST. - **SOAP (Simple Object Access Protocol)** is a protocol that uses XML format for exchanging data and it defines a set of rules on how to transmit and receive this XML data. SOAP is a more traditional, heavyweight web service typically used in enterprise environments where security and reliability are paramount. - **REST (REpresentational State Transfer)** is a set of design rules to exchange data over the internet using simple HTTP messages. REST is a lightweight alternative to SOAP that uses HTTP requests to exchange data in JSON format. ## SOAP Web Services - **SOAP** stands for Simple Object Access Protocol is a network platform used in a web service to exchange or communicate data between two different machines on a network. It uses the XML format of data to transfer messages over the **HTTP** protocol. In Web services, SOAP allows the user request to interact with other programming languages. In this way, it provides a way to communicate between applications running on different platforms (Operating system), with programming languages and technologies used in web service. - **The SOAP message contains the following information in the XML format, as given below.** - It contains information about the message structure and instructions during processing on the network. - The SOAP contains an envelope that represents the starting and end of the message in the XML format. - In the message, the header is an optional element that contains application-specific information such as authentication, authorization, and payment etc. - A fault element is an optional element that shows an error message during the processing of the information. ## Characteristic of SOAP - It is an open standard protocol used in the web service to communicate via internet. - It is used to broadcast a message over the network. - It is used to call remote procedures and exchange documents. - It can be used on any platform and can support multi-languages. So, it is a platform and language independent. - It uses the XML format to send messages over the HTTP protocol. - The structure of a SOAP message consists of an envelope, header, and body element. ## How SOAP Works - A SOAP client generates a request which is an XML document (also known as a SOAP Message) and sends it to a SOAP Server using HTTP or HTTPS protocol. The server responds with a XML document (SOAP Message) that contains the data requested by the client. - **A SOAP message is an XML document which contains a set of XML elements arranged in a tree structure. The structure of a SOAP message is depicted in the figure below.** - **SOAP Envelope:** At the root of the SOAP message is the `<Envelope>` element and it is mandatory. It consists of an optional `<Header>` element and the mandatory `<Body>` element - **SOAP Header:** The `<Header>` element is a child element of the `<Envelope>`. It is optional and if exist, it must be the first child element of Envelope and contains application related information that is used for processing the message. - **Header Blocks:** `<Header>` element can have one or more child elements and these are called Header blocks. Header blocks can be SOAP defined attributes or application defined attributes. Few examples of SOAP defined attribute are encodingStyle, actor, mustUnderstand and relay. - **SOAP Body:** The `<Body>` element is a mandatory element and contains the data that is exchanged between the SOAP sender and receiver. - **Fault:** The `<Fault>` element is a child element of Body and is used for reporting errors that occur while processing the SOAP message. This element is optional. ## The Following are the Sub-Elements of the SOAP Fault Element. | Sub Fault Element | Description | | ----- | ----- | | `<faultcode>` | It is used to identify the fault code in the SOAP message. | | `<faultstring>` | It is used to provide the human-readable description of the error. | | `<faultactor>` | It is an optional element in the SOAP Fault that indicate the fault occurred during processing if the message. | | `<detail>` | It is used to hold the application-specific status error of the Body element. ## SOAP Structure Example ```xml <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:c="http://www.acmeOrders.com/OrderService" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soap:Body> <c:OrderMessage> <localElement> <FirstName>John</FirstName> <LastName>Smith</LastName> <Street>High Street</Street> <City>London</City> <ZipCode>W1A1AA</ZipCode> <PartNumber>ABC1234</PartNumber> <Quantity>1</Quantity> </localElement> </c:OrderMessage> </soap:Body> </soap:Envelope> ``` ## SOAP Structure Example ```xml <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope" soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding"> <soap:body pb="http://www.example.com/employees"> <pb:GetEmployee> <pb:Empld>123</pb:EmpId> </pb:GetEmployee> </soap:Body> </soap:Envelope> ``` ## Advantages of SOAP - It is recommended by the W3C consortium for the web services and application programming interface to communicate with the client application. - It is a lightweight communication protocol used for exchanging data between two machines over the network. - It is a platform-independent operating system that can run on Linux, Windows and macOS. - SOAP uses a default protocol to send the message over a network, and all web applications also support it. - It has an XML format that includes an envelope, header, body, and fault element as a SOAP message during the message's processing ## Disadvantages of SOAP - SOAP is used only XML format data in web service, whereas JSON and other lightweight formats are not supported by it. - It is slow because it uses XML format, whereas the payload for a simple string message is large. - There are no security features in the SOAP specification. - There is no state reference for the remote object in the SOAP client. ## REST Web Service - REST (Representational State Transfer) is a set of architectural guidelines for building web services. It is based on a client-server model, where the client sends a request to the server and the server responds with data or an action. Web services that follow REST architecture are called RESTful Web Services. RESTful web services are built using HTTP and follow a set of constraints, such as being stateless and having a uniform interface. The most common HTTP methods used in RESTful web services are GET, POST, PUT, and DELETE, which correspond to the CRUD (Create, Read, Update, and Delete) operations. RESTful web services typically return data in a format such as JSON or XML. ## How REST Works - The purpose of developing a RESTful web service is to make the web service more effective. The Roy Fielding develops it in 2000, who also developed the HTTP protocol. It does not depend on a specific protocol to use, but it's used HTTP/HTTPS. ## Characteristic of REST - It is a Stateless server. - It supports JSON and XML - It is simple than SOAP. - It has well-maintained documentation that reflect each change in the architectures of the REST. - It is a simple approach to build the client and server service. - It follows standard protocol such as HTTP, HTTPS and FTP. - It provides a way to connect with server-side applications. - It is based on architectural style for designing simple, lightweight, and distributed web services compared to SOAP. - Examples of REST Systems are -Google Glass API, Amazon web services, Atom, Tesla Model S. ## A RESTful Web Service Must Adhere to the Following Key Principles. - Separation of concerns between client and server - Identification of resources - Stateless Communication - Cacheable - Layered Design - Manipulation of resources through representations - Hypermedia as the engine of application state (HATEOAS) ## Constraint and the Principles of REST - Client-Server - Stateless Server - Uniform Interface - Cacheable - Layered System ## HTTP Method of REST Web Service - GET - POST - DELETE - PUT ## Summary of HTTP Methods | HTTP Method | CRUD | Collection Resource (e.g. /users) | Single Resource (e.g. /users/123) | | ----- | ----- | ----- | ----- | | POST | Create | 201 (Created), 'Location' header with link to /users/{id} containing new ID | Avoid using POST on a single resource | | GET | Read | 200 (OK), list of users. Use pagination, sorting, and filtering to navigate big lists | 200 (OK), single user. 404 (Not Found), if ID not found or invalid | | PUT | Update/Replace | 405 (Method not allowed), unless you want to update every resource in the entire collection of resource | 200 (OK) or 204 (No Content). Use 404 (Not Found), if ID is not found or invalid | | PATCH | Partial Update/Modify | 405 (Method not allowed), unless you want to modify the collection itself | 200 (OK) or 204 (No Content). Use 404 (Not Found), if ID is not found or invalid | | DELETE | Delete | 405 (Method not allowed), unless you want to delete the whole collection - use with caution | 200 (OK). 404 (Not Found), if ID not found or invalid | ## Advantage of REST - REST web services are fast as compared to SOAP because it has no restriction like SOAP. It consumes less bandwidth and resources. - It is an architectural style for creating lightweight, scalable and maintainable web service. - It is a language and platform-independent web service that can be written in any programming language and run on Windows, Linux and Mac. - REST web service helps the client machine access different formats of data such as HTML, JSON, XML, etc. from the webserver. ## Difference Between SOAP and REST Web Service | Feature | SOAP Web Service | REST Web Service | | ----- | ----- | ----- | | | It stands for Simple Object Access Protocol. | It stands for REpresentational State Transfer. | | | It is XML based messaging protocol. | It is not a protocol, it is an architectural style for distributed hypermedia system. | | | It needs more bandwidth and resources for better web performance. | REST requires less bandwidth and resources as compared to SOAP. | | | SOAP enforces XML as a message format. | It is not specifically applied that the message format must be XML or JSON, etc. | | | It has not great performance as compared to REST. | It has better performance as compared to SOAP, less CPU intensive, lesser code, etc. | | | SOAP defines its security. | It defines its security. | | | It does not support error handling. | It has built-in error handling. | | | SOAP is a heavyweight XML protocol that requires more coding to send a message. | It is a lightweight, scalable and maintainable. | | | It cannot be cached. | It can be cached. | | | SOAP messages are wrapped in an envelope and sent to any transport mechanism such as SMTP, FTP, HTTP or any protocol. | It relies on the HTTP protocol for communication between two machines. | ## Example ```json { "id": 123, "title": "What is REST", "content": "REST is an architectural style for building web services...", "published_at": "2023-11-04T14:30:00Z", "author": { "id": 456, "name": "John Doe", "profile_url": "https://example.com/authors/456" }, "comments": { "count": 5, "comments_url": "https://example.com/posts/123/comments" }, "self": { "link": "https://example.com/posts/123" } } ``` ## Whiteboard Programming - Difference Between REST vs Web vs SOAP, APIs Explained & When to Use Them ## What the #$%*@ Is an API? - **Postman Beginner Course** ## What is XML? - XML (eXtensible Markup Language) is a widely used file format to store and exchange structured data. Saving XML files correctly is crucial to maintain the integrity of the data they contain. If you are new to XML and unsure about how to save XML files, this beginner's guide will walk you through the process. - XML is a markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. It is often used to structure data and enable the exchange of information between different systems and applications. ## What's the Difference Between JSON and XML? - JSON and XML are data representations used in data exchange between applications. - JSON is an open data interchange format that is readable by both people and machines. JSON is independent of any programming language and is a common API output in a wide variety of applications. - XML is a markup language that provides rules to define any data. It uses tags to differentiate between data attributes and the actual data. While both formats are used in data exchange, JSON is the newer, more flexible, and more popular option. ## Difference Between JSON and XML | Feature | JSON | XML | | ----- | ----- | ----- | | Stands for | JSON means JavaScript Object Notation. | XML means Extensible Markup Language. | | History | Douglas Crockford and Chip Morningstar released JSON in 2001. | The XML Working Group released XML in 1998. | | Format | JSON uses a map-like structure with key-value pairs. | XML stores data in a tree structure with namespaces for different data categories. | | Syntax | The syntax of JSON is more compact and easier to read and write. | The syntax of XML substitutes some characters for entity references, making it more verbose. | Parsing | You can parse JSON with a standard JavaScript function. | You need to parse XML with an XML parser. | | Schema | JSON is simple and more flexible. | XML is complex and less flexible. | | Documentation | | | | Data types | JSON supports numbers, objects, strings, and Boolean arrays. | XML supports all JSON data types and additional types like Boolean, dates, images, and namespaces. | | Ease of Use | JSON has smaller file sizes and faster data transmission. | XML tag structure is more complex to write and read and results in bulky files. | | Security | JSON is safer than XML. | You should turn off DTD when working with XML to mitigate potential security risks.| ## XML Structure - **productListing** - **product** - **name** - **description** - **price** - **shipping** - **product** ## XML Structure ```xml <?xml version="1.0"?> <productListings title="My Products" <product> <name>Product One</name> <description>Product One is an exciting new widget that will simplify your life.</description> <cost>$19.95</cost> <shipping>$2.95</shipping> </product> <product> <name>Product Two</name> </product> <product> <name>Product Three</name> <description>This is such a terrific widget that you will most certainly want to buy one for your home and another one for your office! </description> <cost>$24.95</cost> <shipping>$0.00</shipping> </product> </productListing> ``` ## Why Should You Save XML Files Properly? - **Step 1: Create or obtain your XML file** - The first step is to have an XML file ready for saving. Depending on your needs, you can either create a new XML file from scratch using a text editor, or obtain an existing XML file from another source. - **Step 2: Open the XML file** - Using a text editor or an XML editor, open the XML file you wish to save. Make any necessary edits or modifications to the file before proceeding to the next step. - **Step 3: Validate the XML file** - Before saving, it is best practice to validate the XML file's structure to ensure it adheres to the defined rules. There are various online XML validation tools available that can help you identify any syntax or structural errors in your file. - **Step 4: Save the XML file** - To save the XML file, go to the "File" menu of your text editor or XML editor and choose the "Save" option. Alternatively, you can use the keyboard shortcut Ctrl+S (Windows) or Command+S (Mac) to save the file. - **Step 5: Choose the correct file format and extension** - When saving the XML file, it's important to use the correct file format and extension. XML files are typically saved with a .xml extension. Ensure that you do not accidentally save the file in a different format, such as .txt or .doc. - **Step 6: Choose a meaningful file name and location** - Give your XML file a descriptive and meaningful name that reflects its content. Choose a location on your computer or server where you can easily find and access the file when needed. - **Step 7: Verify the saved XML file** - After saving the XML file, double-check that it has been saved correctly. Open the file again to ensure that all the changes and modifications have been preserved. - **By following these steps, you can save XML files with confidence, knowing that the data will remain intact and accessible. Remember to always validate the file's structure and choose the correct file format and extension. Properly saved XML files will play a vital role in exchanging and storing structured data effectively.** ## Why Should You Save JSON Files Properly? - **Save with extension .json but while saving you have to do some changes.** - **Change Save as type in red circle in image to All Files. It will create .json file with name bharti.json.** - **To check this --> Right click at file > Properties --> Type of file: JSON File (.json)** ## Why Should You Save JSON Files Properly? - **Just show file name extension from Windows Explorer, after applying the below steps, create a new file, and type your extensions as .json** - **Open Folder Options by clicking the Start button Picture of the Start button, clicking Control Panel, clicking Appearance and Personalization, and then clicking Folder Options.** - **Click the View tab, and then, under Advanced settings, clear the Hide extensions for known file types check box, and then click OK.** - **If you want to save to a specific filename just ignore the provided extensions in Notepad/Word/whatever. Just set the filename.ext in and you're done. "Save as type" will be ignored.** ## Why Should You Save JSON Files Properly? - **In Notepad++ on the Language menu you will find the menu item - 'J' and under this menu item chose the language - JSON.** - **Once you select the JSON language then you won't have to worry about how to save it. When you save it it will by default save it as .JSON file, you have to just select the location of the file.** ## Why Should You Save JSON Files Properly? - **Save the file as *.txt and then rename the file and change the file extension to .json.** - **You can save it as .txt and change it manually using a mouse click and your keyboard. OR, when saving the file:** - **Choose All types (*.*) in the Save as type field.** - **type filename.json in File name field** ## References - https://www.opentechguides.com/how-to/article/webservice/234/soap-vs-rest.html#:~:text=Web%20services%20provide%20a%20platform-independent%20and%20language-neutral%20mechanism,of%20web%20services%20mainly%20-%20SOAP%20and%20REST. - https://www.javatpoint.com/soap-and-rest-web-services - https://www.opentechguides.com/how-to/article/webservice/234/soap-vs-rest.html - https://www.youtube.com/watch?v=2mqN7ZhDsUA&t=345s - https://www.youtube.com/watch?v=ZveW4_ZJtVY - https://www.youtube.com/watch?v=CLG0ha_a0q8 - https://restfulapi.net/ - https://restfulapi.net/http-methods/#get - https://www.w3.org/Protocols/rfc2616/rfc2616.txt - https://www.youtube.com/watch?v=lyxJQWUymV4 - https://www.youtube.com/watch?v=sTGgBoFBDAY - https://www.neuralword.com/en/article/how-to-save-xml-files-a-beginners-guide - https://youtu.be/KeLiQXqVgMI