Top 10 software technologies without unemployment

Source: Internet
Author: User
Tags xpath xsl xslt xquery

Are you an unemployed software technician? The content of this article may be helpful to you!
Technology is just an element. New technologies have always been poor, and more importantly, your learning and problem-solving skills.
Let's take a look at the top ten software technologies to avoid unemployment.

1. xml

First, you need to understand XML. I am not talking about XML specifications, but also a series of related XML-based languages: the most important is XHTML, XSLT, XSL, dtds, XML Schema (XSD), XPath, XQuery, and soap. Those who have never touched the keyboard in the past five years may not know what the XML is. XML is a text file that uses a tag similar to HTML. XML can define a tree structure and describe the contained data.

The best thing about XML is that it can store both structured data and unstructured data. It can store and describe the "type" (regular) table data, as well as accommodate and describe the "rough" (ragged) file data.

XHTML is the preferred method for writing HTML. Because it is well-formed XML, it is easier to process XHTML files than older HTML files that are usually malformed.

XSLT and XSL are languages used to convert XML files into other formats. Convertible formats include text files, PDF files, HTML files, comma-separated files, and other XML files. DTD and XML Schema describe the types of content that an XML file can contain, and allow you to "verify" the rationality of the content of an XML file without writing special code to ensure that the content meets the rules.

XPath and XQuery are the query languages used to extract a single project or a group of projects from an XML file. XQuery extends XPath, so it is more important. The relationship between XQuery and XML is just like that between SQL and relational databases.

Soap is a standard communication protocol between Web Services. Although you do not need to understand the soap standard, you should be familiar with the general schema and its working principles to apply this technology.

2. Web Services

Web services are a direct product after XML is popular. Because you can use XML to describe data and objects, because you can use schema to ensure the rationality of the content of XML files, Because XML is based on text standards, XML provides an extremely convenient basic format for cross-platform communication standards. If you have never met a web service, you may soon encounter it. In the next five years, you will almost certainly encounter it. It is very important to be familiar with the Web service because it is the simplest Communication Protocol across different machines, languages, platforms, and locations. Whether you need it or not, Web services are an important step towards interoperability.

John bosak, chairman of the XML Working Group, once said that XML "does something for Java ". In fact, Web services allow all languages to do something. Web services enable the COBOL application software running on the mainframe to call Java applications running on handheld devices, and enable Java Applet and.. NET Server chat allows the computer software to be seamlessly connected with the Web server, and provides a relatively easy way for enterprises to provide data and functions to the outside world, it is also a method independent of languages, platforms, and locations.

3. Object-Oriented Programming

Many programmers still think of OOP as a technology in the ivory tower. But if you think about what language has dominated the past 10 years, you will understand that OOP is not a technology in the ivory tower. Oop starts from smalltalk and passes to C ++ and Pascal (Delphi ). Java makes OOP stride into the mainstream. After a few years, VB. NET and C # fully established the advantages of OOP. Although most of these languages do not require you to use Oop, I feel that if you do not understand the basic concepts of OOP, you do not know how to apply these concepts, you will find fewer and fewer programming jobs.

4. Java, C ++, C #, and VB. NET

I put these languages together, and I do not suggest you become experts in every language. My reason is: one of the most effective ways to learn programming is to read code, and the large amount of code you can see is probably not written in your favorite language.

In the past few years, the capabilities of various languages have become closer and closer. Now, you can use VB. NET to write Windows Services, web applications, or command line programs. Even if you only use one language, you should also learn other languages to understand those examples and translate them into your language. These four languages are the core and some other languages that meet different needs and are quite useful, such as Fortran, COBOL, APL, Ada, Perl, and lisp.

5. Javascript

Although the names are similar, Java and JavaScript are not associated. Why is a scripting language so important? Because all mainstream browsers use JavaScript. If you need to write web applications, you have enough reasons to learn JavaScript. Javascript can be used as a server language for ASP or ASP. NET, or as a function language for extending XSLT ). Javascript is the preferred language for activating XUL-based program interfaces in Mozilla/Netscape. Javascript is a programming language for Flash MX. In the future, JavaScript is likely to become the programming language of new devices, as well as the macro language in large application software.

Compared with JavaScript, VBScript is used. Although Microsoft software has good support for VBScript, VBScript may be a bad choice in future development work. Microsoft also tends to use JavaScript (or Microsoft's own variant: JScript) to write client programs. Select javascript when selecting a script language.

6. Regular Expression (regular expressions)

You can use SQL to query relational databases. You can use XPath and XQuery to query XML files. You can use regular expressions to query plain text files. For example, you can use a command to search for and delete all comments from an HTML file. Some simple text query functions built in various development languages, such as the "indexof" function or the classic "instr" function or "like" Operator in VB, cannot be compared with regular expressions. Currently, all major development languages provide regular expressions. Although regular expressions are hard to understand and more difficult to read (a back-to-back in the early computer age), they are a powerful and underutilized tool.

7. Design Mode

Just as OOP classifies objects to simplify programming, the design pattern classifies interactions between common objects and gives them an appropriate name. The more OOP is used, the more useful the design pattern is. The names of some of the most commonly used models have become commonly used terms in the software development field. Therefore, to keep up with the mainstream information, you must have a considerable understanding of the design patterns.

8. Flash MX

If you need to get more graphics and stronger programming functions than HTML and CSS on the client side, Flash is your answer. Programming with Flash is much faster and easier than developing Java applets or writing. Net code.

In the latest version of MX, Flash is not only a tool for drawing and making animations. It has become a powerful programming environment: it can call the soap web service, you can also call ColdFusion, Java, or.. Net program. Flash is everywhere. Its engine exists in most client computers in the world, including handheld devices, locations, and even new writing board computers. Therefore, using flash can greatly expand the application scope of your program.

9. Linux/Windows

Familiar with Linux. Install linux on an old or new machine. Download the graphic user interface and write some programs based on it. Install Apache and write a web application. This world no longer just belongs to Windows, and this trend may continue. If you are a backbone Linux developer, abandon your hate for Windows and see if you can do some windows programming. There is a reason why Windows can continue to be king on desktop computers, not just because Microsoft controls the market.

No one knows when your company will decide to switch from Linux to Windows (or from windows to Linux), or you want to switch to a company that uses another platform, or you come up with a good idea of developing a killer software, so you need to gain programming experience on different operating systems.

10. SQL

Although SQL is not as new as other technologies discussed in this article, and its importance may be reduced in the next 10 years, it is still a basic skill. Many developers have not mastered this technology or are not enough to use it efficiently. Do not rely on an SQL builder with a graphical user interface to do things for you. You need to manually write query commands until you are familiar with basic SQL syntax. The SQL solution not only helps you learn XQuery in the future, but you may immediately find ways to simplify or improve your current project.

Cultivate curiosity
Finally, (Yes, I realized this is 11th technology), curiosity is your most important skill. Try a variety of things. New languages or new technologies may be useful or useless to your current or future work, but not everything you learn is for work. Don't be afraid of failure. Everything is hard at the beginning, and so are new technologies. Most failures occur because people want to learn too many things too quickly. Be satisfied with every improvement and never let time (or lack of time) impede you. Instead, you need to schedule attention, research, and experiment with new development technologies and tools.

You may never have to become an expert in these technologies, and my choices may not be suitable for your special situations at all. But by cultivating curiosity, you will find something you should know.
 

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.