In today's IT job market, there are joys and sorrows. Some people are very satisfied with their current jobs and salaries. Some people are currently facing laid-offs, or have been laid-off ......
Maybe you are the only expert in the company who is familiar with a key technology. If you are missing, the company will not be able to turn around. Or your company may have no worries about your existing professional skills, I think that you are competent for the development tasks provided by the company during your term of office (of course you will not spend any money to train you ).
Don't tell me that your company is very satisfied with the business processing system originally developed with vb3, but you also think that you are not only developing with C language Program And will not do anything else.
Are you blind to. NET and Java competing for the development tool market? Are you indifferent and dismissive to XML replacing relational databases. Do you think that you can use assembly or C to develop anything, so other development tools are no longer important ...... If so, you are not far away from unemployment, as the saying goes-preparing for a rainy day ...... Think about what would happen if you are unemployed and have no job now, and think about the number of other brethren that are still running around to find a job. Think about what if your company suddenly wants to turn technology in order to seize the market? Think about how you want to change the technology field for your future. What should you do? Or you are not satisfied with your current knowledge structure and want to enrich it, but you do not know what to choose to learn. Let's continue and join in the discussion. I believe there will be gains.
In the Talent Recruitment Market, personnel managers focus on practical skills and require the actual skills required for current and future development work. As a technical developer, the knowledge structure is the key to employment and maintaining their own positions. In addition, it is important that, even if you no longer engage in or seek practical development work, you must learn as much as possible about and be familiar with the most cutting-edge technologies and information in your field today, only in this way can we keep up with the pace of technological development. In order to keep yourself undefeated.
This article lists the top 10 key technologies in today's computer software development and application fields. If you want to ensure that you are not unemployed now and in the next few years, you 'd better keep up with these technologies. Although you do not have to be familiar with these 10 Technologies, you should be familiar with them at least.
I. xml
Among the ten technologies, the most important one should be non-XML. This not only refers to the XML specification, but also a series of XML-based languages: mainly including XHTML, XSLT, XSL, dtds, XML Schema (XSD), XPath, XQuery and soap. If you still don't know anything about XML, hurry up. XML is a text file containing HTML tags. It defines a tree structure to describe the data it stores.
The biggest advantage of XML is that you can store both structured data and unstructured data in this text file-that is, it can contain and describe "rough" document data, just as it describes "table data of a rule. XHTML is the preferred method for compiling HTML. Because XHTML itself is a well-formatted XML, it is easier to process XHTML documents than common malformed HTML documents. XSLT and XSL are the languages used to convert XML documents. They can convert XML documents into various formats, such as another text file, PDF file, HTML file, comma-separated file, or other XML documents. Dtds and XML Schema are used to describe the types of data content contained in an XML file, so that you do not need to write custom Code The "validity" check can be performed on the content of the XML document to force the content to comply with the given rules. XPath and XQuery are query languages that can be used to extract a single list of data items or data items from XML documents. XQuery is particularly powerful because it extends XPath queries. In fact, the relationship between XQuery and XML is the same as that between SQL and relational databases. Soap is a standard protocol for communication between Web Services. You don't have to know all the details of the SOAP protocol, but you should be familiar with its common rules and their working principles so that you can use it.
Ii. Web Services
Web services are a direct product of the popular XML. Because XML can describe data and objects, the XML outline can ensure the validity of XML document data, because XML is based on text standards, therefore, XML documents are extremely suitable as a basic format for cross-platform communication standards. If you have not been familiar with Web Services, you will certainly encounter them soon. Therefore, you must be familiar with Web Services, preferably proficient in them, because it is the easiest way for applications to communicate across different types of machines, languages, platforms, and locations so far. Whether you need it or not, Web services will become the main trend of future interoperability.
John bosak of the XML Working Group once said: "XML makes Java something to do", so we can also say that web services make all languages have something to do. The Web Service allows the COBOL applications running on the mainframe to communicate with the applications running on the handheld device.. Net servers communicate with each other to allow seamless interaction between desktop applications and web servers, not only for commercial data processing, it also provides convenient implementation for commercial functions-and this implementation is independent of language, platform, and location.
Iii. Object-Oriented Programming
Many programmers still think that OOP is the Ivory Tower of technology, but after thinking about the dominant development language in the Object-Oriented field in the past decade, you will not think so, the idea of OOP started from smalltalk, then spread to C ++ and Pascal (Delphi), and became the mainstream in Java. A few years later, VB. the emergence of net and C # can be said that OOP has reached its peak. Although you do not need to understand the concept of OOP when using these languages, if you lack some basic knowledge and methods of OOP, I think it is hard for you to find a job in the increasingly weak job market.
4. Java, C ++, C #, VB. NET
If you are passionate about technology and programming, I think you should be able to easily play with these advanced languages. I don't have to say that you must be a super programming expert. Instead, you can understand the code written in these languages. It would be better if you still have the energy to encode them. In fact, there are very few such opportunities. But there are many opportunities to read the code. The most effective way to learn programming is to read Source code -- Many of the vast source code is not written in your favorite development language.
In the past few years, the development of various language functions has been almost the same. Now you can use VB. NET to write Windows Services, web applications, or command line programs. Even if you only use one of these languages to write programs. I think it is also absolutely necessary to learn another language so that you can read and understand their existing example code and convert the code written in one language into your preferred Programming Language Code. The four languages listed here are a powerful development language toolbox. If you have mastered them, you must be a master admired by everyone. Here I want to declare that I have not ignored or excluded other advanced languages, such as Fortran, COBOL, APL, Ada, Perl, and lisp, select the appropriate language and Tool Based on your fields.
V. Javascript
Although the names of Java and JavaScript are similar, they have nothing to do with each other. Why is a scripting language so important that it is included in one of ten key technologies? You can find out with a closer look. Currently, all mainstream browsers use JavaScript. Javascript is indispensable if you want to write web applications. In addition, JavaScript can also be used as a server-side scripting language, such as embedding it in ASP or ASP. NET, or embedding XSLT to Expand functions. Currently, JavaScript is the preferred language for activating XUL-based interfaces in Mozilla/Netscape. It derives from ActionScript and becomes the programming language for Flash MX applications. In addition, JavaScript is likely to become the scripting language of new devices and the macro language of mainstream applications in the future.
In contrast, although VBScript is well supported by Microsoft products, in the long run, there is no indication that it will have a bright future. Microsoft tends to use JavaScript (or JScript derived from JavaScript) to write its client script code. Therefore, if you want to select a scripting language, it is not JavaScript.
Vi. Regular Expressions
From the perspective of relational databases, SQL is used to query XML documents and XPath and XQuery, while regular expressions are used to search for plain text. For example, you can use a command to search for or delete comments in HTML files. You have used text search functions built in Javascript or VB, such as "indexof", "instr", and "like". Although these functions are easy to use, however, their functions cannot be the same as those of regular expressions-currently, every mainstream development language provides regular expression access. Some people think that regular expressions are hard to read and write, but after all, they are powerful and use more and more fields.
VII. Design Patterns
Just as OOP simplifies programming by creating and classifying objects, the design pattern classifies normal object interactions into a specified model, which is a process from general to specific. The more components of OOP are used, the more useful the design model is. So you must understand them and keep up with the development of their overall theory.
8. Flash MX
Flash is the best choice when you need more client graphics and programming capabilities than HTML and CSS. Programming in Flash is much faster and easier than using small Java applications or. NET code.
In the latest version (MX), Flash not only supports drawing and animated packaging, but also provides a highly Programmable application environment. With powerful ability to communicate with soap web services, you can call ColdFusion, Java, or. NET code running on a remote server. Flash is almost everywhere, including handheld devices, devices, and even new tablets. You can see it everywhere, therefore, using it can actually expand and extend your application use fields.
IX. Linux/Windows
This is the two main lines of PCs operating systems. If you want to mix them in the computer industry, you must be familiar with them. For Linux, it is best to install, configure, and download its own graphic user interface and some applications. Install Apache on your own and write web applications. We must be aware of the existence of Linux in addition to Windows. And this situation will exist for a long time. In turn, if you are a loyal Linux developer, do not continue to hate windows any more. learn from each other and learn from each other to see what is good about windows. Remember that Windows is still the king of the desktop.
No one can tell when your company will decide to switch from Linux to Windows or from windows to Linux. No one can tell when you will jump to another company that uses different platforms-or even if you do not quit, it is also possible to start another killer project on different platforms-so it is best to accumulate experience on each platform rather than hanging on a tree.
10. SQL
Although SQL is no longer a new thing in today's many technologies, and its role in the next decade is likely to be weakened or even eliminated, but it is still a basic skill-although it is a basic skill, many developers still do not know what SQL is or do not know much about it. Do not expect that the graphical user interface-based SQL constructor will help you, or manually write SQL queries, are you sure you have mastered the basic syntax of SQL. Understanding SQL now not only helps you learn XQuery later, but also helps you quickly find ways to simplify or improve your current development project.
Conclusion: Cultivate curiosity about Technology
In fact, regardless of the development trend of technology, one of the most important skills for everyone is curiosity. Dare to face challenges. In your current or future work, new languages or new technologies may be very important or not very important. What you learn does not have to be targeted at your work. Don't be afraid of failure. Any new technology is difficult for beginners. Most failures can be attributed to their own sharp success and quick success. As the saying goes, a journey of thousands of miles begins with a step-by-step approach. Don't let time influence your actions, but use time to focus on, research, and test new development technologies and tools.