Legacy applications were designed with layers. The layers provided the 'separation of concerns' required in monolithic application designs. The needs of the application, which interacted with customers, were the main purpose of the designs. Providing data 'on-demand' was facilitated by attempting to expedite the data collection process from Relational Database Management Systems.
As cloud platforms have grown in popularity and implementation, the possibilities have spawned new ways of looking at applications more as ecosystems. With this in mind, we can make 'serving the system' the application's primary focus. Let's take a typical case for a business application.
Programming can be a very complex activity. But a website is not something that requires such complexity. As you can imagine, anything displayed in a Browser contains just three elements; HTML, Javascript, and Cascading Style Sheets. JS Frameworks like Angular, React, and Vue force developers to program within a paradigm of their creation. It is not indeed web programming; instead, it is Angular, React, or Vue programming.
Visual Studio Code is an HTML5 application. It is very robust and must be written in one of the popular JS Frameworks, but is it? watch to find out.
For most of the developer community, they have an poor opinion about using iframes. I believe they arrived at this decision and the subsequent design pattern changes in the following manner. The original use of iframes was the ability to reuse other web functionality/content but then, as typically happens, 'Bad Actors' found that they could leverage the use of iframes for their own personal gain. They did so by exploiting the ability to capture data, etc. that users entered, thinking that they were on the actual website. This is not the only advantage the 'bad actors' exploited but it was enough for many to draw the opinion that
Code Projection
Most teams write code manually. This leads to the need for Code Reviews, Team Meetings, Standups, and Agile Development processing. The greatest weakness in the current development paradigm is that each task given to each developer is a task with an individualized solution. Code Projection evaluates the entire application and develops code to automate the development of all resources required, from Code to Cloud Resources. You may think about memories of 'Waterfall' but Code Projection is not waterfall. It is very agile when developing the code to create all programming that will execute to create all resources. However, it does view the entire application scope from the outset.
IDE
Integrated Development Environment are the typical development editor, compilers, and deployment tools. They provide templates for projects types and supplemental files required for the published/deployed files. Before robust toolsets like Visual Studio or IntelliJ, we developers would use tools like Notepad ++ or simple text editors for writing their code files. Tools like 'IntelliSense', have helped developers write their code and debugging tools provide the ability for developers to track programming executions and values modifications.
But, is the IDE the best place to create code or is it a document processor, like Word?
CI/CD
CI and CD are two acronyms frequently used in modern development practices and DevOps. CI stands for continuous integration, a fundamental DevOps best practice where developers frequently merge code changes into a central repository where automated builds and tests run. But CD can either mean continuous delivery or continuous deployment.
CODE TESTING
Automated testing is the application of software tools to automate a human-driven manual process of reviewing and validating a software product. Most modern agile and DevOps software projects now include automated testing from inception. To fully appreciate the value of automated testing, however, it helps to understand what life was like before it was widely adopted.
https://www.atlassian.com/continuous-delivery/software-testing/automated-testing
IaaS
Infrastructure-as-a-Service, commonly referred to as simply “IaaS,” is a form of cloud computing that delivers fundamental compute, network, and storage resources to consumers on-demand, over the internet, and on a pay-as-you-go basis. IaaS enables end users to scale and shrink resources on an as-needed basis, reducing the need for high, up-front capital expenditures or unnecessary “owned” infrastructure, especially in the case of “spiky” workloads. In contrast to PaaS and SaaS (even newer computing models like containers and serverless), IaaS provides the lowest-level control of resources in the cloud.
https://www.ibm.com/topics/iaas
PaaS
Platform as a service (PaaS) is a cloud computing model where a third-party provider delivers hardware and software tools to users over the internet. Usually, these tools are needed for application development. A PaaS provider hosts the hardware and software on its own infrastructure. As a result, PaaS frees developers from having to install in-house hardware and software to develop or run a new application.
SaaS
Software-as-a-Service, or SaaS for short, is a cloud-based method of providing software to users. SaaS users subscribe to an application rather than purchasing it once and installing it. Users can log into and use a SaaS application from any compatible device over the Internet. The actual application runs in cloud servers that may be far removed from a user's location.
Enterprise Service Bus (ESB)
The Enterprise Service Bus (ESB) is a software architecture which connects all the services together over a bus like infrastructure. It acts as communication center in the SOA by allowing linking multiple systems, applications and data and connects multiple systems with no disruption.
Web API
API stands for Application Programming Interface. A Web API is an application programming interface for the Web. A Browser API can extend the functionality of a web browser. A Server API can extend the functionality of a web server.
Web Application
A web application (web app) is an application program that is stored on a remote server and delivered over the internet through a browser interface. Web services are web apps by definition and many, although not all, websites contain web apps.
We believe building applications that leverage the cloud are inherently different than 'On-Premise'. This is not simply because the resources are different but designing them is dramatically different. Developing and designing them needs a fresh view of code automation for everything from resource creation to code creation to code testing to code deployment.
Copyright © 2023 Fundamental Technology - All Rights Reserved.
Powered by GoDaddy
A Place to Explore Programming that is Efficient and Elegant. Frame(s)work is designed for those looking to interact directly with HTML5.
We use cookies to analyze website traffic and optimize your website experience. By accepting our use of cookies, your data will be aggregated with all other user data.