`
happmaoo
  • 浏览: 4341582 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

保饭碗的10项技术之杂谈

阅读更多

可以说是看了这篇文章《保证你现在和未来不失业的十种关键技术》(作者/iamsohappy),才注意到Regular Expressions原来是这么的重要。我这里没有加该文章的超级链接,因为到处都有,我找不到其原始出处。当一篇文章被转载时,注明原始来源应该成为我们的习惯,既表示对作者的尊重,也是对自己的尊重。这里是一段作为我以后所有咚咚的版权声明(责任声明):<?xml:namespace prefix = o />

你可以在保持本文完整性的前提下,任意转载、任意分发本文的非商业用途的硬拷贝。转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。http://blog.csdn.net/yqj2065/

你不可以在未经授权的情况下在书籍或报刊杂志上整章整节的使用本文,也不可以在你想发表的论文或书籍中整章整节的使用本文。让人们认为我抄袭了你的东西是不友好的。 除非你和我一样注明:这是抄袭/翻译的。

此外,yqj2065没有任何地明确的或者含蓄的表白,证明本文是没有任何bug的。因使用本文所述思想、情绪、方法或源码的全部或部分而导致您的数据丢失、硬盘损坏,机箱螺丝松动、眼睛红肿、编程思路混乱等等生命、财产及精神的损失,本人概不负责。

1、十种关键技术

我愿意相信iamsohappy会在其文章中说明,这是一篇翻译的文章,但我看的版本没有这一句话:After you've read my list, be sure to join us in the talk.editors.devx discussion group to submit your own technology top 10 list.可能有什么人不厚道吧。在原文10 Technologies that Will Help You Stay Employed 中,【December 11, 2002A. Russell Jones列举了10项他认为当今计算机软件开发和应用领域最重要十种关键技术排名:(下面是摘录)

1. XML First, and above all else …..the XML specification itself, a family of related XML-based languages: the most important of which are XHTML, XSLT, XSL, DTDs, XML Schema (XSD), XPath, XQuery, and SOAP

2. Web Services Web services are a direct outgrowth of XML's popularity. Web service familiarity is important because it's the simplest way anyone has yet invented for applications to communicate across disparate machines, languages, platforms, and locations. Whether you need them or not, Web services are a major step forward for interoperability. John Bosak, chair of the XML Working Group, once said that XML "gives Java something to do." Well, Web services give every language something to do.

3. Object-Oriented Programming OOP as an ivory-tower technology[?],

4. Java, C++, C#, VB.NET others that may prove just as useful, depending on your particular field, such as FORTRAN, COBOL, APL, <?xml:namespace prefix = st1 /><city><place><span lang="EN-US" style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial">ADA</span></place></city>, Perl, and Lisp.

5. JavaScript When you have a choice of scripting languages, choose JavaScript.( In contrast, VBScript)

6. Regular Expressions search relational databases with SQL, XML with XPath and XQuery, and plain text with regular expressions.

7. Design Patterns The more you use OOP, the more useful design patterns become.

8. Flash MX more client-side graphics and programming power than you can get with HTML and CSS,

9. Linux/Windows switch from Linux to Windows (or vice versa),

10. SQL still an essential skill

到了2005-02-03的今天,可能大家都熟悉上面相关的术语了。想看中文版的,可以google一下。

2、顺序问题

Looking at "10 Technologies that Will Help You Stay Employed" by Simon St. Laurent <date year="2003" day="10" month="1"><b style="mso-bidi-font-weight: normal"><span lang="EN-US" style="FONT-SIZE: 12pt; COLOR: #ff6600">Jan. 10, 2003</span></b></date>
URL: http://www.oreillynet.com/pub/wlg/2578

yqj2065解释:(不好翻译啊。)

列一个Top ten表既迷人又危险,A. Russell Jones, Executive Editor of DevX.com, 在“The 10 tech”中给出了一个非常好的清单,但其顺序值得商榷。

我看到XML位于#1,总感到开心。尽管其原文给出的理由有小小错误(SOAP is really Web Services, not XML.)。开心一下,限于原清单的范围之内【其实他应该加点新东西的】,我更喜欢下面的顺序:

 1: XML
 10: SQL
 6: Regular Expressions
 3: Object-Oriented Programming
 7: Design Patterns
 4: Java, C++, C#, and VB.NET
 2: Web Services
 5: JavaScript
 8: Flash MX
 9: Linux/Windows

信息/数据,我认为,是所有这些东西的核心,所以XML and SQL事实上就像平起平坐,它们有其所擅长的不同的数据领域。按照我古怪的观点,对于构建一个成功项目的坚实基础,那些对数据结构有深入认识的人,远比那些知道如何去操作那些数据结构的人重要。而OOP却模糊了这种差别(我认为还要严重)。从那些来来去去长生不老的SQL databases身上,我们就清楚了,数据结构很重要(当然,大多数的RDBMS有它们自身的数据处理缺陷)。

正则表达式是数据和编程之间的接点(an inflection point),在我看来,它越来越像很多类型的信息处理的关键技术。

(搞定这些底层的咚咚)再向上走,就是你操作数据和构建接口所需要的一些一般的编程概念——OOP、设计模式,之后是编程语言。Web Services,我看更像是编程的分支而非XML的分支,所以我只对那些有上面的底子的人感兴趣。JavaScript似乎正在退色,尽管它仍然是重要的super glue【我知道502胶水】。Flash MX and Linux/Windows是有趣/有用的咚咚,但我不能肯定自己是否会去雇佣一个程序员,如果他没有首先know其他的东西。

从我所见所闻的情况来想象(supposed reality),我估计这个清单是下面的样子:

 4: Java, C++, C#, and VB.NET
 3: Object-Oriented Programming
 2: Web Services
 7: Design Patterns
 1: XML
 8: Flash MX
 10: SQL
 5: JavaScript
 6: Regular Expressions
 9: Linux/Windows

顾主们似乎把编程技巧看到比什么都重要。Web Services 是一个热点词汇,尽管没有人真正知道这个词汇之外还有什么鬼把戏(what lies beyond the acronyms)。Design Patterns,使人感到,你知道你正在干什么,但我不明白为什么把它作为一项必需的资格。

XML仍然比较靠前,随着Office 11 and Open Office搞出更多的XML,还有变热的趋势,但是它不能得到像“真正编程”那样的声誉。尽管不是我希望的,Flash MX在市场上的确不错。SQL虽然差不多冰凉但还是非常重要的,JavaScript似乎慢慢的走向衰亡,至少在某些方面如此。Regular expressions从来就没有真正获得它们应受到的重视,而Linux/Windows看起来简直就是开发者在找工作前就必须拥有的非常基础的东西。(Mac OS X也可能在某一天录入其中。)

3

贴在

自己

炕头的列表

 1: XML
 2: SQL & Data mining
 3: Regular Expressions
 4: OO technology--Design Patterns、UML
 5: AOP & GP
 6: Java, C++, C#, and VB.NET
 7: Web Services
 8: JavaScript PHP & Python/jython
 9: Flash MX
 10: Linux/Windows

注:A. Russell Jones及Simon St. Laurent 的Top 10,仅仅对编程工人及软件开发者有参考价值。

更重要的提醒:这是写给保饭碗而不是找饭碗的程序员的文章。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics