Spartacus is an Angular-based JavaScript solution that mainly runs in the browser. It is one of Progressive Web Applications (PWA), which in turn represents the symbiotic relationship between responsive websites and applications. What does this mean, and what are the advantages and disadvantages of SAP Spartacus?
What is the difference between progressive web application (PWA), native application and standard browser access? What are the advantages and disadvantages of each?
Let's start with the usual access method-"normal access" to the HTML page rendered by the server through the browser: if the browser queries a page, the server will provide any style sheets (CSS) and JavaScript to the corresponding HTML page. After receiving the content, the browser will display the complete page and execute any JavaScript. Any navigation within the page will cause all content to reload.
Native applications are fundamentally different from web pages. They are usually implemented using a device-dependent framework (Android or Swift for iOS) and are based on the operating system on the end user's device. The application usually communicates with the backend through an API interface to reload and store data in its memory.
For customers, the implementation of native applications means that in addition to the website, a separate application must be developed for the device. This means that the same code cannot be used. However, native apps provide users with the best user experience on mobile devices. They can be built well offline and provide full access to device features such as GPS, cameras, etc.
On the other hand, a single page application (SPA) or its extension (PWA) is still a web page. Unlike the usual visit, the page is actually composed only of JavaScript, and—as the name suggests—is composed of a single HTML page.
Therefore, when the browser requests for the first time, the server always provides the same page. Usually the broader JavaScript then represents the content and dynamically swaps the elements on the page. That is to say: afterwards the server only loads the required data-depending on which URL and the data requested by the user. Any content that the server has already queried is cached locally and appears when it needs to be used again.
Such an application makes users feel more fluid because it does not reload the page. In addition, you can very specifically control which data must be loaded. PWA can also usually access various device functions. However, the heavy use of JavaScript is an obstacle for search engines and old devices. Therefore, server-side rendering is often used: Convert JavaScript to HTML on the server and use it with the usual access methods. However, once the page is loaded, all visits occur without reloading the page.
The PWA must also be installed by the store customer first. Isn’t this an additional barrier compared to e-shops that can be accessed without a standard browser application? As a customer, I would find it more convenient.
PWA is mainly a website and does not need to be installed. However, it can be saved as an icon on the device like an application. Due to the nature of its similar website, unlike classic applications, it does not need to be updated.
Access through native apps is now being phased out, isn't it?
It depends on the relevant application. However, for many companies, the development of additional native applications (available for Android, iOS, Windows, and various device versions) brings excessive financial and organizational burdens.
What are the specific benefits of PWA for SAP Commerce enterprise customers?
The SAP business system is headless and easy to access from other systems. With PWA, you can load content very specifically, which also allows Google to better evaluate performance. Only one application is required for the website and the device. In addition, the use of an updated front-end framework increases the attractiveness to employees.
What are the benefits of PWA to the end customer?
The benefits of PWA to the end customer are obvious: a smoother and faster user experience, and depending on the implementation, the interface can be better adapted to the size of the device.
How high is the cost of migrating from accelerator to PWA? How much time and cost should I expect?
This varies greatly, depending on the initial situation. However, the work required does not depend on the number of components, but on the existing code structure and page structure and its complexity.
How safe is Angular?
In PWA, SPA, and modern frameworks, the same security aspects as traditional websites are applied. However, the features provided by Angular and other frameworks make it easier to implement these aspects. Security on the server must also be ensured-and there is no need to store sensitive data in the client.
What does Spartacus mean to SAP Commerce customers?
Since PWA (ie Spartacus) is much more complex, it requires different and deeper JavaScript knowledge and the most advanced front-end framework. Is server-side rendering required and does SAP Commerce run locally? Then, for example, additional infrastructure and customized development and deployment processes are required.
What does this mean for my upgrade strategy? Should the new development be implemented with Spartacus?
In my opinion, you should consider using Spartacus instead. However, depending on the framework conditions and requirements, a different path may need to be taken.
SAP Spartacus is relatively young, and several aspects may have been solved in an overly crude way. Things like server-side rendering must be considered. Especially if the migration to the cloud cannot (yet) be done. If you are bringing your solution closer to an accelerator or standard, it may make sense to switch to Spartacus.
What does the transition to SAP Spartacus mean for my organization?
Spartacus is based on the principles of PWA (Progressive Web Application) and Angular technology. Many companies use relatively simple JavaScript based on jQuery or similar to work in accelerators. PWA represents a significant increase in complexity because it also has classic application elements such as routing, security, persistence, and asynchrony. Therefore, front-end developers need better JavaScript and application development skills.
The development process and interface of SAP Commerce (Hybris) are also different, and need to be refactored according to code quality. If you want to run Spartacus in a local environment, you must implement server-side rendering and the required infrastructure according to your requirements. The same applies to the related deployment process. SAP already provides support for this in the cloud.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。