Anda di halaman 1dari 5

INSTITUTO TECNOLOGICO DE MORELIA

FUNDAMENTOS DE PROGRAMACION

INVESTIGACION Y COMPARATIVOS ENTRE LENGUAJES DE
PROGRAMACIN: C, C++ Y SWIFT

PROF: L.I ABEL ALBERTO PINTOR ESTRADA

ALUMNO: JOSE GUADALUPE ROQUE SANCHEZ

CARRERA: ITICS









Introduccin
El objetivo de la siguiente investigacin es conocer las principales caractersticas de tres
lenguajes de programacin, el lenguaje C, C++, y el reciente Swift, a pesar de que cada uno
de ellos tiene sus particularidades, tambin notaremos que poseen algunos rasgos en comn.
Con el fin de hacer la informacin ms digerible, las expresar mediante un cuadro
comparativo, dando antes una breve resea de cada lenguaje, as como ciertas generalidades
que comparten entre ellos.
Lenguaje C
Es desarrollado en 1972 por Dennis Ritchie, como un sucesor del lenguaje B, est orientado a
la implementacin en Sistemas Operativos, es un lenguaje estructurado y multiplataforma,
puede acceder a memoria de bajo nivel por lo que es el ms popular al momento de
desarrollar software de sistema. Maneja funciones matemticas y de manejo de archivos
mediante sus bibliotecas.
Lenguaje C++
Es un lenguaje diseado alrededor de 1983 por Bjarne Stroustrup, siendo su principal
intencin extender el lenguaje C, de manera que permitiera la manipulacin de objetos, por
lo que se le pudiese considerar como un lenguaje hbrido.
Lenguaje Swift
Es el ms reciente de la investigacin, fue presentado el 2 de Junio de 2014, por Apple con un
compilador de Mquina Virtual de Bajo Nivel (LLVM) por sus siglas en ingls, destinado
principalmente al desarrollo de aplicaciones mviles en plataforma IOS (coexistiendo con
Objetive C), es un lenguaje con inferencia de tipos (asigna un tipo de datos a una funcin sin
necesidad de que el desarrollador lo especifique) y bastante interactivo con el usuario,
adems de presumir de una rapidez comparado con Objetive C.

Generalidades
Como sabemos, existen varias generalidades en un lenguaje de programacin, tales como el
manejo de distintos tipos de datos, y la capacidad de realizar operaciones con ellos; una
caracterstica de todo lenguaje es la prioridad de operadores que manejan (aritmticos,
lgicos, de orden etc.), sin embargo, hay casos en los que en una misma expresin es
necesario utilizar varios tipos de operadores con una misma prioridad (asociatividad), y por lo
tanto se realizan unas operaciones antes que otras sin importar que sean de la misma
prioridad, la siguiente tabla muestra la prioridad de los operadores, y su orden de evaluacin
en caso de tener una misma jerarqua. Estos aplican sin importar el lenguaje que se maneje.


GRUPO DE OPERADORES
ORDEN DE
EVALUACIN
COMENTARIOS
() [] -> .
de izquierda a
derecha
Este es el grupo de operadores con mayor
prioridad.
! ~ ++ -- + - (tipo) * & sizeof
de derecha a
izquierda
* / %
de izquierda a
derecha
El smbolo "%" denota el operador mdulo,
que produce el resto entero obtenido al
dividir el primer operando por el segundo.
+ -
de izquierda a
derecha
Los operadores aditivos tienen menor
prioridad que los multiplicativos.
<< >>
de izquierda a
derecha
Estos son los operadores de desplazamiento
bit a bit
< <= > >=
de izquierda a
derecha
== !=
de izquierda a
derecha
&
de izquierda a
derecha
Este operador y los dos siguientes realizan
operaciones lgicas bit a bit, considerando
bits individuales de sus operandos.
^
de izquierda a
derecha
|
de izquierda a
derecha
&&
de izquierda a
derecha
Este operador y el siguiente producen
resultados lgicos, pero no consideran bits
individuales sino el valor global del
operando.
||
de izquierda a
derecha
?:
de derecha a
izquierda
= += -= *= /= %= &= ^= |= <<=
>>=
de derecha a
izquierda
, de izquierda a Este es el operador de menor prioridad en C.
derecha Sirve para separar una coleccin de
expresiones, que se irn evaluando de
izquierda a derecha. El resultado es el
producido por la expresin situada en ltimo
lugar (ms a la derecha), y tiene por tanto el
tipo y valor de esta ltima expresin.





Tabla de diferencias entre lenguajes:
C C++ Swift

Tipos de datos
Enteros: long,short,int,long
long
Flotantes: float,double
Caracteres: char
Enteros: int,short,long
Flotantes: float,double,long
double
Caracter: char,wchar
Entero: Int
Flotante: Double
Caracter: String




Identificadores
El primer carcter debe ser
letra o guion bajo(no se
permiten otros caracteres
especiales),no debe haber
espacios, el resto de
caracteres pueden ser
letras, nmeros o guin
bajo, con un mximo de
255 caracteres




Igual que el anterior
Debe comenzar con una
letra, soporta cualquier
carcter de la tabla ASCII



Variables
Se escribe el tipo de dato
seguido del nombre de la
variable, una coma en caso
de requerir ms variables
del mismo tipo, y cerrando
con punto y coma



Igual que el anterior
Se escribe la palabra
var(opcional) seguido de
dos puntos (:) y tipo de
dato(opcional), un smbolo
de igualdad(=) y su
asignacin, se puede o no
cerrar con un punto y coma

Constantes
Se escribe el smbolo #
seguido de la palabra
define, el nombre de la
constante y su valor.

Igual que el anterior
Se usa la palabra let,
seguido de un smbolo
igual(=), y su valor, no es
necesario el punto y coma



Literales
Numricos: Base octal,
decimal, y hexadecimal
Numrico Real: Parte
entera, parte decimal
Cadena: Un solo carcter en
comillas simples (a), o
cadena en comillas ( hola
mundo)



Igual que el anterior
Cualquier tipo de literal en
comilla simple: ITICs
192.168.254.0





Funciones
Se escribe el tipo, nombre,
el argumento entre
parntesis y entre llaves el
cdigo.
Ejemplo:
void holamundo(void)
{ }
Int main(void)
{
holamundo();
}





Igual que el anterior
Se escribe la palabra
reservada func seguida
del nombre de la funcin y
de los parmetros entre
parntesis. Para indicar el
tipo de dato que devuelve
la funcin, se utiliza el
operador -> seguido del
tipo a devolver.
Ejemplo:
func sum(ints:Int[])->Int

Anda mungkin juga menyukai