search
HomeOperation and MaintenanceLinux Operation and MaintenanceAfter QQ was refactored with Electron, it finally realized the unification of the three-terminal architecture of Linux, macOS, and Windows!


After 24 years of changes, the national application QQ has become a memory of the post-80s/90s generation and the main battlefield of the post-00s generation. Now, because of the release of a latest version of QQ, it has attracted the attention of technical people of all ages.

On July 3, Tencent officially launched the trial version of Windows QQ v9.9.0. To say what is special about this version, the biggest highlight is its new 64-bit version support. Based on the new NT architecture, has since officially implemented macOS, Linux, Windows The three terminals are unified, making the operation smoother and faster.

After QQ was refactored with Electron, it finally realized the unification of the three-terminal architecture of Linux, macOS, and Windows!

#macOS, Linux, Windows desktop version QQ adopts the new NT technology architecture


##Always, a set of The ability of code to run on multiple terminals is a goal that many modern application developers and teams have always pursued, including today's QQ team.

However, in the early PC era, when Windows dominated the world, QQ only had a Windows version, so there was no such consideration.

Until 2008, Tencent successively launched QQ for Linux and QQ for Mac versions.

theneach platformAfter more than ten years of continuous development, according to Tencent client engineer and Zhihu netizen MagiLu (https ://www.zhihu.com/people/m-a-g-irevealed that since the three terminals were initially independent teams and independent code implementations, Windows has the richest and most comprehensive functions, and Mac is the main Innovative experience, relatively few functions, Linux is the crudest. With the baptism of mobile Internet, various organizational structure adjustments, talent flows and business changes, the current desktop QQ is in a state that is relatively bloated, difficult to maintain, and lacks updates and iterations. .

Based on this, the Tencent QQ team decided to launch the QQ architecture upgrade plan last year, abandoning the Native development method previously adopted by the desktop version, and choosing instead Use cross-platform solutions to bring a new QQNT architecture.

牛逼啊!接私活必备的 N 个开源项目!赶快收藏

After QQ was refactored with Electron, it finally realized the unification of the three-terminal architecture of Linux, macOS, and Windows!

The so-called NT means New Technology.


As a new version of QQ desktop UI cross-platform solution, NT architecture can realize the unification of QQ architecture among multiple systems.


In September last year, Tencent took the lead in upgrading the Mac version of QQ. This was also Tencent’s first new reconstruction of the desktop QQ based on the NT technology architecture. The latest technology architecture, more stable performance, smoother transmission, and easier maintenance.

Also in December last year, Tencent launched the QQ Linux 3.0 version in full swing. It implements a new architecture based on the QQNT technical architecture driver, supports x64 systems and arm64 systems, and brings multiple functional improvements and expand.

Now, Tencent has completed the upgrade of the last desktop version of Windows QQ, which means adopting the new NT technology architecture, QQ is available for the first time The unified architecture on the three platforms of Window, macOS, and Linux has also allowed the QQ team to end the days of tinkering with the code that netizens ridiculed.

#Using Electron framework


The new software architecture framework launched by QQ platform this time mainly uses Electron technology to achieve the unification of QQ architecture among multiple system platforms.

After QQ was refactored with Electron, it finally realized the unification of the three-terminal architecture of Linux, macOS, and Windows!

It is not difficult to see that Electron plays an indispensable role in it.

It is worth mentioning that today’s desktop application software basically needs to run across platforms, and technologies such as MFC and Duilib cannot meet the demand. Today's cross-platform desktop application software development mostly uses Qt and Electron.

Then why didn’t Tencent choose Qt instead of using Electron?

In fact, compared to Electron, Qt has the advantages of high operating efficiency, robust architecture, and powerful performance. However, according to MagiLu, the reason for not using Qt is related to Tencent’s internal talent reserve and technology accumulation. He said, “Qt is indeed a good choice in terms of performance, but the team currently does not have much accumulation in Qt. There is basically no infrastructure, and there is actually a shortage of relevant talents in the market, making it even more difficult to recruit."

Therefore, based on internal investment costs and accumulation, it adopted Electron technology.

Specifically, Electron (https://github.com/electron/electron) is a cross-platform desktop development environment based on Node.js and Chromium. Electron integrates the browser kernel Packaged with the backend Node.js service, a full-stack development environment using JavaScript is implemented. The program can be deployed to Windows, macOS, and Linux platforms without any modification.

Today, Electron has been used for front-end and back-end development by multiple open source web applications. Famous projects include Microsoft's Visual Studio Code. In addition, when searching for public accounts, Linux should learn how to reply "monkey" in the background and get a surprise gift package.

At the same time, according to survey data, Electron has also been selected as the most popular desktop cross-platform solution among developers in recent years. Electron's versatility (it can be used with any UI framework, even if it's usually associated with React or Vue.js) may also explain why it receives the highest satisfaction ratings.

After QQ was refactored with Electron, it finally realized the unification of the three-terminal architecture of Linux, macOS, and Windows!


The eye-catching new desktop version of QQ


As an old application, QQ is still a social tool for many young people today. Tencent has also been committed to building platform integration, and even announced not long ago that QQ can be logged in with WeChat accounts to continue to activate QQ users.

Now the QQ UI, which has been upgraded with new technology architecture, looks more refreshing and simple. The message interface adopts a three-column design, allowing the avatar, chat list, and chat window to be in the same frame.

This seems to look more like the desktop WeChat interface, doesn’t it?

After QQ was refactored with Electron, it finally realized the unification of the three-terminal architecture of Linux, macOS, and Windows!

In addition, Windows QQ also supports one-click opening of voice and video in chat, as well as night mode, sending files and text together, and other functions to better meet the different needs of desktop users.

At the same time, Tencent brings a multi-terminal unified experience of Linux, Mac, and Windows to QQ based on the NT technology architecture, and also provides certain reference significance for the ecological unification of domestic software in the industry. Leaving aside Windows and Mac in daily life, One of the important reasons why many people do not use Linux-based operating systems is that many applications are incompatible.

After QQ was refactored with Electron, it finally realized the unification of the three-terminal architecture of Linux, macOS, and Windows!

# At present, as QQ realizes the unified experience of three terminals, it is undoubtedly of great significance to domestic software.


"Memory Killer" Electron?


## However, what is also somewhat disappointing is that due to the new NT Due to the dependence of the architecture on Electron, many netizens are worried that the demand for computer memory of the new version of QQ is likely to be much higher than that of the old version.

After all, even though Electron has countless advantages, it can’t hide the shortcomings of resource consumption for its operation.

Because of this, a few days ago, WhatsApp, an instant messaging application owned by Meta Company, announced that it would abandon the Electron-based desktop application on Windows, prompting users to switch to the newly launched native application for uninterrupted access.

Two months ago, Teams, owned by Microsoft, announced that it had rebuilt the Teams application from the ground up around speed, performance, flexibility and intelligence, with its technology transitioning from Electron to the WebView 2 rendering engine.

Faced with the desktop version of QQ using Electron, some netizens said:

  • When faced with WeChat, DingTalk, QQ , even the browser freezes directly, you can realize how bad the experience of Electron application is;

  • Electron is a good thing for programmers, the development speed Faster. But for users, it is undoubtedly a disaster. After all, not everyone’s computer has 32 GB of memory.

There are also media reports on this issue. Currently, QQ The technical team has set goals in multiple stages, from single process memory optimization to overall memory control, and the new version has achieved effective optimization results.

Finally, it is reported that Tencent also plans to release a mobile version of QQ based on the NT architecture in the near future. So, will you use the new version of QQ? What do you think of QQ using Electron?

Reference:

https://www.zhihu.com/question/570447541/answer/2791939780

https://www.ithome.com/0/703/474.htm

The above is the detailed content of After QQ was refactored with Electron, it finally realized the unification of the three-terminal architecture of Linux, macOS, and Windows!. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:Linux中文社区. If there is any infringement, please contact admin@php.cn delete
The 5 Core Components of the Linux Operating SystemThe 5 Core Components of the Linux Operating SystemMay 08, 2025 am 12:08 AM

The five core components of the Linux operating system are: 1. Kernel, 2. System libraries, 3. System tools, 4. System services, 5. File system. These components work together to ensure the stable and efficient operation of the system, and together form a powerful and flexible operating system.

The 5 Essential Elements of Linux: ExplainedThe 5 Essential Elements of Linux: ExplainedMay 07, 2025 am 12:14 AM

The five core elements of Linux are: 1. Kernel, 2. Command line interface, 3. File system, 4. Package management, 5. Community and open source. Together, these elements define the nature and functionality of Linux.

Linux Operations: Security and User ManagementLinux Operations: Security and User ManagementMay 06, 2025 am 12:04 AM

Linux user management and security can be achieved through the following steps: 1. Create users and groups, using commands such as sudouseradd-m-gdevelopers-s/bin/bashjohn. 2. Bulkly create users and set password policies, using the for loop and chpasswd commands. 3. Check and fix common errors, home directory and shell settings. 4. Implement best practices such as strong cryptographic policies, regular audits and the principle of minimum authority. 5. Optimize performance, use sudo and adjust PAM module configuration. Through these methods, users can be effectively managed and system security can be improved.

Linux Operations: File System, Processes, and MoreLinux Operations: File System, Processes, and MoreMay 05, 2025 am 12:16 AM

The core operations of Linux file system and process management include file system management and process control. 1) File system operations include creating, deleting, copying and moving files or directories, using commands such as mkdir, rmdir, cp and mv. 2) Process management involves starting, monitoring and killing processes, using commands such as ./my_script.sh&, top and kill.

Linux Operations: Shell Scripting and AutomationLinux Operations: Shell Scripting and AutomationMay 04, 2025 am 12:15 AM

Shell scripts are powerful tools for automated execution of commands in Linux systems. 1) The shell script executes commands line by line through the interpreter to process variable substitution and conditional judgment. 2) The basic usage includes backup operations, such as using the tar command to back up the directory. 3) Advanced usage involves the use of functions and case statements to manage services. 4) Debugging skills include using set-x to enable debugging mode and set-e to exit when the command fails. 5) Performance optimization is recommended to avoid subshells, use arrays and optimization loops.

Linux Operations: Understanding the Core FunctionalityLinux Operations: Understanding the Core FunctionalityMay 03, 2025 am 12:09 AM

Linux is a Unix-based multi-user, multi-tasking operating system that emphasizes simplicity, modularity and openness. Its core functions include: file system: organized in a tree structure, supports multiple file systems such as ext4, XFS, Btrfs, and use df-T to view file system types. Process management: View the process through the ps command, manage the process using PID, involving priority settings and signal processing. Network configuration: Flexible setting of IP addresses and managing network services, and use sudoipaddradd to configure IP. These features are applied in real-life operations through basic commands and advanced script automation, improving efficiency and reducing errors.

Linux: Entering and Exiting Maintenance ModeLinux: Entering and Exiting Maintenance ModeMay 02, 2025 am 12:01 AM

The methods to enter Linux maintenance mode include: 1. Edit the GRUB configuration file, add "single" or "1" parameters and update the GRUB configuration; 2. Edit the startup parameters in the GRUB menu, add "single" or "1". Exit maintenance mode only requires restarting the system. With these steps, you can quickly enter maintenance mode when needed and exit safely, ensuring system stability and security.

Understanding Linux: The Core Components DefinedUnderstanding Linux: The Core Components DefinedMay 01, 2025 am 12:19 AM

The core components of Linux include kernel, shell, file system, process management and memory management. 1) Kernel management system resources, 2) shell provides user interaction interface, 3) file system supports multiple formats, 4) Process management is implemented through system calls such as fork, and 5) memory management uses virtual memory technology.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools