El hoy es uno de esos d�as. Estoy dise�ando un nuevo software y en un humor reflexivo. Yo realizaron cu�ntos de nuestros armazones populares y el software est�n los dise�os simplemente est�pidos sin las preocupaciones por utilidad y la est�tica. Los patrones se siguen oculto. Dondequiera usted lee las propagandas sobre un software/un marco que tienen x o patr�n de y que usted debe saber que le dirigen hacia apuro.

Algunos palabras de moda populares son hoy COI (inyecci�n) de la dependencia, MVC, MVC2 etc. preguntan muchos a esos mismos dise�adores que codicioso el incoroporate tales patrones sobre uso encajona cuando esos patrones no deben ser utilizados y usted conseguir� una mirada fija en blanco casi cada vez o una contestaci�n concisa que no haya ninguno.

Soy preguntando a mis posibles empleados cuando MVC no debe ser utilizado y todav�a no he conseguido una contestaci�n decente. �Puede usted?

Le�a sobre este nuevo marco maravilloso llamado Stripes. Tengo gusto de �l. Sin embargo le requiere tener compradores y organismos malvados. Como se hace la gente no realiza que los compradores y los organismos son malos. Como se hace la gente no realiza que ella no est� realmente orientada al objeto. De hecho tener compradores y organismos indica sobre todo un problema del dise�o.

Como se hace la gente no realiza el dise�o no est� sobre patrones o palabras de moda. Es siempre una compensaci�n entre las posibilidades. Solamente un buen dise�ador sabe balancear las consecuencias y tomar una decisi�n apropiada, v�lida para cierta duraci�n.

Consegu�a impaciente por el minuto en que funcion� alrededor de un viejo art�culo de Alan Holub (puede �l vive a la edad avanzada madura y con salud completa). �l ha hablado exactamente sobre las ediciones que estoy hablando y la ha expresado mejor que podr�a. D�jeme cotizarlo.

Dise�e, por la naturaleza, es una serie de compensaciones. Cada opci�n tiene un buen y mán lado, y usted toma su decisi�n en el contexto de los criterios totales definidos por necesidad. Buenos y malo no son los absolutos, sin embargo. Una buena decisi�n en un contexto pudo ser mala en otro.

Si usted no entiende ambos lados de una edici�n, usted no puede tomar una decisi�n inteligente; de hecho, si usted no entiende todas las ramificaciones de sus acciones, usted no est� dise�ando en absoluto. Usted est� tropezando en la obscuridad. No es un accidente que cada cap�tulo en la cuadrilla de libro de cuatro patrones del dise�o incluye una secci�n de las consecuencias que describa cuando y porqu� usar un patr�n es inadecuado.

La declaraci�n de que cierta caracter�stica de lengua o idioma programado com�n (como accessors) tiene problemas no es la misma cosa que decirle debe nunca utilizarlos bajo cualquier circunstancia. Y apenas porque una caracter�stica o un idioma es de uso general no significa que usted debe utilizarlo cualquiera. Los programadores mal informados escriben muchos programas y simplemente siendo empleado por Sun Microsystems o Microsoft no mejora m�gico alguien que programa ni dise�a capacidades. Los paquetes de Java contienen mucho gran c�digo. Pero hay tambi�n partes de ese c�digo que estoy seguro desconciertan a los autores para admitir que escribieron.

De la misma manera, la comercializaci�n o los incentivos pol�ticos empuja a menudo idiomas del dise�o. Los programadores toman a veces malas decisiones, pero las compa��as quieren promover lo que puede hacer la tecnolog�a, as� que �l de-emphasize que es la manera de la cual usted hace �l menos que ideal. �l hace el mejor de una mala situaci�n. Por lo tanto, usted act�a irresponsable cuando usted adopta cualquier pr�ctica programada simplemente porque que sea la manera que le suponen hacer cosas. Muchos proyectos fallados de JavaBeans de la empresa (EJB) prueban este principio. la tecnolog�a EJB-basada es gran tecnolog�a cuando est� utilizada apropiadamente, pero puede derribar literalmente a una compa��a si est� utilizada inadecuado.

Mi punto es que usted no debe programar oculto. Usted debe entender que el estrago una caracter�stica o un idioma puede dar rienda suelta. Al hacer eso, usted est� en una posici�n mucho mejor para decidir si usted debe utilizar esa caracter�stica o idioma. Sus opciones deben ser informadas y pragm�ticas.

Convengo con �l 110%.

Ahora que est� de mi pecho, d�jeme vuelven al dise�o.