我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: 从入gate到精通,再到CEO 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

共产党人



性别: 帅哥 状态: 该用户目前不在线
等级: 优秀会员
发贴: 3353
威望: 0
浮云: 207
在线等级:
注册时间: 2006-11-24
最后登陆: 2008-06-29

5come5帮你背单词 [ leave /li:v/ vt. 离开,留下,遗忘,听任,让,委托;vi. 离开,出发;n. 许可,准许,准假,假期 ]


从入gate到精通,再到CEO


这是来自新加坡国立大学的一个页面,它记录了一个程序员从入gate到精通,再到黑客,再荣升经理和CEO时所写的代码,
正如我们访客所评论的那样,这位程序员从青蛙变成了[屏蔽],相信同为程序员的你,看了之后您会会心一笑,我们的生活何尝不是如此呢?


The Evolution of a Programmer
High School/Junior High

  10 PRINT "HELLO WORLD"
  20 END

First year in College

  program Hello(input, output)
    begin
      writeln('Hello World')
    end.

Senior year in College

  (defun hello
    (print
      (cons 'Hello (list 'World))))

New professional

  #include
  void main(void)
  {
    char *message[] = {"Hello ", "World"};
    int i;

    for(i = 0; i < 2; ++i)
      printf("%s", message);
    printf("\n");
  }

Seasoned professional

  #include
  #include

  class string
  {
  private:
    int size;
    char *ptr;

  public:
    string() : size(0), ptr(new char('\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);
  }

Master Programmer

  [
  uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820)
  ]
  library LHello
  {
      // bring in the master library
      importlib("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 files
      importheader();
      importheader();
      importheader();
      importheader("pshlo.h");
      importheader("shlo.hxx");
      importheader("mycls.hxx");

      // needed typelibs
      importlib("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
  #include
  #include
  #include
  #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\n", pwszString);
      return(ResultFromScode(S_OK));
  }


  CHello::~CHello(void)
  {

  // when the object count goes to zero, stop the server
  cObjRef--;
  if( cObjRef == 0 )
      PulseEvent(hEvent);

  return;
  }

  #include
  #include
  #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 libraries
  CoInitializeEx(NULL, COINIT_MULTITHREADED);

  CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER,
      REGCLS_MULTIPLEUSE, &dwRegistration);

  // wait on an event to stop
  WaitForSingleObject(hEvent, INFINITE);

  // revoke and release the class object
  CoRevokeClassObject(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
  #include
  #include
  #include
  #include
  #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 path
  wcsPath[0] = '\0';
  wcsT[0] = '\0';
  if( argc > 1) {
      mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1);
      wcsupr(wcsPath);
      }
  else {
      fprintf(stderr, "Object path must be specified\n");
      return(1);
      }

  // get print string
  if(argc > 2)
      mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1);
  else
      wcscpy(wcsT, L"Hello World");

  printf("Linking to object %ws\n", wcsPath);
  printf("Text String %ws\n", wcsT);

  // Initialize the OLE libraries
  hRslt = 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 out
  pHello->PrintSz(wcsT);

  Sleep(2000);
  ulCnt = pHello->Release();
  }
      else
  printf("Failure to connect, status: %lx", hRslt);

      // Tell OLE we are going away.
      CoUninitialize();
      }

  return(0);
  }

Apprentice Hacker

  #!/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;

Experienced Hacker

  #include
  #define S "Hello, World\n"
  main(){exit(printf(S) == strlen(S) ? 0 : 1);}

Seasoned Hacker

  % cc -o a.out ~/src/misc/hw/hw.c
  % a.out

Guru Hacker

  % cat
  Hello, world.
  ^D

New Manager

  10 PRINT "HELLO WORLD"
  20 END

Middle Manager

  mail -s "Hello, world." bob@b12
  Bob, could you please write me a program that prints "Hello,
world."?
  I need it by tomorrow.
  ^D

Senior Manager

  % zmail jim
  I need a "Hello, world." program by this afternoon.

Chief Executive

  % letter
  letter: Command not found.
  % mail
  To: ^X ^F ^C
  % help mail
  help: Command not found.
  % damn!
  !: Event unrecognized
  % logout
顶端 Posted: 2007-09-15 09:23 | [楼 主]
coolboy





性别: 保密 状态: 该用户目前不在线
等级: 品行端正
发贴: 252
威望: 0
浮云: 1107
在线等级:
注册时间: 2005-10-02
最后登陆: 2016-04-25

5come5帮你背单词 [ continuous /kən'tinjuəs/ a. 连续的,不间断的 ]


无聊,发到水区里去吧
顶端 Posted: 2007-09-15 17:06 | [1 楼]
kangtalc



性别: 帅哥 状态: 该用户目前不在线
头衔: 揍敌客·奇犽
等级: 希望之光
家族: 万人坑恋影部落
发贴: 1723
威望: 5
浮云: 1113
在线等级:
注册时间: 2005-09-21
最后登陆: 2008-06-29

5come5帮你背单词 [ gad // n. 神,上帝 ]


我怎么觉得很有意思呢。。。。
顶端 Posted: 2007-09-15 20:41 | [2 楼]
duanjia



性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 240
威望: 0
浮云: 1125
在线等级:
注册时间: 2007-01-12
最后登陆: 2009-05-31

5come5帮你背单词 [ investigate /in'vestigeit/ v. 调查,调查研究 ]


只有能体会真真含义的人才能觉得有趣
顶端 Posted: 2007-09-15 20:52 | [3 楼]
est





性别: 帅哥 状态: 该用户目前不在线
等级: 荣誉会员
发贴: 6578
威望: 3
浮云: 431
在线等级:
注册时间: 2006-10-14
最后登陆: 2018-07-05

5come5帮你背单词 [ lobster /'lobstə/ n. 龙虾 ]


囧,在cnbeta还是哪里看过了
顶端 Posted: 2007-09-16 11:42 | [4 楼]
天之痕



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
家族: 掌握文武半边天
发贴: 2461
威望: 0
浮云: 1170
在线等级:
注册时间: 2007-09-16
最后登陆: 2009-05-14

5come5帮你背单词 [ ally /'ælai, ə'lai/ n. 同明者,伙伴,同类 ]


看来还是要一步一个脚印
顶端 Posted: 2007-10-19 12:07 | [5 楼]
krisfer





性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 746
威望: 0
浮云: 1107
在线等级:
注册时间: 2006-10-02
最后登陆: 2021-12-30

5come5帮你背单词 [ computer /kəm'pju:tə/ n. 计算机,电脑 ]


我好像现在还在C的那个地方,差距呀。。。
顶端 Posted: 2007-10-24 12:40 | [6 楼]
再不斩



性别: 帅哥 状态: 该用户目前不在线
等级: 鹤立鸡群
发贴: 1414
威望: 0
浮云: 1413
在线等级:
注册时间: 2005-12-23
最后登陆: 2009-04-26

5come5帮你背单词 [ multitude /'mΛltitju:d/ n. 众多,大量,大群,大众 ]


中间有些语法好像没见过,应该不是C吧,不过总算能大体看出点名堂来,就是越到后来,越有得偷懒了,毕竟到了一定级别啦。
顶端 Posted: 2007-10-26 09:15 | [7 楼]
我来我网·5come5 Forum » 程序员之家

Total 0.007652(s) query 5, Time now is:11-23 08:36, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号