1. Composer
The 1th is to mention Composer, since Composer appeared, the dependency management of PHP can become very simple. The program relies on some class libraries and frameworks, which are introduced directly using Composer, to install dependent packages by using Composer update. Addresses the challenges of loading external libraries in the past. Composer also has a domestic mirror, very fast. Now the vast majority of PHP open source projects have provided Composer support, we recommend that you use Composer in the project to solve the problem of PHP code package management, no longer use the original method of download source, manual include.
2. PHP7
The PHP7 version has made a lot of changes to the Zend engine, greatly improving the performance of the PHP language, and using PHP7 can double your program performance instantly. Even the heavyweight software of WordPress, which runs at PHP7, can have thousands of QPS, which is the equivalent of a single server handling 80 million requests per day. With PHP7, MySQL optimized, accelerated with Memcache and Redis, the technology architecture is perfectly capable of dealing with a fairly large scale system. In addition to some billion-tier users of the platform, the general scale of the system is completely free of pressure.
3. PSR
PSR is a PHP language development specification that is developed by the PHP Framework Interop Group and has many rules, such as namespaces, class names,
Specification, coding style Standard, Autoload, public interface and so on. It has become the de facto standard for the PHP technology community. Many well-known PHP frameworks and class libraries follow the PSR specification. PHP developers should learn to master the PSR specification and should follow the PSR specification as much as possible when developing the program.
4. Swoole
2017 is PHP also limited to making Web sites? No, if you don't know swoole, get to know it. Swoole's slogan is to redefine the PHP language, Swoole is an asynchronous parallel communication engine that runs as an extension of PHP. The asynchronous callback swoole of node. JS has the swoole of the Go language, which completely overturns the knowledge of PHP. Using Swoole PHP can implement the resident memory of the Server program, can implement TCP, UDP asynchronous network communication programming development. In the past PHP can only be a Web site, now use Swoole can do Java, C + + to achieve the communication services, such as WebSocket even communication, chat, push server, RPC Remote Call service, Gateway, agent, game server, etc. If you want to use PHP to do something outside of the WEB system, Swoole is the best choice.
5. Laravel
In recent years, the hottest PHP framework, the official website is a framework designed for WEB artists, it can be seen how elegant this framework. Laravel provides a wealth of functional modules, API design concise, strong expression. And its community is very active, code contributors are numerous, third-party plug-ins are very large, the ecosystem is quite prosperous. The Laravel bottom uses a lot of symfony2 components to achieve dependency management through composer. If you are still struggling with what PHP framework to use, choose Laravel. Laravel provides command-line tools based on Symfony.console, powerful, integrated with a variety of project management, automatic code generation capabilities.
6. Phar
The Java-like jar package, named Phar, is supported after PHP5.3. Used to package multiple PHP files into a single file. This feature makes it easy for PHP to package and component applications as well as Java. An application can be punched into a Phar package and placed directly into
Run in PHP-FPM. With Swoole, you can execute PHP server.phar at the command line and start the server with one click. PHP's code package can be packaged into components using Phar and placed in Swoole's server container to load execution.
7. C/c++/go
Any technology has its advantages and disadvantages, PHP as a dynamic scripting language, the advantage is the development of convenient and high efficiency. The disadvantage is poor performance. In the dense operation of the scene than C, C + + dozens of times times or even a hundredfold. In addition, PHP can not directly operate the underlying, you need to rely on the extension library to provide API implementation. PHP programmers can learn a static compiler language as a complement to achieve static and dynamic complementarity, C/c++/go is a good choice. And the static language programming experience is completely different from the dynamic language, and the learning process allows you to get a greater boost.
After mastering the C + + language, you can also read the source code of PHP, Swoole, Nginx, Redis, Linux kernel and other open source software to understand its underlying operating principle.
Now the latest version of Swoole provides support for the C + + extension module, encapsulating the Zend API, and using C + + to operate PHP is very simple, you can implement PHP extension functions and classes in C + +.
8. HTML5
As a new generation of WEB front-end standards, HTML5 future prospects are very broad, market demand is very large. From the PC website, b/s enterprise software, mobile Web pages, apps, these areas are embracing HTML5, mastering the HTML5 in the next wave of internet technology to survive.
9. Vue.js
In addition to writing background programs, PHP programmers have a large portion of their work in the presentation layer that deals with the front-end of the browser. 2017 are you still using JQuery to manipulate the DOM to implement interface rendering? is completely out. It is now easy to use vue.js to bind data and DOM elements. Updating the front-end data automatically implements interface rendering after the backend interface is requested to return data via Ajax. 2017 is too late to learn Vue.
React Native is a good choice if you are not only writing WEB applications but also want to take into account Android, IOS, PC clients and other platforms.
10. Deep Learning/Artificial Intelligence
The future of the internet belongs to AI, and if you don't know the concepts of machine learning, deep learning, artificial intelligence, you need to learn it as quickly as possible. The internet giants are now laying out artificial intelligence, including Google, Facebook, Microsoft, Amazon and domestic Baidu. Although it is still at the stage of scientific research, the future of the Internet will be applied to artificial intelligence, including automatic driving, big data analysis, online games, image recognition, language processing and so on. Of course, now ordinary engineers may not be able to participate in AI products, but at least they should understand the basic concepts and principles of deep learning/AI.
Original address: https://blog.tanteng.me/2017/03/2017-php-way/
PHP program 10 points for future recommendations