Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Noticias (https://www.clubdelphi.com/foros/forumdisplay.php?f=34)
-   -   Google lanzará un nuevo lenguaje de programación, llamado "Dart" (https://www.clubdelphi.com/foros/showthread.php?t=75635)

MAXIUM 09-09-2011 01:38:27

Google lanzará un nuevo lenguaje de programación, llamado "Dart"
 
El rumor estaba dando vuelta desde hace algunos días, pero hoy ya está casi confirmado que el próximo 10 de octubre, Google presentará un nuevo lenguaje de “programación web estructurada” llamado Dart.

En octubre se realizará la conferencia Goto en Dinamarca, donde dos desarrolladores de Google harán el anuncio. Hasta entonces no conoceremos los detalles del asunto, aunque algunas informaciones al respecto ya fueron publicadas en el sitio de la conferencia.

Los expositores – y posiblemente creadores – de Dart son Gilad Bracha, uno de los co-autores de Java y ex empleado de Sun Microsystems y SAP; y Lars Bak, creador del motor V8 de Javascript de Chrome.

Google lanzó anteriormente un lenguaje de programación llamado Go, de modo que Dart debe ser algo diferente. Las apuestas dicen que se tratará de un tipo de lenguaje que será interpretado por el navegador (como JavaScript o Python). Tanto Bracha como Bak han trabajado antes con Smalltalk, lo que también podría ser una pista respecto a qué es lo que significa “programación web estructurada”.

El lanzamiento de Dart no deja de generar dudas, sin embargo, debido a que ya hay una amplia variedad de lenguajes disponibles y utilizables, contra los que el sistema de Google tendría que competir. Veremos qué se traen entre manos en octubre.

Link: Google announces Dart programming language (ExtremeTech)

Casimiro Notevi 09-09-2011 10:04:58

Ya he visto una oferta de trabajo que dice:
Se necesita experto en "Dart" con más de 3 años de experiencia.
Bromas aparte, ojalá sea un "auténtico" lenguaje para programar para la web.

ecfisa 09-09-2011 13:26:56

Hola.

Creo que les espera una dura taréa para insertar el nuevo lenguaje, ya que hay varios que están bién afianzados en el área...

Saludos.

oscarac 09-09-2011 15:26:42

Cita:

Empezado por Casimiro Notevi (Mensaje 411447)
Ya he visto una oferta de trabajo que dice:
Se necesita experto en "Dart" con más de 3 años de experiencia.
Bromas aparte, ojalá sea un "auténtico" lenguaje para programar para la web.

jajajajajaja que buena

se necesita bebe recien nacido que sepa caminar para un comercial de cervezas :eek:

jhonny 09-09-2011 19:05:53

Siempre he pensado que estas empresas, sacan y sacan este tipo de "nuevas tecnologías" para mantener la mente de los más intrépidos ocupada en ello... así a muchos de esos tipos intrépidos no les da por montar "competencia".

Casimiro Notevi 09-09-2011 19:56:59

Cita:

Empezado por jhonny (Mensaje 411574)
Siempre he pensado que estas empresas, sacan y sacan este tipo de "nuevas tecnologías" para mantener la mente de los más intrépidos ocupada en ello... así a muchos de esos tipos intrépidos no les da por montar "competencia".

Creo que leí una vez que los de microsoft, google, etc. pagan unos sueldos tremendos a sus mejores programadores para que ni siquiera se pongan a pensar en cambiar de trabajo.
Como se lo pueden permitir, el dinero no les falta, es una táctica.
Voy a explicársela a mi jefe, a ver qué piensa :)

Chris 09-09-2011 20:00:44

Cita:

Empezado por MAXIUM (Mensaje 411424)
Google lanzó anteriormente un lenguaje de programación llamado Go, de modo que Dart debe ser algo diferente. Las apuestas dicen que se tratará de un tipo de lenguaje que será interpretado por el navegador (como JavaScript o Python)[/url] (ExtremeTech)

Nunca he visto que Python sea interpretado por el navegador. No te estoy culpando Maxium, sino que yo también leí la noticia en otro lado y también hice incapíe en este error técnico.

Saludos,
Chris

Crandel 09-09-2011 20:21:56

Cita:

Empezado por Casimiro Notevi (Mensaje 411598)
Creo que leí una vez que los de microsoft, google, etc. pagan unos sueldos tremendos a sus mejores programadores para que ni siquiera se pongan a pensar en cambiar de trabajo.
Como se lo pueden permitir, el dinero no les falta, es una táctica.
Voy a explicársela a mi jefe, a ver qué piensa :)

El problema es si tu jefe dice:

"mmm ... entonces mayor sueldo a los mejores programadores ...."

y le da un aumento a todo el resto :D

Casimiro Notevi 09-09-2011 20:32:31

Cita:

Empezado por Crandel (Mensaje 411606)
El problema es si tu jefe dice:
"mmm ... entonces mayor sueldo a los mejores programadores ...."
y le da un aumento a todo el resto :D

Vaya palo moral que sería eso :D

D-MO 09-09-2011 21:32:00

No me extraña de google, ¡queriendo estar presente en cada área de IT!... sin embargo, viniendo de ellos, espero que sea algo bueno.

Saludos.

newtron 10-09-2011 09:49:48

Cita:

Empezado por Crandel (Mensaje 411606)
El problema es si tu jefe dice:

"mmm ... entonces mayor sueldo a los mejores programadores ...."

y le da un aumento a todo el resto :D

Juassssssssssssssssssss, esa ha estado bien. :)

Casimiro Notevi 10-09-2011 12:44:02

Cita:

Empezado por newtron (Mensaje 411667)
Juassssssssssssssssssss, esa ha estado bien. :)

No le veo la gracia :confused:


:):D:D:D

dec 11-09-2011 03:51:25

Cita:

Empezado por Casimiro Notevi (Mensaje 411447)
Ya he visto una oferta de trabajo que dice:
Se necesita experto en "Dart" con más de 3 años de experiencia.

:D :D :D :D :D

D-MO 10-10-2011 16:19:30

Bueno señores, Dart está aquí:cool:

Habrá que revisarlo bien para poder juzgarlo.

Saludos.

Casimiro Notevi 10-10-2011 16:50:45

Código:

main() {
  print('Hello, Dart!');
}

En mi época eso se llamaba lenguaje C

Crandel 10-10-2011 17:22:28

Cita:

Empezado por Casimiro Notevi (Mensaje 415083)
Código:

main() {
  print('Hello, Dart!');
}

En mi época eso se llamaba lenguaje C

en mi epoca tambien, pero ahora lo puedes pegar en la web, asi que lo rebautizamos como Dart y decimos que es un nuevo lenguaje super cool :D y que cualquier similitud con lenguajes anteriores no es pura coincidencia.

Ñuño Martínez 10-10-2011 21:11:24

Esa manía de coger C, cambiarle dos cosas y decir que tienes un lenguaje nuevo me repatea los higadillos. ¡Maldito seas por siempre, Stroustrup! Por tu culpa tenemos que sufrir C#, PHP, Go, Dart, D, JavaScript y demás soplapolleces. :mad:

rretamar 11-10-2011 04:01:11

Esperemos que no sea un lenguaje con sintaxis horrible como C y sus derivados. No por nada le dicen "lenguaje de sólo escritura".

100 % de acuerdo con Ñuño.

mamcx 11-10-2011 04:48:55

Pues he leído sobre el lenguaje, y no le veo ninguna gracia.

No tiene una sintaxis mejor en ningún aspecto importante
No tiene un paradigma que realmente mejore algo a javascript
No tiene un caso de uso en donde sea CLARAMENTE superior.

Por ejemplo, node.js tiene como cosa importante que hace facil hacer codigo asincronico. Por eso solo, es popular.

Ruby es mágico. Python es simple.Erlang hace multiprocesamiento como decir "hola mundo". Haskell tiene un sistema de tipado poderoso. Lisp hace de todo, si sobrevives a su aprendizaje. C es acceso bajo. Delphi tiene una mejor interface con el API windows. Etc...

Hay un caso de uso de cada lenguaje, donde es claramente superior y/o diferente a los demas, que lo justifica.

Al González 11-10-2011 05:35:20

Cita:

Empezado por Ñuño Martínez (Mensaje 415135)
Esa manía de coger C, cambiarle dos cosas y decir que tienes un lenguaje nuevo me repatea los higadillos. ¡Maldito seas por siempre, Stroustrup! Por tu culpa tenemos que sufrir C#, PHP, Go, Dart, D, JavaScript y demás soplapolleces. :mad:

+1

Cita:

Empezado por rretamar (Mensaje 415183)
Esperemos que no sea un lenguaje con sintaxis horrible como C y sus derivados. No por nada le dicen "lenguaje de sólo escritura".

+1

roman 11-10-2011 19:09:58

C es un buen lenguaje. Que no les guste o no lo entiendan es otra cosa. ;)

// Saludos

Al González 11-10-2011 19:51:42

Yo lo entiendo y me gusta programar en él (no tanto como en Delphi, claro). Lo que no me gusta es que sea tan espantoso y se requiera más esfuerzo para su lectura. :p

roman 11-10-2011 19:58:20

Yo más bien creo que hay mucho código C escrito horriblemente. Porque es cierto, puede ser tan críptico como queramos. Pero un programa C bien escrito no tiene nada de ilegible.

// Saludos

Casimiro Notevi 11-10-2011 20:22:15

Cuando yo usaba C, antes de delphi, mi código fuente era muy entendible. Es cierto que muchos escriben lo que parecen ser "jeroglíficos egipcios", no sé por qué.
Recuerdo que por aquellas fechas mi comentario era algo así como: "El lenguaje C es tan potente como el ensamblador y tan fácil como basic" :D

Julián 12-10-2011 00:45:42

Se puede escribir tan horriblemente con delphi como con c. Y se puede escribir muy bien tanto con uno como con otro.

Nunca entederé a quienes sostienen que tal o cual lenguaje es horrible porque use {llaves} en lugar de "begin" y "end". Que me digan (yo mismo lo digo) que java es lento porque es interpretado o porque produce aplicaciones muy feas pues vale, pero no entendería que es horrible por usar {llaves}.

Un saludo!

mamcx 12-10-2011 01:08:55

Cita:

Empezado por Julián (Mensaje 415299)
Se puede escribir tan horriblemente con delphi como con c. Y se puede escribir muy bien tanto con uno como con otro.

No se puede. Prueba definitiva?

Bsucar en google:

delphi obfuscate code
c obfuscate code
perl obfuscate code

Veran que no hay ejemplos de codigo obscurecido a mano en delphi, en cambio hay hasta TUTORIALES para hacerlo en c & perl.

http://www0.us.ioccc.org/main.html

Cita:

To write the most Obscure/Obfuscated C program under the rules below
Código PHP:

                                  #include\
                                  
<stdio.h>
                     
#include                <stdlib.h>
                     #include                <string.h>

                    #define w "Hk~HdA=Jk|Jk~LSyL[{M[wMcxNksNss:"
                   #define r"Ht@H|@=HdJHtJHdYHtY:HtFHtF=JDBIl"\
                  
"DJTEJDFIlMIlM:HdMHdM=I|KIlMJTOJDOIlWITY:8Y"
                 
#define S"IT@I\\@=HdHHtGH|KILJJDIJDH:H|KID"\
                
"K=HdQHtPH|TIDRJDRJDQ:JC?JK?=JDRJLRI|UItU:8T"
               
#define _(i,j)L[i=2*T[j,O[i=O[j-R[j,T[i=2*\
              
R[j-5*T[j+4*O[j-L[j,R[i=3*T[j-R[j-3*O[j+L[j,
             
#define t"IS?I\\@=HdGHtGIDJILIJDIItHJTFJDF:8J"

    #define y                  yy(4),yy(5),                yy(6),yy(7)
  #define yy(              i)R[i]=T[i],T[i ]            =O[i],O[i]=L [i]
#define Y _(0          ], 4] )_ (1 ], 5] )_ (2      ], 6] )_ (3 ], 7] )_=1
#define v(i)(      (( R[ i ] * _ + T [ i ]) * _ + O [ i ]) * _ + L [ i ]) *2
double b 32  ,,,,,int Q [], T8] ,[], L8] ;
#define q( Q,R ) R= *X ++ % 64 *8 ,R |= *X /8 &7 ,Q=*X++%8,Q=Q*64+*X++%64-256,
# define  p      "G\\QG\\P=GLPGTPGdMGdNGtOGlOG"   "dSGdRGDPGLPG\\LG\\LHtGHtH:"
#  define W         "Hs?H{?=HdGH|FI\\II\\GJlHJ"    "lFL\\DLTCMlAM\\@Ns}Nk|:8G"
# define   U           "EDGEDH=EtCElDH{~H|AJk}"       "Jk?LSzL[|M[wMcxNksNst:"
#  define u                  "Hs?H|@=HdFHtEI"             "\\HI\\FJLHJTD:8H"
char  *   x                   ,*, ( * )[               640],z[3]="4_",
*
"4,8O4.8O4G" r U "4M"u S"4R"u t"4S8CHdDH|E=HtAIDAIt@IlAJTCJDCIlKI\\K:8K"U
 
"4TDdWDdW=D\\UD\\VF\\FFdHGtCGtEIDBIDDIlBIdDJT@JLC:8D"t"4UGDNG\\L=GDJGLKHL\
FHLGHtEHtE:"
p"4ZFDTFLT=G|EGlHITBH|DIlDIdE:HtMH|M=JDBJLDKLAKDALDFKtFKdMK\
\\LJTOJ\\NJTMJTM:8M4aGtFGlG=G|HG|H:G\\IG\\J=G|IG|I:GdKGlL=G|JG|J:4b"
W
S
"4d"W t t"4g"r w"4iGlIGlK=G|JG|J:4kHl@Ht@=HdDHtCHdPH|P:HdDHdD=It\
BIlDJTEJDFIdNI\\N:8N"
w"4lID@IL@=HlIH|FHlPH|NHt^H|^:H|MH|N=J\\D\
J\\GK\\OKTOKDXJtXItZI|YIlWI|V:8^4mHLGH\\G=HLVH\\V:4n" 
u t t
"4p"W"IT@I\\@=HdHHtGIDKILIJLGJLG:JK?JK?=JDGJLGI|MJDL:8M4\
rHt@H|@=HtDH|BJdLJTH:ITEI\\E=ILPILNNtCNlB:8N4t"
W t"4u"
p"4zI[?Il@=HlHH|HIDLILIJDII|HKDAJ|A:JtCJtC=JdLJtJL\
THLdFNk|Nc|\
:8K"
main (
int C,char**        A) {for(x=A[1],i=calloc(strlen(x)+2,163840);
C-1;C<3?Q=_=       0,(z[1]=*x++)?((*x++==104?z[1]^=32:--x), =
strstr(Z,z))      &&(X+=C++):(printf("P2 %d 320 4 ",V=b/2+32),
V*=2,s=Q=0,C     =4):C<4?Q-->0?i[(int)((l+=o)+b)][(int)(k+=B)
]=
1:_?_-=.5/    256,o=(v(2)-(l=v(0)))/(Q=16),B=(v(3)-(k=v(1)
))/
Q:*X>60?y   ,q(L[4],L[5])q(L[6],L[7])*X-61||(++X,y,y,y),
Y:*X>57?++X,  y,Y:*>54?++X,b+=*X++%64*4:--C:printf("%d "
,i[Q][s]+i[][s+1]+i[Q+1][s]+i[Q+1][s+1])&&(Q+=2)<V||(Q=
0,s+=2)<640
||(C=1));} 

Código PHP:

#include <ncurses.h>/*****************************************************/
            
int               m[256                   ] [         256   ],a
 
,b   ;;;   ;;;   WINDOW*w;   char*l=""   "\176qxl"   "q"   "q"   "k"   "w\
xm"   "x"   "t"         "j"         "v"         "u"         "n"         
,Q[
 ]=   
"Z"   "pt!ftd`"   "qdc!`eu"   "dq!$c!nnwf"/**   ***   */"t\040\t";c(
int   u ,         int         v){                     v?m   [u]         [v-
 
1]   |=2,m[u][v-1] &   48?W][v-1   ] &   15]]):0:0;u?m[u   -1][v]|=1   ,m[
 
u-               1][   v]&         48?               W-1   ][v         ]&
15]   ]):0:0;v<   255   ?m[   u][v+1]|=8,m[u][v+1]&   48?   W][   v+1]&15]]
):
0         :0;         <               255   ?m[   u+1         ][v   ]|=
4,m[u+1][   v]&48?W+1][v]&15]]):0:0;W][   v]&   15]   ]);}cu(char*q){   return
 *
q               ?cu   (q+         1)&         1?q   [0]               ++:
q[0   ]--   :1;   }d(   int   u ,   int/**/v,   int/**/x,   int   y){   int
Y
=y   -v,   X=x         -u;   int         S,s   ;Y<         0?Y   =-Y   ,s,
s=-   1:(   s=1);X<0?X=-X,S   =-1  :(S=   1);   Y<<=   1;X<<=1;   if(X>Y){
int   f=Y               -(X   >>1   );;               while(u!=         x){
f>=   0?v+=s,f-=X:0;u   +=S   ;f+=   Y;m[u][v]|=32;mvwaddch(w,v   ,u,   m[u
 
][               v]&   64?   60:         46)         ;if         (m[   u][
v]&16){c(u,v);;   ;;;   ;;;   return;}}   }else{int   f=X   -(Y>>1);;   while
 (
v   !=y         ){f   >=0         ?u   +=S,               f-=         Y:0
 
;v   +=s   ;f+=X;m[u][v]|=   32;mvwaddch(w,v   ,u,m[u][v]&64?60:46);if(m[u
 
][                     v]&         16)   {c(   u,v                     );
  ;   return;;;}}}}
Z(   int/**/a,   int   b){   }e(   int/**/y,int/**/  x){
int               i ;         for         (i=         a;i               <=a
+S;i++)d(y,x,i,b),d(y,x,i,b+L);for(i=b;i<=b+L;i++)d(y,x,a,i),d(y,x,a+   S,i
 
);                     ;;;         ;;;         ;;;               ;;;   ;
  
mvwaddch(w,x,y,64);   ;;;   ;;;   ;;;   prefresh(   w,b,a,0,0   ,L-   1,S-1
);}             main(         int               V ,   char              *C[
  ]   ){
FILE*f=   fopen(V==1?"arachnid.c"/**/   :C[   1],"r");int/**/x,y,c,
v=0         ;;;      initscr              ();               Z(Z         (raw
 
()   ,Z(   curs_set(0),Z(1   ,noecho()))),keypad(    stdscr,TRUE));w   =newpad
  
(   300,  300               ) ;   for         (x=   255   x   >=0   ;x--
  )   for   (
y=   255   ;y>=0;y--   )m[   x][   y]=   0;x=y=0;refresh( );while
  (   (
c=                           fgetc (f)   )+1)                    {if(
0||c==10||  x==   256){x=0;y++;if(y==256  )break;;}   else{m[x][y]=(c   ==
'~'   ?64   c   ==32              ?0:         16)   ;;x               ++;
      }}for(
x=0   ;x<   256;x++)m   [x][0]=16   ,m[   x][   255]=16;for(y=0
;y<         256   y         ++)   m[0         ][y   ] =               16,
m[255][y]   =16   ;a=b=c=0;   x=y   =1;   do{v++;mvwaddch   (w,   y,x   ,m[
x][         y]&               32?   m[x                     ][y   ] &   16?
 
0|   acs_map[l[m[x][y]&15]]:46 :   32);c==0163&&!(m[x][y+1]&16)?y++:   0;c
 
==   119         &&!         (m[                                       x][
 
y-   1]&   16)   ?y--:0;;c   ==97  &&!(m[x-1][y]&16)?x--:0;c==100&&!(m[x+1
 
][   y]&   16)         ? x   ++:0              ;if(                    c==
 
3-   1+1   ){endwin(   );;   return(0)   ;}x   -a<5?a>S-   5?a-=S-5:(a=0):
0;x               -a>         S-5?a<255   -S*         2?a               +=S
-5:(a=256-S):0;   y-b<5?b>L-5?b-=L-5:(b   =0)   :0;   y-b>L-5?b<255-L   *2?
b+=                                       L-5   :(b                     =256
-L)   :0;e(x,y);if(m[x][y]&64)break;}while((c=getch())!=-1);endwin();cu(Q);
printf(Q,v);} 

RETO A QUE IMITEN ESTO EN DELPHI.

P.D: Ese codigo FUNCIONA. Obvio, con PERL SE PUEDE PEOR:

Código PHP:

  #:: ::-| ::-| .-. :||-:: 0-| .-| ::||-| .:|-. :||
                  
open(Q,$0);while(<Q>){if(/^#(.*)$/){for(split('-',$1)){$q=0;for(split){s/\|
                  
/:.:/xg;s/:/../g;$Q=$_?length:$_;$q+=$q?$Q:$Q*20;}print chr($q);}}}print"\n";
                  
#.: ::||-| .||-| :|||-| ::||-| ||-:: :|||-| .:| 

Pero NADA LE GANA A APL:

http://www.microapl.co.uk/apl/learn_apl.html
Código:

X ← 3 3⍴÷⍳9  ⋄ Y ← DATA[⍋DATA] ⍝ A comment

Crandel 12-10-2011 01:13:27

Nadie dice que sea un mal lenguaje, se puede y se realizaron excelentes programas con él. Yo mismo lo utilizo bastante según mis necesidades, pero no siento el mismo placer programando en él como con otros lenguajes.

y no solo uno dice que es horrible:

Linus Torvalds: Why C++ Sucks

Cita:

According to Torvalds — yes, the Linus of Linux — C++ leads to really really bad design choices. He says that developers "invariably start using the 'nice' library features of the language like STL and Boost and other total and utter crap," that may "help" you program, but they cause infinite amounts of pain when they don't work and inefficient abstracted programming models.

mamcx 12-10-2011 01:24:21

Cita:

Empezado por Crandel (Mensaje 415302)
Nadie dice que sea un mal lenguaje

Nadie lo dice, excepto Linus Torvalds?

Bueno, yo tambien lo digo. Todo engendro del C es horrible de nacimiento, y requiere mucha cosmetica para hacerlo medio decente.

Y eso que trabajo objective-c a la lata estos dias...

Casimiro Notevi 12-10-2011 01:39:07

Cita:

Empezado por Crandel (Mensaje 415302)
Nadie dice que sea un mal lenguaje, se puede y se realizaron excelentes programas con él. Yo mismo lo utilizo bastante según mis necesidades, pero no siento el mismo placer programando en él como con otros lenguajes.

y no solo uno dice que es horrible:

Linus Torvalds: Why C++ Sucks

Bueno, no es lo mismo C que C++, realmente hay muuuuucha diferencia.

Ñuño Martínez 12-10-2011 12:20:09

Cita:

Empezado por mamcx (Mensaje 415184)
Pues he leído sobre el lenguaje, y no le veo ninguna gracia.

No tiene una sintaxis mejor en ningún aspecto importante
No tiene un paradigma que realmente mejore algo a javascript
No tiene un caso de uso en donde sea CLARAMENTE superior.

Por ejemplo, node.js tiene como cosa importante que hace facil hacer codigo asincronico. Por eso solo, es popular.

Ruby es mágico. Python es simple.Erlang hace multiprocesamiento como decir "hola mundo". Haskell tiene un sistema de tipado poderoso. Lisp hace de todo, si sobrevives a su aprendizaje. C es acceso bajo. Delphi tiene una mejor interface con el API windows. Etc...

Hay un caso de uso de cada lenguaje, donde es claramente superior y/o diferente a los demas, que lo justifica.

Lo has clavado. Es como C#, que por lo (poco) que sé no es ni más ni menos que Java, solo que le han cambiado el nombre a algunas palabras clave y a las bibliotecas de clases: funcionalmente (y casi siempre sintácticamente) me parece idéntico a Java.
Cita:

Empezado por Casimiro Notevi (Mensaje 415305)
Bueno, no es lo mismo C que C++, realmente hay muuuuucha diferencia.

Cierto. A mi, al igual que varios de vosotros, C me gusta pero aborrezco C++. Cuando quiero programar con objetos usando C, o uso C o uso Objective C.

Algún día tendré que escribir un artículo para enseñaros cómo hacer clases con herencia, métodos y elementos privados en C puro y duro.

roman 12-10-2011 17:13:38

Cita:

Empezado por Ñuño Martínez (Mensaje 415336)
Algún día tendré que escribir un artículo para enseñaros cómo hacer clases con herencia, métodos y elementos privados en C puro y duro.

A ver, y ¿por qué no nos das una idea por adelantado? Suena interesante.

// Saludos

Julián 12-10-2011 17:55:21

Cita:

Empezado por Julián (Mensaje 415299)
Se puede escribir tan horriblemente con delphi como con c. Y se puede escribir muy bien tanto con uno como con otro.

Nunca entederé a quienes sostienen que tal o cual lenguaje es horrible porque use {llaves} en lugar de "begin" y "end". Que me digan (yo mismo lo digo) que java es lento porque es interpretado o porque produce aplicaciones muy feas pues vale, pero no entendería que es horrible por usar {llaves}.

Cita:

Empezado por mamcx (Mensaje 415301)
No se puede. Prueba definitiva?

Bsucar en google:

delphi obfuscate code
c obfuscate code
perl obfuscate code

Veran que no hay ejemplos de codigo obscurecido a mano en delphi, en cambio hay hasta TUTORIALES para hacerlo en c & perl.


Sí, de acuerdo, pero yo no me refería a escribir código ofuscado u obscurecido, cosa que se suele hacer intencionadamente. Me refería a escrir mal código, código horrible. Código dificil de entender, dificil mantener. O imposible. O sea, la clase de código que resulta de la falta de conocimientos, de la incompetencia, de las prisas, de la desidia, de la ausencia de planificación o de analisis. Seguro que todos nos hemos encontrado alguna vez con un código fuente de esos que lo miras y te dan ganas de buscar al autor para denunciarlo o matarlo.

No me acuerdo quien dijo que cualquier mal programador es capáz de escribir código que las maquinas entiendan, pero que sólo un buén programador puede escribir código que entiendan las personas.

Y en delphi he visto mucho código malo, malisimo. A eso me refería, no a la ofuscación.

Un saludo!

mamcx 12-10-2011 18:54:15

Ok Julian, es claro que se puede escribir código como mencionas en lo que sea, pero tambien lo es en mi opinion que hay lenguajes en donde es natural escribir "mal" porque la sintaxis, porque hace parte intrinseca del mismo. La legibilidad del codigo tambien es un atributo del diseño del lenguaje.

Se puede ir en contra o a favor, pero el punto es que requiere esfuerzo semi-conciente del humano hacerlo.

Si debe esforzarse por hacerlo legible, entonces es contra.
Si no debe esforzarse por hacerlo ilegible, tambien es contra.

Una observacion que muchos hemos tenido sobre los lenguajes derivados del C (y el C mismo... los ejemplos de arriba eran en C, no C++) es que por ser optimizados para ahorrar caracteres, atentan de forma intrinseca y fundamental contra la legibilidad del codigo. Que es otra manera de decir que cuestan tiempo, y dinero perdido, a los desarrolladores y empresas, y que perjudican la calidad de los sistemas creados. Un ambiente de pensamiento hostil, donde es natural hacer cosas complicadas, entrena mentes en seguir esa linea de pensamiento. Es un efecto que se nota mucho en muchos programadores: El lenguaje afecta la forma de pensar y atacar los problemas.

Pero afortunadamente, dan para discutir muy bueno!

roman 12-10-2011 20:05:56

Cita:

Empezado por mamcx (Mensaje 415370)
Una observacion que muchos hemos tenido sobre los lenguajes derivados del C [...] es que por ser optimizados para ahorrar caracteres, atentan de forma intrinseca y fundamental contra la legibilidad del codigo. Que es otra manera de decir que cuestan tiempo, y dinero perdido, a los desarrolladores y empresas, y que perjudican la calidad de los sistemas creados. Un ambiente de pensamiento hostil, donde es natural hacer cosas complicadas, entrena mentes en seguir esa linea de pensamiento. Es un efecto que se nota mucho en muchos programadores: El lenguaje afecta la forma de pensar y atacar los problemas.

Sinceramente creo que es una opinión muy exagerada, y que nos pone a los humanos como seres poco aptos para trabajar con la abstracción.

Como comenté en alguna ocasión anterior, haciendo un paralelismo, las matemáticas son una disciplina en la que el uso de símbolos es fundamental. Desde luego que quien no está entrenado para ello, le será difícil leer un texto matemático. Pero eso no es impedimento para que se trabaje con la simbología correctamente, leida por ojos humanos (las matemáticas no están hechas para ser leidas por una máquina) y la productividad no está peleada con la simbología, es más, sería impensable actualmente, hacer matemáticas con lenguaje natural.

Lo mismo sucede con los lenguajes de programación. Pretender que el uso de llaves en lugar de begin-end atenta contra la productividad es simplemente decir: no me gustan las llaves y entonces argumento esto, opinión, desde luego que es válida, pero no por las razones esgrimidas.

// Saludos

ecfisa 12-10-2011 20:16:45

Cita:

Empezado por Ñuño Martínez (Mensaje 415336)
Algún día tendré que escribir un artículo para enseñaros cómo hacer clases con herencia, métodos y elementos privados en C puro y duro.

Hola Ñuño.

Por favor no dejes de hacerlo, ya estoy muy interesado con la sola idea de leerlo.

Un saludo. :)

Delphius 12-10-2011 21:03:43

¿Otra vez la burra al trigo? Yo la dije dos veces:
Post 1
Post 2

Por momentos pienso que cada vez que se crea un nuevo lenguaje C-style es para intentar tirarle bronca a los Pascal-style. Para mi es que están tan celosos que no logran superar el hecho de que Delphi sigue siendo elegido como el mejor lenguaje de programación por Code Project.

Saludos,

Casimiro Notevi 12-10-2011 21:29:28

Cita:

Empezado por Delphius (Mensaje 415388)
Por momentos pienso que cada vez que se crea un nuevo lenguaje C-style es para intentar tirarle bronca a los Pascal-style. Para mi es que están tan celosos que no logran superar el hecho de que Delphi sigue siendo elegido como el mejor lenguaje de programación por Code Project.

je, je... los de google van a cambiar a pascal y están buscando buenos programadores, se rumorea que todos los días visitan clubdelphi y páginas similares, así que no os extrañéis si os llega un email de google para una entrevista.
A mí no me llamarán porque sólo sé teclear el enlace de la guía de estilo :D

Crandel 12-10-2011 21:52:37

Cita:

Empezado por Casimiro Notevi (Mensaje 415392)
je, je... los de google van a cambiar a pascal y están buscando buenos programadores, se rumorea que todos los días visitan clubdelphi y páginas similares, así que no os extrañeéis si os llega un email de google para una entrevista.
A mí no me llamarán porque sólo sé teclear el enlace de la guía de estilo :D

Existen páginas similares a ClubDelphi ???

Al González 13-10-2011 01:51:29

Cita:

Empezado por Crandel (Mensaje 415398)
Existen páginas similares a ClubDelphi ???

Esta, según se comenta. :)

Julián 13-10-2011 19:43:47

Cita:

Empezado por mamcx (Mensaje 415370)
Ok Julian, es claro que se puede escribir código como mencionas en lo que sea, pero tambien lo es en mi opinion que hay lenguajes en donde es natural escribir "mal" porque la sintaxis, porque hace parte intrinseca del mismo. La legibilidad del codigo tambien es un atributo del diseño del lenguaje.

Bueno, puedo estar de acuerdo, y lo estoy, claro, en que hay lenguajes cuya sintaxis es mas críptica o retorcida que otros. Y tambien puedo estar de acuerdo, y lo estoy, en que hay lenguajes que se prestan mas fácilmente que otros a producir mal código. Cosa que has argumentado tu mismo numerosas veces y muy brillantemente.
Pero para eso se precisa de la incompetecia del que lo escribe, pues el que escribe buen código lo escribe bién sea cual sea el lenguaje que use.

Cualquiera puede escribir un churro mal indentado, con nombres de variables en aleman o en chino, con una estrctura de directorios y archivos penosa, llena de dependencias, sin prefijos, ni sufijos, o sin control de errores. En cualquier lenguaje se puede usar un if o un for cuando no se debe, y cienmil cosas mas.

Opino lo mismo que roman, lo mismo dá usar llaves que begin y ends. Lo importante es hacerlo como es debido. Si acaso lo que no me gusta de lenguajes como PHP es el tipado. Eso de que puedas usar una variable sin declararla me parece toda una falta de educación y de deportividad.


Cita:

Empezado por mamcx (Mensaje 415370)
Pero afortunadamente, dan para discutir muy bueno!

Si señor. Nada hay mas saludable para el cerebro que una discusión, pues ademas de mantener y aumentar la actividad de las conexiones neuronales sirve para aprender, para confrontar opiniones, para ver las cosas desde otros puntos de vista. La capacidad de cambiar de opinión es la capacidad de mejorar.

Un saludo!


La franja horaria es GMT +2. Ahora son las 14:26:48.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi