Programmers are confused about the development trend of the industry.

Source: Internet
Author: User

ProgramApe, road ahead, blank Industry Development Trend

Development Trend of the Flying Pigeon book industry


Looking at the development process and trend of the software industry, we can see that it has gone through the following stages:
◆ Development mode for machine language (monolithic): customized development based on machine languages of different platforms Code Therefore, the code developed is less universal and reusable, but it was determined by the hardware and software environment at that time.
◆ Procedure-oriented development model: Machine-independent programming languages (such as C and Pascal) make the development process easier, use procedures to describe our needs, and use functions to encapsulate our code. The process-oriented development model encapsulates reusable code, which is a step ahead of the previous machine language-oriented development model;
◆ Object development mode: describes and draws a relatively complete object with objects closer to reality. Object-oriented languages (such as C ++, C #, and Java) provide more abstract encapsulation and reuse modes. Object-Oriented development emphasizes that the problems in the real world are directly mapped into our programs, so it is closer to the natural way of thinking. The object-oriented development model encapsulates reusable objects, so it is a step ahead of the previous process-oriented development model;
◆ Component-oriented development model: object-oriented development has improved the development model in many aspects, but with the gradual expansion of the software development scale, in complex environments involving distributed and asynchronous architectures, vulnerabilities such as poor code-level reusability, poor maintainability, and low efficiency become particularly prominent. Therefore, people use architectures to run environments (such.. net, J2EE, etc.) to provide a complete support platform to free developers and focus more on business core development. These business functions are released and run in the architecture runtime environment in the form of components (such as DCOM and EJB. The reuse mode of software development has also increased to the level of business components. The component-oriented development mode is particularly prominent in asynchronous architecture and distributed systems. This mode complements the object-oriented development mode;
◆ Service-oriented (SOA) development model: when the application scope of software is extended to a broader scope, it is often faced with more complex IT environments and more flexible and changing needs. The concept of service has emerged. People publish applications in the form of business services for others' use, there is no need to consider which architecture system these business services run on, because all services speak the same language. SOA considers the long-term nature of business development and embodies the idea that "Change is permanent. The core of SOA is the "reuse" and "interoperability" of enterprise applications or business functions, rather than the confrontation between it and business, this can be seen as an important step in the IT-driven business direction. The service-oriented development model aims to support more flexible heterogeneous and distributed systems;
◆ Cloud-oriented development model: in fact, using the previous development models can solve the current various applications, however, people always consider restructuring resources to achieve optimal use of resources. At this time, cloud computing was born. Cloud computing is the product of the integration of traditional computer technologies and network technologies, such as grid computing, distributed computing, parallel computing, network storage, virtualization, and load balancing. The network that provides resources is called "Cloud ". Resources in the "Cloud" can be infinitely expanded and can be obtained at any time, used as needed, expanded at any time, and paid as you use. Simply put, cloud computing simplifies our infrastructure and provides enterprises with greater configurability and flexibility. In the original mode, if you build a small application, you need to rent a server, and you need to consider the security and stability factors of the rented server. To build a medium-and large-sized application, we need to invest a lot of money to purchase hardware for the cluster, and then purchase the required system software, which also requires some personnel to maintain. Now, cloud can provide the hardware and software devices required by our programs. All you do is to lease the existing resources as needed, upload your programs, and modify the configuration files, you can flexibly expand or contract your resources, so that you can use resources reasonably and reduce the cost of maintaining these software and hardware.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.