+39 339 8585151
info@easytarg.com
skip to the main content area of this page
Leggero




 

"Hello World!" Evolution

14/04/2010 22:04:00

Hello World Evolution
"Hello World" è il primo programma che praticamente ogni programmatore scrive, e costituisce un ottimo esempio per illustrarne l'evoluzione del modo di programmare durante la sua carriera...


Scuola Media Superiore

10 PRINT "HELLO WORLD"
20 END


Primo anno di Università

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


Ultimo anno di Università

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


Giovane Professionista

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

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


Professionista Esperto

#include
#include

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

  string() : size(0), ptr(new char[1]) { ptr[0] = 0; }

  ~string()   { delete [] ptr; }

  string(const string &s) : size(s.size)
  {
    ptr = new char[size + 1];
    strcpy(ptr, s.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);
}


Apprendista 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;


Hacker Esperto

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


Hacker Anziano

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


Guru Hacker

% cat
Hello, world.
^D


Quadro

10 PRINT "HELLO WORLD"
20 END


Dirigente

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


Dirigente di alto livello

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


Direttore Generale

% message
message: Command not found
% pm
pm: Command not found
% letter
letter: Command not found.
% mail
To: ^X ^F ^C
help mail
help: Command not found.
>what
what: Command not found
>need help
need: Command not found
dannazione!
!: Event unrecognized
>exit
exit: Unknown
>quit
%
% logout
...
Bipppp!! Mrs Thomsson? Please page Tommy for me. NOW !



Tutti i Testi

Complessità

Il progetto di un'architettura software di alto livello, ha una complessità paragonabile al progetto di un aeroporto, di un grattacielo o di un centro commerciale....
Certo! Però se crolla, non dovrebbe fare vittime...
E se si trattasse del software di controllo di una centrale nucleare?


Pensiero Laterale

Quando la NASA iniziò il lancio di astronauti, si accorse rapidamente che le penne non scrivevano con gravità zero.
Per risolvere questo problema, gli scienziati della NASA assunsero anche una nota societa di consulenza.
Impiegarono dieci anni e 12 milioni di dollari sviluppando una penna che poteva scrivere con gravità zero, verso l'alto, verso il basso, con temperature da sotto zero fino a piu di 300°C..
I russi usarono una matita!
(E' una Bufala, ma molto Educativa)


Aforismi

Se un programma è stato difficile da scrivere, dovrà essere difficile anche da leggere.
Il Vero Programmatore
Il software diventa più lento più rapidamente di quanto l'hardware diventi più veloce.
Niklaus Wirth
Un giorno le macchine riusciranno a risolvere tutti i problemi, ma mai nessuna di esse potrà porne uno.
Albert Einstein
Il modo più sicuro per trovare un bug in un programma, è farne la Demo dal Cliente.
Anonimo