Diferencias entre C ++ / Visual Basic y Java a nivel general (para principiantes y estudiantes)

C ++ y Java son algunos de los lenguajes de programación muy populares. Se pueden comparar con gran detalle, comparando velocidad, mecanografía, compiladores, etc., pero para un lego promedio es demasiado, y será mucho más fácil considerar sus diferencias en un nivel general y básico, de modo que incluso una persona que esté lejos de programar y pueda sacar conclusiones por sí mismo solo mirando esta área. Ya en esta etapa, podemos concluir qué lenguaje de qué paradigma le conviene. Y sí, la situación de tal elección es bastante real, por ejemplo, para estudiantes con fines educativos.

Para hacer esto, intentaré considerar brevemente las principales construcciones de los lenguajes de programación, a saber:

expresiones: matemática, lógica, cadena;
operadores: declaración compuesta, declaración de asignación, declaración IF condicional, bucles FOR y WHILE, declaración GOTO y otros;
subprogramas: procedimientos y funciones;
tipos de datos: tipos básicos, estructuras, clases, interfaces y plantillas.

(Este artículo no es una traducción, pero mi análisis personal de la información recopilada)

Expresiones


Java


Expresiones matematicas


Una expresión matemática es una expresión que da como resultado un número. Incluyen variables, funciones y constantes.

Los operadores aritméticos en Java le permiten realizar operaciones matemáticas estándar de suma, resta, multiplicación, etc. También en el lenguaje hay operadores de decremento e incremento (aumenta o disminuye el valor en uno).

Expresiones lógicas


Una expresión lógica es una descripción de una expresión que da como resultado verdadero (verdadero) o falso (falso). Los operadores lógicos solo funcionan con operandos de tipo booleano.
Todos los operadores lógicos con dos operandos combinan dos valores lógicos para formar el valor lógico resultante.

Java admite más de diez declaraciones: AND (lógico y abreviado), OR (lógico y abreviado), XOR, NOT, etc.

Expresiones de cadena


Expresión de cadena: manipulación de cadena. Parece una expresión matemática, pero el resultado es una nueva línea.

El lenguaje Java le permite sumar, restar, dividir y concatenar cadenas. Una característica distintiva de Java es la presencia de la clase String, que se proporciona específicamente para trabajar con cadenas.

C ++ / Visual Basic


Expresiones matematicas


C ++ y Visual Basic también incluyen operadores aritméticos, operadores de decremento e incremento, y la sintaxis de expresión matemática también admite corchetes y menos unario.

Al igual que en el lenguaje Java, tienen operaciones más complejas disponibles como funciones integradas, por ejemplo, la raíz cuadrada sqrt (x) y el exponente exp (x).

Expresiones lógicas


Visual Basic usa seis operadores: además de AND, OR, NOT, XOR, también se usan operadores de equivalencia e implicación.

En C ++, usan tres operadores lógicos: AND, NOT y OR. En todos los idiomas considerados, algunos de los operadores se pueden usar para varios operandos a la vez.

Expresiones de cadena


A diferencia de Java, en C ++ no hay soporte incorporado para un objeto como una cadena, y si es necesario, trabajar con cadenas (suma, resta, etc.) incluye la cadena del archivo de encabezado.

En Visual Basic, debido a la importancia de trabajar con cadenas, se admite el tipo de datos de cadena, que representa una secuencia de caracteres. Una variable de este tipo puede tomar cualquier expresión que dé como resultado una cadena.

Operadores


Java


Todos los idiomas en cuestión son similares porque admiten operadores de bucle (FOR, WHILE), el operador de condición IF, sin embargo, su diferencia significativa es que en Java no hay un operador de transición de goto como tal: las palabras clave const y goto se guardan, Sin embargo, no se utilizan.

C ++ / Visual Basic


C ++ y Visual Basic, desarrollado mucho antes que Java, tienen un operador de transición de goto, pero el uso de este operador generalmente no es deseable.

Procedimientos y funciones


Java


Un subprograma es un grupo de operadores de lenguaje con nombre, lógicamente completo, al que se puede llamar para ejecutar cualquier número de veces desde varios lugares del programa. Las funciones devuelven un valor al programa principal; los procedimientos no regresan.
En Java no hay procedimientos ni funciones, ambas entidades se denominan métodos, pero también pueden devolver o no devolver valores, pueden llamarse con o sin parámetros.

C ++ / Visual Basic


En C ++, las rutinas se implementan como funciones. Un programa C ++ consta de una o más funciones que deben describirse antes de usarlas.
Los programas de Visual Basic también consisten en varias rutinas que se dividen en procedimientos y funciones.

Tipos de datos


Java


En Java, para todos los tipos numéricos básicos, ciertas convenciones se usan independientemente, lo que es independiente de la implementación particular del entorno, lo que garantiza resultados reproducibles en una amplia gama de plataformas. Además, Java no tiene construcciones de estructura y unión, todo esto se combina en el concepto de clases.

Además, Java no admite punteros (los llamados "enlaces" juegan su papel en Java), plantillas, sobrecarga de operadores, estructuras, etc.

C ++ / Visual Basic


C ++ heredó de C todos los tipos de datos habituales de este último. Estos tipos se utilizan para representar números enteros y números reales de varios tamaños y precisión. Desafortunadamente, el alcance real y la precisión de estos tipos varía según la implementación particular del traductor.

Debido a la dependencia del traductor en diferentes plataformas, el comportamiento de C ++ y el código de Visual Basic puede cambiar. C ++ está tratando de proporcionar al programador la capacidad de encapsular datos declarando estructuras (estructura) y polimorfismo utilizando uniones (unión). Estos dos diseños cubren limitaciones críticas y catastróficas específicas de la máquina en cuanto a tamaño y alineación.

C ++ y Visual Basic admiten punteros y aritmética de punteros, sobrecarga de operadores, etc.

Resumen


El lenguaje Java se desarrolló bajo la influencia de los lenguajes que existían antes, incluido Visual Basic y especialmente C ++, lo que significa que un cierto número de construcciones de estos lenguajes coinciden, sin embargo, muchos defectos de C ++ se solucionaron en Java, lo que afectó el rendimiento y los resultados del programa. , y también se tomaron medidas para "simplificar" el lenguaje en comparación con C ++, lo que implica una diferencia significativa entre Java y C ++. A pesar de tener construcciones similares, Java es muy diferente de C ++ y Visual Basic.

PD: Por si acaso, mencionaré que no me propuse dar consejos sobre cómo elegir un idioma para estudiar o el mejor idioma entre los considerados, sino que solo proporciono comida para razonar. Y, por cierto, ¿cómo elegiste tu primer lenguaje de programación, qué fue importante para ti en primer lugar? ¿O estaba "obligado" a escribir sobre algo específico en una universidad?

Source: https://habr.com/ru/post/480112/


All Articles