程序员的进化(目前还看不懂)
高中时候
10 PRINT "HELLO WORLD"20 END
大学第一年
program Hello(input, output)beginwriteln('Hello World')end.
高年级大学生
(defun hello(print(cons 'Hello (list 'World))))
初级专家
#include <stdio.h>void main(void){char *message[] = {"Hello ", "World"};int i;for(i = 0; i < 2; ++i)printf("%s", message[i]);printf("n");}
老练的专家
#include <iostream.h>#include <string.h>class string{private:int size;char *ptr;string() : size(0), ptr(new char[1]) { ptr[0] = 0; }string(const string &s) : size(s.size){ptr = new char[size + 1];strcpy(ptr, s.ptr);}~string(){delete [] ptr;}friend ostream &operator <<(ostream &, const string &);string &operator=(const char *);};ostream &operator<<(ostream &stream, const string &s){return(stream << s.ptr);}string &string::operator=(const char *chrs){if (this != &chrs){delete [] ptr;size = strlen(chrs);ptr = new char[size + 1];strcpy(ptr, chrs);}return(*this);}int main(){string str;str = "Hello World";cout << str << endl;return(0);}
大师级程序员
[uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820)]library LHello{// bring in the master libraryimportlib("actimp.tlb");importlib("actexp.tlb");// bring in my interfaces#include "pshlo.idl"[uuid(2573F8F5-CFEE-101A-9A9F-00AA00342820)]cotype THello{interface IHello;interface IPersistFile;};};[exe,uuid(2573F890-CFEE-101A-9A9F-00AA00342820)]module CHelloLib{// some code related header filesimportheader(<windows.h>);importheader(<ole2.h>);importheader(<except.hxx>);importheader("pshlo.h");importheader("shlo.hxx");importheader("mycls.hxx");// needed typelibsimportlib("actimp.tlb");importlib("actexp.tlb");importlib("thlo.tlb");[uuid(2573F891-CFEE-101A-9A9F-00AA00342820),aggregatable]coclass CHello{cotype THello;};};#include "ipfix.hxx"extern HANDLE hEvent;class CHello : public CHelloBase{public:IPFIX(CLSID_CHello);CHello(IUnknown *pUnk);~CHello();HRESULT __stdcall PrintSz(LPWSTR pwszString);private:static int cObjRef;};#include <windows.h>#include <ole2.h>#include <stdio.h>#include <stdlib.h>#include "thlo.h"#include "pshlo.h"#include "shlo.hxx"#include "mycls.hxx"int CHello::cObjRef = 0;CHello::CHello(IUnknown *pUnk) : CHelloBase(pUnk){cObjRef++;return;}HRESULT __stdcall CHello::PrintSz(LPWSTR pwszString){printf("%ws ", pwszString);return(ResultFromScode(S_OK));}CHello::~CHello(void){// when the object count goes to zero, stop the servercObjRef--;if( cObjRef == 0 )PulseEvent(hEvent);return;}#include <windows.h>#include <ole2.h>#include "pshlo.h"#include "shlo.hxx"#include "mycls.hxx"HANDLE hEvent;int _cdecl main(int argc,char * argv[]) {ULONG ulRef;DWORD dwRegistration;CHelloCF *pCF = new CHelloCF();hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);// Initialize the OLE librariesCoInitializeEx(NULL, COINIT_MULTITHREADED);CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER,REGCLS_MULTIPLEUSE, &dwRegistration);// wait on an event to stopWaitForSingleObject(hEvent, INFINITE);// revoke and release the class objectCoRevokeClassObject(dwRegistration);ulRef = pCF->Release();// Tell OLE we are going away.CoUninitialize();return(0); }extern CLSID CLSID_CHello;extern UUID LIBID_CHelloLib;CLSID CLSID_CHello = { /* 2573F891-CFEE-101A-9A9F-00AA00342820 */0x2573F891,0xCFEE,0x101A,{ 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }};UUID LIBID_CHelloLib = { /* 2573F890-CFEE-101A-9A9F-00AA00342820 */0x2573F890,0xCFEE,0x101A,{ 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 }};#include <windows.h>#include <ole2.h>#include <stdlib.h>#include <string.h>#include <stdio.h>#include "pshlo.h"#include "shlo.hxx"#include "clsid.h"int _cdecl main(int argc,char * argv[]) {HRESULT hRslt;IHello *pHello;ULONG ulCnt;IMoniker * pmk;WCHAR wcsT[_MAX_PATH];WCHAR wcsPath[2 * _MAX_PATH];// get object pathwcsPath[0] = '';wcsT[0] = '';if( argc > 1) {mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1);wcsupr(wcsPath);}else {fprintf(stderr, "Object path must be specifiedn");return(1);}// get print stringif(argc > 2)mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1);elsewcscpy(wcsT, L"Hello World");printf("Linking to object %wsn", wcsPath);printf("Text String %wsn", wcsT);// Initialize the OLE librarieshRslt = CoInitializeEx(NULL, COINIT_MULTITHREADED);if(SUCCEEDED(hRslt)) {hRslt = CreateFileMoniker(wcsPath, &pmk);if(SUCCEEDED(hRslt))hRslt = BindMoniker(pmk, 0, IID_IHello, (void **)&pHello);if(SUCCEEDED(hRslt)) {// print a string outpHello->PrintSz(wcsT);Sleep(2000);ulCnt = pHello->Release();}elseprintf("Failure to connect, status: %lx", hRslt);// Tell OLE we are going away.CoUninitialize();}return(0);}
学徒级骇客
#!/usr/local/bin/perl$msg="Hello, world.n";if ($#ARGV >= 0) {while(defined($arg=shift(@ARGV))) {$outfilename = $arg;open(FILE, ">" . $outfilename) || die "Can't write $arg: $!n";print (FILE $msg);close(FILE) || die "Can't close $arg: $!n";}} else {print ($msg);}1;
老练的骇客
% cc -o a.out ~/src/misc/hw/hw.c% a.out
“逐鹿中原”级骇客
% echo "Hello, world."
低端经理
10 PRINT "HELLO WORLD"20 END
中层管理人员
mail -s "Hello, world." bob@b12Bob, could you please write me a program that prints "Hello, world."?I need it by tomorrow.^D
高级管理人员
% zmail jimI need a "Hello, world." program by this afternoon.
首席执行官
% letterletter: Command not found.% mailTo: ^X ^F ^C% help mailhelp: Command not found.% damn!!: Event unrecognized% logout
转载于:https://www.cnblogs.com/incyanggan/articles/3176936.html
程序员的进化(目前还看不懂)相关推荐
- 身为程序员还看不懂UML类图? 一文带你零基础学会看UML类图!
身为程序员还看不懂UML类图? 一文带你零基础学会看UML类图! 一,UML类图示例图 二,UML类图图例 三,分步解析说明 3.1 类图: 3.2 接口: 3.3 实现继承 3.4 实现接口: 3. ...
- 【神回复】程序员30多岁还在投简历找工作,怎么看?
今天有一个社区网友,微信给我留言,程序员30多岁还在投简历找工作,亚历山大,怎么看? 我怎么看?其实这个问题还真没有想过,因为目前还有遇见朋友所说的问题,但是我也有话要说. 程序员在三十岁的时候,投简 ...
- 解密初、中、高级程序员的进化之路
程序员的标准与要求 初级程序员 仅能完成简单模块和项目的开发工作,难以胜任复杂模块的开发.通常是入行不久, 1 年及以下工作经验的同学. 能力要求 熟悉前端基础知识如 HTML.JS.CSS . 能够 ...
- 解密初、中、高级程序员的进化之路(前端)
序员的标准与要求 初级程序员 仅能完成简单模块和项目的开发工作,难以胜任复杂模块的开发.通常是入行不久, 1 年及以下工作经验的同学. 能力要求 熟悉前端基础知识如 HTML.JS.CSS . 能够使 ...
- 解密Android初、中、高级程序员的进化之路
程序员的标准与要求 初级程序员 仅能完成简单模块和项目的开发工作,难以胜任复杂模块的开发.通常是入行不久, 1 年及以下工作经验的同学. 能力要求 有良好的JAVA基础,熟练掌握面向对象思想. 熟练掌 ...
- 蒋宇捷——程序员的进化 - 在拉勾1024程序员节上的演讲
最近看到一篇好文,分为三个章节:选择.成长.兴趣,受益匪浅啊! -------------------------------------------------------------------- ...
- 程序员的进化 - 在拉勾1024程序员节上的演讲
注:以下本文来自于我在拉勾网1024程序员节上的现场演讲. 我是蒋宇捷,信天创投的合伙人,之前是百度魔图的联合创始人. 我先做个自我介绍,其实每次介绍自己其实是很痛苦的事情,因为我前不久在拉勾的分享刚 ...
- 程序员除了上班,还可以怎么赚钱?
程序员除了工作之外还可以怎样赚钱呢? 私单 最理想的单子还是直接接海外的项目,比如 freelance.com 等网站.一方面是因为挣的是美刀比较划算,之前看到像给WordPress写支付+发送注册码 ...
- “只差一个程序员”这句话还能说多少年?
原创文章,欢迎转载.转载请注明:转载自IT人故事会,谢谢! 原文链接地址:"只差一个程序员"这句话还能说多少年? 这句话一般出现在非技术创始人在招募技术合伙人的时候,而且多是创始团 ...
- 成为更优秀的程序员:退后一步看问题
转载自 成为更优秀的程序员:退后一步看问题 一天,在工作中- Bug #3890 来自客户: 有个程序出现了错误,程序提示说"SpeedCalculator::compute()里出现了 ...
最新文章
- 列表组件之RecyclerView
- 深度学习目标检测模型全面综述:Faster R-CNN、R-FCN和SSD
- golang应用部署
- Scala类构造方法的参数可以作为属性来使用
- [Linux]使用宝塔面板做负载均衡时遇到的问题和解决办法
- druid 连接池监控报错 Sorry, you are not permitted to view this page.
- [课堂实践与项目]IOS优先级的计算器
- oracle一步一步01
- 【GNN框架系列】DGL第一讲:使用Deep Graph Library实现GNN进行节点分类
- Windows XP系统文件一一诠释(1)[最新整理](转BY wang6610----BBS.WUYOU.COM)
- C语言图形编程中的绘图函数~
- GP数据库锁表如何解锁
- 电子发票撤销 java_增值税电子发票作废如何办理?
- JS笔记:检测客户端(引擎、浏览器、平台、操作系统、移动设备)
- 强化学习——Modle-free DRL算法
- Android:触摸移动的悬浮窗口
- 记一次糟糕的驾照学习经历
- GDB调试器——GDB调试器简介
- caj转换成word转换器下载后如何操作?
- Linux修改网卡配置