Red de conocimiento informático - Computadora portátil - Clasificación del contenido de trabajo para C++, JAVA, C# y .NET

Clasificación del contenido de trabajo para C++, JAVA, C# y .NET

Desde la perspectiva del lenguaje, C++ también es perfecto. Simplemente hace que los principiantes se sientan un poco complicados y también cuida demasiado la compatibilidad con C. Incluso desde la función del lenguaje en sí, creo que C++. Actualmente es el más potente y Object Pascal también es inferior. Sin embargo, la desventaja de C++ es que proporciona demasiadas posibilidades, lo que dificulta la creación de una biblioteca de clases normal como Java. Además, C++ no tiene código orientado a la reutilización. Características de la estrategia de diseño de Java "unidad de compilación". Creo que C ++ puede absorber la experiencia de Java para lograr tanto reutilización como alto rendimiento y adaptabilidad.

JAVA es fácil de desarrollar y C tiene un alto rendimiento. Cada uno tiene sus propias fortalezas, pero escuché que una vez que se perfecciona JAVA, en teoría puede alcanzar o superar el rendimiento de C, pero yo no. sé cuándo llegará este día.

Me gradué en 1996, cuando Java recién estaba saliendo y se estaba volviendo muy popular. Era un entusiasta de C++ con 3 años de experiencia en C++. Pensé en Estados Unidos, que está a la vanguardia de la tecnología de TI, así que vine a Silicon Valley, el lugar donde se reúnen las élites de TI, con plena esperanza. Creo que esta vez finalmente puedo usar mis talentos de C++ que he escondido durante muchos años. Sin embargo, VB y Delphi no son nada populares en Silicon Valley. Aunque todavía se usa C ++, no es tan bueno como antes. Sin embargo, es relativamente fácil encontrar un trabajo con experiencia en C ++. Aquí, los programadores, los grandes y pequeños directivos, los cargadores sólo están interesados ​​en Java. Aquí hay una fuerte atmósfera anti-Microsoft, quizás porque aquí se encuentran las sedes de empresas gigantes como Sun, Oracle, IBM y AOL. Después de permanecer allí por un tiempo, descubrí que todas las empresas más grandes aquí mantienen varios sistemas al mismo tiempo. Para resolver estos problemas de una vez por todas y conectar estos sistemas sin problemas, Java es la mejor solución. Aquí, las grandes empresas gigantes están locas por Java casi hasta el punto de poner en peligro sus vidas: IBM trabaja duro las 24 horas del día en 16 laboratorios de Java en todo el mundo, llevando el lema "Java lo es todo", y el dinero invertido en Java es nada menos que el de Sun. Intel está listo y está haciendo todo lo posible para producir chips Java para encontrar un lugar en Java. Los principales fabricantes de bases de datos como Oracle, Sybase, Informix y DB2 incluso han dejado de funcionar, vinculando Java a sus propios productos y brindando el mejor soporte para Java. El soporte más completo y directo; una gran cantidad de proveedores de soporte e integración de sistemas, como Inprise, BEA, Iona y Netscape Alliance, no se quedan atrás y están luchando por desarrollar su propio Java. herramientas y software de servicio de aplicaciones con un solo propósito: llevar sus productos a la "J" rotunda, un gran número de proveedores de equipos de red como CISCO, 3Com, HP, NEC, etc. han mostrado un gran interés en Java integrado, y Han surgido lotes de dispositivos inteligentes con interfaces Java uno tras otro. En este mercado, la competencia es extremadamente feroz y nadie se atreve a descuidarla, sin mencionar que Sun creó Java, pero Java no es exclusivo de Sun. La competencia de los gigantes también ha hecho que Sun sienta una presión sin precedentes. Bajo la política de "defender Java, defender Java y desarrollar Java", hemos llevado a los gigantes a lanzar varias versiones para diferentes campos: Java2 Standard Edition para el campo de PC, Java. 2 Enterprise Edition para informática de nivel empresarial y Java2 para sistemas integrados, Personal Java Edition para terminales inteligentes.

¡Bajo tal tendencia, no tengo más remedio que dejar mi amado C ++! Java es un sistema abierto y todos los fabricantes pueden expandirlo e implementarlo. Para mantener la pureza de todo el mundo Java, han adoptado un método maravilloso, utilizando las características 100% oop de Java, y la definición de la especificación es solo algunas. Interfaces, y la implementación de estas interfaces es completamente responsable de cada fabricante. ¡Qué armoniosa y perfecta! Si no puede comprenderlos, simplemente no podrá comprender el poder de estos nuevos talentos de Java como EJB, Servlet/JSP, JTA, RMI/IIOP, JNDI, JMS, Jini... ni siquiera las empresas un poco más grandes. (excepto Microsoft) están todos equivocados. Ella se inclinó hacia él y estaba dispuesta a aportar un flujo constante de dinero y mano de obra aquí. Esto es solo j2ee. También es la solución empresarial más perfecta en la industria hasta ahora, y mucho menos j2me. Si quieres ser el dispositivo de acceso a Internet de próxima generación, no tienes más opción que j2me. estrechamente relacionado con los sistemas existentes... Debo admitir que en el campo de los sistemas y el software de soporte, C++ sigue siendo el líder, y en el campo de las aplicaciones, ahora es Java. Una solución funcional escrita en C++ solo cuesta menos de 100.000, mientras que una solución fácil de completar en Java puede venderse por millones. Esta es la diferencia de manera similar, si solo usa Java como subprograma, la aplicación se usa en el escritorio; En el medio ambiente, ella es de hecho peor que cualquier otro idioma. Lo que estoy diciendo es que el entorno doméstico nos afecta a cada uno de nosotros. Cuando se celebró Java One 2000 en los Estados Unidos, unas 40.000 empresas se agolparon en el lugar y más de 3.000 expertos y académicos asistieron generosamente a la reunión. , el país todavía no se lo tomó en serio y mantuvo su antiguo negocio, pero los astutos japoneses ya habían reservado decenas de asientos; cuando las grandes empresas competían ferozmente en el campo de Java, el país todavía tenía la visión de VB, Delphi. con C++ en mi almohada.

C++ tiene grandes ventajas en los juegos. Actualmente, se implementan más juegos 3D a gran escala en C++. C es actualmente el lenguaje más eficiente (excepto el lenguaje ensamblador). Y el desarrollo de JAVA es relativamente simple. A menudo se dice que VC (C++) se ejecuta más rápido, porque VC ha sido optimizado para ser casi tan bueno como el ensamblador, por lo que se sospecha que el intérprete javaSDK ha preprocesado el código más corto, por lo que no es necesario llamar al intérprete dentro del bucle de ejecución y se puede ejecutar directamente. El código de máquina se ha explicado, por lo que la velocidad es casi la misma, pero esto es solo una suposición. Quizás probar un programa más grande pueda explicar el problema. Antes, y también es muy ruidoso en CSDN. De hecho, Java es solo un tipo de lenguaje que no representa un compilador. Al ejecutar, el código de bytes se optimiza directamente y se convierte en código de máquina. al mismo tiempo, pero no puede ser más rápido que C++, porque C++ también es un lenguaje, no un compilador. ¿Qué tan eficiente es el compilador principal de C++/java? Hablaremos de ello cuando haya suficientes resultados experimentales para demostrarlo.

Java tiene dos desventajas: inicio lento (JIT requiere una cierta cantidad de tiempo), gran uso de memoria (máquina virtual) y básicamente ninguna otra desventaja. En cuanto a la velocidad de ejecución, desde el nivel inferior, Java y C++ son iguales, porque con JIT, se ejecuta el mismo código de máquina compilado, pero es diferente cuando se sube un poco: primero, la optimización del compilador es diferente; Lo que es más importante es que la implementación de muchos algoritmos varía, como Array (llamado Vector en C ++ STL), Map, etc. De hecho, lo he probado, algunos son rápidos y otros lentos, y C ++ es más complejo El STL introducido. después de VC7 es obviamente mejor que GCC (MinGW) es mucho más rápido. Finalmente, desde la perspectiva del uso real, C ++ se encuentra en una posición muy vergonzosa. Antes me gustaba mucho C ++, pero ahora recurrí a Java porque al desarrollar software de nivel empresarial, solo estás buscando problemas. use C ++ y, a veces, usar C ++ en el nivel inferior también genera problemas (por ejemplo, muchos sistemas integrados tienen un soporte muy incompleto para C ++), C es más versátil, junto con un script Lua simple, un mecanismo de implementación de C y Lua. Estrategia de implementación, ¡es muy conveniente!

Lo he probado y la relación de tiempo de ejecución entre Java y C++ es 266:230. Por supuesto, Java no incluye el tiempo de carga.

Parece que puedo seguir escribiendo en java con tranquilidad. Pero surge una pregunta muy extraña, dado que la velocidad de Java es cercana a la de C++, ¿puede haber tanta gente en Internet usando C++ para cálculos numéricos? Elegí Java por su seguridad. Si la matriz cruza el límite en tiempo de ejecución, se informará un error. Pienso en la molestia de depurar un programa C ++. Lo cambié al código Java equivalente y lo guardé después de ejecutarlo. ha cruzado el límite.

Inicialmente aprendí Java, y luego C++, aunque ambos son lenguajes orientados a objetos (C++ es un lenguaje semi-orientado a objetos), durante el proceso de aprendizaje de C++, C++ fue "casi por completo". ¡La falta de regularidad o sintaxis súper flexible hace que una persona que ha aprendido el lenguaje JAVA antes se sienta muy incómoda! De hecho, Java es algo muy bueno, especialmente con la poderosa biblioteca de clases detrás. Se siente bastante divertido de usar, pero la velocidad es realmente un problema. Afortunadamente, el método de ejecución del lenguaje Java actual ya no es solo el método de ejecución de interpretación. La aparición de la tecnología del compilador justo a tiempo (JITC, compilador justo a tiempo) y la tecnología de compilación de prototipos ha mejorado enormemente la eficiencia operativa de. JAVA. C ++ es extremadamente flexible, pero es puramente un juguete de alta gama o una magia profunda de los Nueve Yang. Si no juegas bien, te obsesionarás con él, como si jugaras con Qimen Dunjia. Bueno, ¡será extremadamente poderoso! Java se desarrolló sobre la base de C++. Es mucho más simple y fácil de usar que C++. Sin embargo, en algunos aspectos, especialmente los genéricos, obviamente no es tan flexible como C++. También es ligeramente inferior a C++ en algunas funciones, como el corte de imágenes y otras tecnologías. JAVA y C++ son lenguajes orientados a objetos. En otras palabras, todos pueden implementar ideas orientadas a objetos (encapsulación, multiplicación, polimorfismo). Y debido a que C ++ es compatible con C para atender a una gran cantidad de usuarios del lenguaje C, solo se convierte en un lenguaje C con clases, lo que afecta más o menos su minuciosidad orientada a objetos. JAVA es un lenguaje completamente orientado a objetos, con una sintaxis más clara, de menor tamaño y más fácil de aprender.

(1) La velocidad de ejecución de JAVA (el mayor obstáculo para JAVA es la velocidad. La velocidad de ejecución de Java, como se explicó, es aproximadamente 20 veces más lenta que la de C). Nada puede impedir que el lenguaje Java se compile. Acababan de surgir algunos compiladores casi en tiempo real que podrían acelerar las cosas significativamente. Por supuesto, hay muchas razones para pensar que habrá compiladores nativos puros para plataformas más populares, pero sin esos compiladores, debe haber algunos problemas que Java no puede resolver debido a limitaciones de velocidad. A muchos desarrolladores de aplicaciones empresariales les gustan mucho las características del lenguaje Java, pero cuando se desarrollan sistemas importantes, la elección entre las características del lenguaje y la eficiencia de ejecución suele ser un dolor de cabeza. En los cálculos críticos, es posible que a los usuarios no les importe cómo se comprimen los datos o cómo se establece la relación de retraso de ejecución, pero otorgan gran importancia a la velocidad de ejecución del programa, lo que hace que los fabricantes prioricen el desarrollo de estrategias de compilación de Java. El método de ejecución del lenguaje Java actual ya no es solo el método de ejecución de interpretación. Muchos fabricantes, incluidos Sun, IBM, han adoptado la tecnología del compilador justo a tiempo (JITC, compilador justo a tiempo). Los proveedores de tecnología Oracle y Netscape, incluida la empresa, están utilizando estas tecnologías para mejorar gradualmente la velocidad de ejecución de Java. Entre ellas, IBM ya ha combinado orgánicamente las características de la máquina virtual Java (JVM, JavaVirtual Machine), el sistema operativo y el hardware. Ha mejorado de manera muy efectiva la velocidad de ejecución de Java.

(2) Todo en JAVA debe colocarse en una clase.

Java es un lenguaje completamente orientado a objetos y ya no admite el método de diseño de procedimientos utilizado en los programas C++. , todas las funciones y variables deben ser parte de la clase. Además de los tipos de datos básicos (como números enteros, caracteres, booleanos, etc.), otros datos son objetos para Java, incluidas las matrices.

Los objetos combinan datos y métodos y los encapsulan en clases para que cada objeto pueda implementar sus propias características y comportamientos. No hay funciones globales ni datos globales en JAVA. Si desea obtener funciones equivalentes a funciones globales, considere colocar métodos estáticos y datos estáticos en una clase. C++ permite definir funciones y variables como globales.

Además, Java ha cancelado cosas como estructuras, uniones y enumeraciones en c/c++. Todo es solo "clase", eliminando problemas innecesarios.

Java es un lenguaje interpretado. Cuando el programa Java se está ejecutando, el cargador de clases carga las clases relevantes desde la ruta de clase y luego la máquina virtual Java lee los bytes del archivo de clase y realiza las operaciones correspondientes. Y C++ Al compilar, el programa se compila en código de máquina local. En términos generales, la velocidad de ejecución de los programas Java es entre 10 y 30 veces más lenta que la de C++. Incluso si se utiliza la compilación justo a tiempo (después de leer los bytes del archivo de clase). se compila en código de máquina local) La tecnología y la velocidad también son mucho más lentas que las de C++.

C++, C# y Java son bastante diferentes. Aunque los tres están orientados a objetos, C++ se centra en los algoritmos, mientras que Java y .Net se centran en la arquitectura. Además, Java tiene soporte de código abierto. Los campos de aplicación de los tres también son diferentes. C ++ se usa principalmente en desarrollo integrado, juegos y sistemas antiguos. Es posible aprender bien cualquiera de los tres idiomas, pero la elección del idioma también incluye la elección de la dirección; En general, C es el lenguaje más importante, o C ++ es una materia obligatoria, Java es una materia optativa para las especialidades y .Net no ha sido nuevo en las escuelas durante mucho tiempo. Un tercer grado o una universidad secundaria pueden enseñar directamente Java o dirigir la empresa. aplicaciones de .Net. Hay cuatro temas que se deben aprender bien: estructuras de datos, algoritmos de uso común, principios de bases de datos y redes, especialmente los dos primeros. C++ puede marcar la diferencia en el hardware, mientras que los otros dos básicamente no se utilizan para hacer esto.

Desde la llegada de Java, sus ventajas únicas han desencadenado una ola de investigación y desarrollo en la industria de TI. Como lenguaje de alto nivel y plataforma informática que es independiente del hardware subyacente y "escribe una vez, ejecuta en cualquier lugar", Java tiene la capacidad inherente de conectar varias plataformas en la red, haciendo realidad el concepto de "la red es la computadora". .

Consejos del fundador del lenguaje C++

El fundador del lenguaje C++, Stan Lippman, asistió a la Conferencia Técnica de Microsoft celebrada en Beijing el 17 de septiembre de 2004 y pronunció un discurso. . Los periodistas de Lipman y Tianji.com discutieron sus puntos de vista sobre el "fenómeno de los programadores chinos de 30 años" y expresaron sus puntos de vista sobre nuevas tecnologías como C ++, NET y orientada a objetos. Dijo que si quieres hacer servicios web, asp, etc., C ++ no será muy adecuado porque este lenguaje no es flexible, es demasiado complicado y no está diseñado para servicios web (servicios web). C# está diseñado para las necesidades de la red. El concepto de .net es que ningún lenguaje puede resolver todos los problemas. No es como Java, que te obliga a utilizar un solo idioma. Si encuentra que otra herramienta es mejor durante el desarrollo, puede elegir otra herramienta. A la gente siempre le gusta enfrentar las cosas entre sí. Si tienes un producto de Microsoft, tienes que tener SUN o Linux, porque a la gente le gusta verlos pelear, incluso si en realidad no ocurre ninguna pelea. C++ es como una navaja sin mango. No puede ser adecuado para todo, al igual que Visual Basic no puede ser adecuado para todos. Hay mucha gente que usa C++ y mucha gente que usa Visual Basic. También necesitamos otros lenguajes. C ++ es difícil, debemos tener lenguajes difíciles, pero al mismo tiempo, los trabajos simples también requieren lenguajes simples para resolver. De hecho, ningún idioma puede ser popular durante 10 años. Para el futuro de C++, creo que seguirá funcionando muy bien.

Si sabe que C ++ es muy poderoso, puede lidiar directamente con la capa inferior y su eficiencia no es inferior a la de C. Es muy poderoso y también está orientado a objetos. Con esta complicada curva de aprendizaje, no digas que no entiendes C++. Muchas empresas increíbles como Microsoft, Google, etc. le preguntarán directamente sobre C++ y algoritmos. Entonces siento que si no puedo aprender bien C++, al menos nunca estaré asociado con estas increíbles empresas. Pero cuando estaba haciendo algo recientemente, de repente descubrí lo que C ++ nos deja. Creo que deberían ser los detalles. Como alguien dijo, las personas que pueden usar Java bastante bien ni siquiera necesitan tener el concepto de pila. ¿Y qué pasa con C++? Sintaxis compleja, semántica enorme y una curva de aprendizaje anormal. Pasé mucho tiempo hojeando el manual de C ++, y cuanto más lo miraba, más sentía que no era bueno en eso. No se puede utilizar, es bastante frustrante.

Hace un tiempo, ni siquiera podía entender si int i; (compárese con int i=10) es una definición o una declaración. Con una curva de aprendizaje tan grande, me gustaría preguntar: ¿para qué utilizan C++ sus empresas ahora?

Hermano arriba, usar C ++ no significa que deba comprender todos los puntos de conocimiento de C ++. Puede ignorar por completo las partes complejas y oscuras de C ++, como las plantillas (no es necesario ser competente). pero debes tener ciertos conceptos básicos), metaprogramación (no entiendo el concepto específico de esto, lástima. Solo usar las partes de C ++ que entiendes es suficiente para que escribas un software excelente). 5W líneas de código C ++ y ocasionalmente mantienen una línea de 25 W de código C ++. En esos códigos, no se utilizan conceptos demasiado complejos. Por ejemplo, en esos programas, STL solo usa vectores. Y la gestión de la memoria también utiliza punteros nativos directamente, sin utilizar punteros inteligentes, etc. Esos dos programas se utilizan en software de telecomunicaciones básico y requieren alta confiabilidad y rendimiento. Por lo tanto, de hecho, C++ debe verse objetivamente. Es realmente difícil y tiene demasiados conceptos. Sin embargo, no te obliga a comprender todos los puntos de conocimiento de C++ antes de que puedas trabajar con lo que entiendes. primero. .

Las perspectivas de desarrollo de C#

Si dejamos de lado todos los factores no técnicos, C# es sin duda el mejor lenguaje de programación que existe en este planeta. Concentra casi todo lo relacionado con el desarrollo de software y. los últimos resultados en la investigación de ingeniería de software. Orientado a objetos, seguridad de tipos, tecnología de componentes, gestión automática de memoria, manejo de excepciones multiplataforma, control de versiones, gestión de seguridad de código... No puedes encontrar todas estas características en otro idioma. De hecho, el verdadero señor entre los lenguajes de programación ha sido C++ durante muchos años. Todos los sistemas operativos y la mayoría del software comercial utilizan C++ como principal lenguaje de desarrollo. La gran mayoría de los programadores de JAVA también son entusiastas de C++, y el éxito de PHP también se debe a una sintaxis similar a la de C++. En los campos de los sistemas operativos, controladores de dispositivos, videojuegos, etc., C++ seguirá ocupando una posición dominante durante mucho tiempo, y en el desarrollo de la mayor cantidad de software de aplicaciones, es probable que C# reemplace a C++. En primer lugar, C#, al igual que JAVA, simplemente copia parte de la sintaxis de C++. Por lo tanto, es fácil para una gran cantidad de programadores de C++ aprender y comenzar. Además, es más simple que C++ para principiantes. En segundo lugar, Windows es actualmente la plataforma monopolista y, por supuesto, al desarrollar aplicaciones para Windows, no se puede ignorar la voz de Microsoft. Lo más importante es que, en comparación con C++, usar C# para desarrollar software de aplicaciones puede acortar en gran medida el ciclo de desarrollo y, al mismo tiempo, puede usar el código C++ original excepto el código de la interfaz de usuario.

Sin embargo, C# también tiene debilidades. En primer lugar, los programas C# aún no pueden ejecutarse en una gran cantidad de plataformas Windows existentes, porque los programas C# requieren la biblioteca de tiempo de ejecución .NET como base, y la biblioteca de tiempo de ejecución .NET se lanzará como parte de la nueva generación de Windows (Whistler ), o como Service Pack entregado a los usuarios de Windows Me y Windows 2000. Por lo tanto, en un futuro próximo, C# se utilizará principalmente en el servidor. En segundo lugar, solo hay unos pocos componentes o bibliotecas que C# puede utilizar, como la biblioteca de tiempo de ejecución .NET, y no hay bibliotecas de software ricas de terceros disponibles. Esto requiere un proceso y el soporte de varios desarrolladores de software. también muy importante. En tercer lugar, algunos de los factores de éxito de JAVA son promocionados por el campo anti-Microsoft. Aunque "escribir una vez, ejecutar en cualquier lugar" es sólo un eslogan, después de todo ya es una tecnología madura. En la actualidad, el único defensor de C# es Microsoft, que tiene mala reputación y sólo puede ejecutarse en Windows. De hecho, estos dos lenguajes no son insustituibles. Desde un punto de vista racional, para los desarrolladores de software, cualquier cosa con la que estén más familiarizados es la mejor herramienta. Especialmente para los usuarios de C++, C# no aporta nada nuevo, porque la biblioteca de tiempo de ejecución .NET también se puede usar en C++ y no hay ninguna razón absoluta para cambiar.

En resumen, personalmente creo que en los últimos años, C# inevitablemente ascenderá y se convertirá en el protagonista de la plataforma Windows, mientras que JAVA se convertirá en el actor dominante en UNIX, Linux y otras plataformas, y C++ se convertirá en el actor dominante en UNIX, Linux y otras plataformas. Continúe dominando. Esfuércese por desarrollar sus habilidades en el campo del software de sistemas.

Lo que es muy interesante es que la sintaxis de estos lenguajes es extremadamente parecida, porque tanto JAVA como C# se desarrollaron a partir de C++. Por supuesto, otras herramientas de desarrollo continuarán su camino durante mucho tiempo, pero inevitablemente se verán afectadas en términos de cuota de mercado.

Las perspectivas de desarrollo de .NET y JAVA.

En términos de eficiencia de desarrollo: Para nosotros, este factor es el más importante a medir a la hora de elegir herramientas de desarrollo. J2EE es muy deficiente en este aspecto, a diferencia de .Net que tiene un muy buen .Net Studio. pero Jbuilder 6 ya salió y no es demasiado atrasado para admitir EJB2.0, pero lo que no se ha resuelto es el control del usuario de la página, la falta de diseño visual y la generación del marco de aplicación Servlet. Una forma que espero es tener una plantilla de edición WYSIWYG (Plantilla) como .Net Studio y vincular el manejo de eventos del botón de usuario. Actualmente, el desarrollo de servlets se puede facilitar ligeramente mediante bibliotecas de JavaScript, bibliotecas de plantillas y bibliotecas de macros. Tanto ASP.Net como Servlet admiten la actualización dinámica de la capa de presentación.

Capacidad de soporte XML: .Net ha estado clamando por su integración de XML y servicios web, pero JDK1.4 también ha desarrollado especificaciones XML, que son casi las mismas, pero .Net es fácil de usar. Genial, y para este, los programadores no tienen que preocuparse por seleccionar componentes o productos.

Comprenda la esencia de los dos: Java es una plataforma entre sistemas vinculada a un lenguaje. Es una especificación con múltiples proveedores que ofrecen productos competitivos. .net es una plataforma multilingüe vinculada a un sistema y es un producto monopolista con regulaciones débiles. Pregúntele a cualquier programador Java inteligente cuál es el mayor beneficio de Java y le dirá sin dudarlo: "Simplicidad". Java nació para Internet y también vive por su concepto de "fácil de usar y mejorar la productividad".

Desde la perspectiva del usuario: Java es adecuado para sistemas grandes, medianos y pequeños, siempre que se combine con diferentes sistemas operativos, servidores de aplicaciones, etc., desde sistemas integrales de información bancaria hasta sistemas de aplicaciones unificados. En todo el país y las provincias, tan pequeños como los juegos móviles, Java puede aprovechar todos los tamaños y aceptar a todos los interesados. Especialmente los sistemas importantes del gobierno chino, ninguno de ellos tiene presencia .net. ¿Por qué? Si no me muestras tu propiedad ¿cómo sabré si has dejado una puerta trasera para colarte en mi casa otro día? .net puede manejar aplicaciones pequeñas y medianas sin ningún problema y la velocidad de desarrollo es rápida. Como usuario, podrá ver el rendimiento rápidamente después de pagar y, por supuesto, estará satisfecho. No sé si .net realmente no puede admitir aplicaciones a gran escala, pero los comentarios como que Windows es inestable e inseguro han existido durante mucho tiempo. .net se basa en estos parientes, y las cosas malas no pueden. separarse de ella. Los usuarios estarán satisfechos si el sistema se entrega temprano, se realizan sus funciones, su funcionamiento es estable y su seguridad es impecable. Ya sea que abarque sistemas operativos o no, esta consideración no es importante. ¿Cómo puede haber un usuario que no tiene nada que hacer y cambia de sistema operativo todo el día?

Desde la perspectiva del desarrollador: la multiplataforma es una gran tentación para los desarrolladores. Desarrolle una vez y utilícelo en múltiples plataformas, lo que reduce los costos de migración y es beneficioso. Sin embargo, las herramientas de desarrollo de Java no son tan convenientes como .net y los requisitos para los codificadores son mayores que los de .net.

Desde la perspectiva de los profesionales: los profesionales son impulsados ​​por el mercado y, a su vez, guían el mercado. El proceso de introducción a Java es relativamente largo. Los desarrolladores de Java tienen que hacer mucho trabajo de bricolaje antes de poder escribir su primer programa decente. Con más bricolaje, la calidad básica de la industria seguramente mejorará. Es fácil comenzar con .net, y el mayor beneficio de Windows, la “visualización”, continúa en .net, con un buen entorno de integración y una sólida depuración en un solo paso. Esto es algo que todos en el equipo de Java, desde los programadores hasta el proyecto. directivos, siempre ha envidiado. Al estar acostumbrado al desarrollo en Windows y .net, es inevitable que el desarrollo y la depuración en Java sean bastante primitivos: la mayoría de los códigos deben escribirse línea por línea y la depuración en un solo paso a menudo es imposible. La eficiencia del desarrollo de .net es casi tres veces mayor que la de Java (datos empíricos), una tentación fatal. En el programa cliente al que Java abandonó, .net es el jefe, pero en el lado del servidor, .net sigue siendo un hermano pequeño y necesita crecer. Microsoft originalmente quería desarrollar una nueva tecnología en respuesta a J2EE, pero descubrió que no podía hacerlo solo.

Qué .NET o Java tiene más futuro en China: Esta cuestión parece ya no ser un tema de debate. El 90% de los usuarios en China son usuarios de Windows, lo que protege las inversiones existentes y facilita su uso. sin tener que reutilizarlo, no necesito aprendizaje multiplataforma, entonces, ¿por qué debería cambiar a Java? En el pasado, Microsoft no proporcionaba una solución de desarrollo WEB muy potente, pero ahora sí. ¿Java? Además, Net se lanzó más tarde que Java, por lo que definitivamente será absorbido. Las ventajas de Java compensan las deficiencias de Java. Y la máquina virtual de Microsoft debe estar bien integrada con Windows, por lo que no hay necesidad de preocuparse por el rendimiento. ¿Por qué debería usar Java? Y Microsoft obviamente ha puesto su tesoro en .NET. ¿Aún quieres usar .NET agregando una capa de VM Java a la VM?

Algunas personas también han llegado a esta conclusión. No sé si es exacto o no: C ++ es más adecuado para el desarrollo subyacente a nivel del sistema, incluidos los algoritmos y el control de procesos del juego. El soporte multiplataforma de C ++ utiliza compiladores de diferentes plataformas para admitir los mismos estándares de código en todas las plataformas. El trasplante de plataforma requiere una recompilación, y el soporte de cada compilador para los estándares internacionales es más o menos imperfecto.

JAVA es adecuado para el desarrollo de aplicaciones y se utiliza ampliamente en la gestión empresarial, redes, bases de datos, Internet y dispositivos portátiles. JAVA tiene soporte para máquinas virtuales y es verdaderamente multiplataforma.

Multiplataforma: JAVA se ejecuta en múltiples plataformas al mismo tiempo, C++ se puede diseñar en múltiples plataformas y C# solo está disponible en Windows.

Ámbito de aplicación: JAVA tiene una amplia gama, especialmente para el desarrollo de software empresarial a gran escala; C ++ se utiliza para el desarrollo de software del sistema subyacente, generalmente para pequeñas y medianas empresas.

Eficiencia y velocidad: C++ es lo mejor, controla verdaderamente la máquina.

Nivel fácil: JAVA, C# es más fácil, pero C++ es demasiado difícil.