Bases de Datos Distribuidas y Teorema de CAP - GitHub Pages

Página creada Ezequiel Montoya
 
SEGUIR LEYENDO
Bases de Datos Distribuidas y Teorema de CAP

                                    Pablo Fonseca Moncada
                                      pfonsecam@ucenfotec.ac.cr

                                   Cenfotec Learning Center S.A
                                Bachillerato de Ingeniería de Software

Abstract                                              aquellas que hoy en día tenemos
En este documento encontrará una explicación          abandonadas en el sótano por sus pocas
breve sobre los dos mejores IDE para programar
en C++, dicha explicación contiene sus ventajas,
                                                      capacidades electrónicas. Es normal que
sus desventajas y características adicionales, así    para un usuario común no exista una
como una comparación de ambos IDE al final. Es        necesidad superior que usar un programa
importante recalcar que los dos IDE                   para trabajar, pero si hablamos de
seleccionados se consideran los mejores, y para       capacidad las computadoras pueden hacer
obtener esta información se hizo una tabla que se
fue llenando con datos obtenidos según las
                                                      mucho más que eso. Un usuario puede
opiniones de diferentes páginas web. Los mejores      darle instrucciones a una computadora
IDE para programar según las votaciones son           para realizar un conjunto de acciones
“Visual Studio Code” y “Eclipse”, sin embargo,        específicas, provocando así la creación de
bien se sabe que “Visual Studio Code”                 una nueva aplicación o de un sistema.
técnicamente no es un IDE, por lo que se elegirá
otro de los mejores IDE, que no es tan votado
                                                      Esta tarea no es común, la mayoría de las
como “Visual Studio Code” pero que se                 veces la realizan profesionales dedicados
recomienda en 4 de las 7 páginas web analizadas,      a la computación con el fin de resolver un
en este caso “NetBeans”. Al final de lo               conjunto de problemas específicos. Es
investigado, se dará un detalle del mejor de          normal que dicha solución sea solicitada
ambos IDE, eligiendo así uno de ellos como el
mejor de todos.
                                                      por una compañía de Software que
                                                      necesita mejores herramientas para poder
Palabras Clave                                        progresar.

IDE, C++, C, Programación, Software,                  El resolver este conjunto de problemas
Compilador, Compilación, Aplicaciones.
                                                      requiere que el programador escriba
Introducción                                          código fuente en un lenguaje específico,
Desde que el ser humano las creó                      C++ es uno de ellos. Como C++ es uno
iniciando con bolas y palitos de madera,              de los lenguajes más complicados y
han sido herramientas imprescindibles en              poderosos que existen, se debe de conocer
nuestras vidas Las computadoras son                   una buena herramienta para su
dispositivos electrónicos con grandes                 programación, dicha herramienta por lo
capacidades, podemos utilizarlas para                 habitual se le denomina IDE, que en
automatizar nuestras tareas diarias y                 inglés significa Entorno de Desarrollo
también para concluir nuestros                        Integrado. En este escrito se detallará la
quehaceres mediante el uso de programas               información específica de 2 de los IDE
digitales. Las computadoras son                       más recomendados para programar en
demasiado potentes, incluso lo son                    C++. Se mostrarán sus ventajas, sus
funcionalidades técnicas y sus                tanto en la configuración compleja del
desventajas.                                  diseño, como lo son las configuraciones
                                              específicas para los procesos de
Información sobre Eclipse                     compilación y ejecución. Claramente esto
Eclipse es un IDE bastante poderoso, el       trae una serie de precauciones, ya que no
cual tiene las siguientes características:    cualquier programador debería de utilizar
                                              una herramienta tan poderosa y también,
Funciona por medio de Plugins                 porque no a todos los programadores les
Eclipse trabaja por conjuntos de Plugins,     sirve que haya configuraciones por
lo que le da la facilidad al programador de   defecto desde que va a iniciar su
poder editar las funcionalidades y las        proyecto.
capacidades de este de una manera más
simple, en otras palabras, como el IDE        Compilador incorporado
trabaja según los módulos que se le           Uno de los procesos más complicados
configuran un programador puede elegir        que se deben de realizar a la hora de
fácilmente si trabajar con lo mínimo del      programar en C++ es configurar un
IDE o si quiere convertirlo en una súper      Debugger para depurar nuestro código
herramienta con miles de funcionalidades.     cuando haya errores, en el caso de Eclipse
Esto es una gran ventaja, ya que existen      nos podríamos olvidar de esto, ya que trae
múltiples IDE que le dan al programador       listo un depurador de código fuente, el
todas las características y herramientas,     cual solo se ejecuta iniciando en un botón
sin la opción de quitar las que no ocupe.     y marcando un punto de parada o también
                                              llamado breakpoint.
Es un IDE de propósito general
Eclipse en realidad es un IDE que no se       Multiplataforma
diseñó para un lenguaje específico, por lo    Una de características más importantes de
que tiene varios tipos de versiones con       Eclipse es que es multiplataforma, esto
propósitos específicos, pero en sí, todos     quiere decir que el ambiente de desarrollo
en conjunto lo que intentan proveer es un     puede ser instalado en diferentes sistemas
entorno general para diferentes tipos de      operativos: Puede usarse en Darwin,
tecnologías, por lo que, si el programador    Linux y también Windows.
trabaja en C++ o usa Java, podría utilizar
"Eclipse IDE for C/C++ Developers" o          Autocompletado de Código
bien "Eclipse IDE for Java Developers".       Eclipse trae consigo un conjunto de
                                              configuraciones por defecto y algunos
Filosofía basada en proyectos                 paquetes instalados según la versión
Eclipse trabaja basado en proyectos, lo       Eclipse que uno instala. En el caso de
que significa que cada diseño realizado en    "Eclipse for C/C++ Developers" el
él crea un paquete al que se le llama         ambiente integrado trae configuraciones
proyecto. La filosofía basada en              para autocompletado. Por lo que es
proyectos tiene la ventaja de que ya trae     mucho más simple poder codificar, ya
varias configuraciones, permitiéndole al      que tenemos una vista completa de los
programador enfocarse en la lógica y no
métodos, objetos, variables estáticas y       instrucciones de código máquina según el
propiedades que podemos utilizar.             tipo de arquitectura que tenga nuestra
Su implementación permite la realización      computadora (ya que existen diferentes
de grandes operaciones                        tipos de Assembly). Por último y no
Como una gran parte del código fuente de      menos importante, una de las
Eclipse es escrita en lenguajes cercanos al   funcionalidades más asombrosas de JIT
lenguaje máquina y también, como              es que no compila todo el código
eclipse permite el uso de módulos de          Bytecode, solamente compilará aquellos
terceros desarrollados en lenguajes muy       fragmentos de código fuente que se
potentes, da la capacidad de poder            cambian constantemente, dichos
ejecutar dentro de él grandes                 fragmentos se llaman Cached Bytecode.
funcionalidades, como por ejemplo una
aplicación de red como Telnet o bien un       Desventajas
sistema de gestión de base de datos.          Su principal inconveniente es que a como
                                              es de poderoso consume una gran
Trabaja por medio de Wizards                  cantidad de recursos de la computadora.
Eclipse utiliza un conjunto de wizards o      Sin embargo, esto es habitual, y todo
aplicaciones gráficas de ayuda para poder     usuario experimentado en el campo
inicializar fácilmente los proyectos.         computacional debería de saberlo, si hay
                                              u un buen software debe haber un precio.
Compilación en tiempo real
Eclipse tiene la ventaja de tener JIT (Just   Información sobre NetBeans
in Time Compilation) y en las palabras        Uno de los IDE más completos diseñados
más sencillas eso significa que el código     por la compañía de Oracle con el fin de
Bytecode de Java puede ser interpretado       poder r tener una herramienta para
en tiempo real a código nativo de la          programar en el lenguaje Java, se
máquina, esta característica es               convirtió en uno de los entornos más
especialmente popular en lenguajes que        poderosos para una gran variedad de
trabajan con Bytecode, como por ejemplo       desarrolladores de software. Esta gran
Java y C#. Just in Time Compilation           herramienta tiene las siguientes
también es conocida como Dynamic              características:
Compilation, en español Compilación
Dinámica. Las ventajas de JIT se              Orientado especialmente a un lenguaje
encuentran en el hecho que, desde que la      Este IDE tiene la característica de que es
compilación toma lugar en tiempo de           muy útil para programar en el lenguaje de
ejecución, el compilador JIT tiene acceso     programación Java, ya que fue diseñado
a la información de rutinas dinámicas         pensando en ello, sin embargo, su poder
habilitándolas para realizar mejores          no decrementa si es escogido para la
optimizaciones (por ejemplo,                  utilización de otra tecnología.
convirtiendo las funciones en funciones
en línea). Lo que es importante de
entender acerca de la compilación JIT es
que compilará el Bytecode en
Soporte excepcional                          que pudiera ser en realidad un IDE de
NetBeans se considera uno de los             propósito general y así tener diferentes
primeros IDE para programar en Java, por     características según la versión que se
lo que es habitual que tenga soporte         instale. Esto significa que NetBeans es un
incluso para las versiones más recientes     IDE que funciona de una manera muy
de Java JDK.                                 potente dependiendo del lenguaje que
                                             utilicemos, simplemente tendremos que
Funciona por medio de Plugins                instalar en nuestra máquina la versión
Al igual que otros ambientes, NetBeans       específica para el lenguaje que queremos
funciona por medio de Plugins, no solo       utilizar.
tiene Plugins propios del entorno de
desarrollo, sino que también tiene una       Desventajas de NetBeans
gran librería donde diariamente se van       Como todo IDE, NetBeans también tiene
agregando Plugins de terceros, lo que da     sus defectos, los cuales son bastante
unas grandes capacidades de                  considerables a criterio del autor de este
modificación.                                escrito:
                                             •       Poca existencia de Plugins.
Rápido desarrollo de aplicaciones            •       Hace falta documentación del
Este IDE tiene la característica de que      Rich Client Platform (RPC).
contiene RAD (Rapid Application              •       No posee un editor de código
Development), esto se utiliza                HTML.
principalmente en Java, para crear
formularios complejos con Layouts en         Conclusión
tecnologías de Java para interfaz gráfica,   Es impresionante como el mundo
por ejemplo, Java Swing. El desarrollo       tecnológico va cambiando
RAD no es aconsejable para                   constantemente, cada segundo que pasa
principiantes, de hecho, un programador      en el mundo va creciendo una bola de
avanzado no lo usaría si conoce bien Java    nieve hacia la innovación y también todas
Swing. Sin embargo, desarrollar las vistas   aquellas creaciones recientes van pasando
en RAD ciertamente es una ventaja, lo        velozmente al pasado. Sin duda alguna
que hace que se incremente la                para poder innovar a tal velocidad,
productividad notablemente.                  requerimos de las herramientas correctas
                                             y como una gran parte de las invenciones
IDE Multiplataforma                          de esta era se encuentra en el material
Al igual que otros ambientes, NetBeans       digital, igual debemos disponer de las
es muy conocido por su gran flexibilidad     mejores herramientas digitales.
para poder ser instalado y ejecutado en               Luego de las investigaciones
Windows, Darwin y Linux.                     realizadas, se pudo llegar a la cima del
                                             entendimiento de las características de
Soporta varios lenguajes                     mejores ambientes de desarrollo
Sin duda alguna, NetBeans es un IDE que      integrado, Eclipse y NetBeans. Gracias a
fue pensado para programar en Java, sin      horas de análisis, se pudo cumplir con los
embargo, su arquitectura se modificó para    objetivos esperados, y se mencionaron las
características de cada IDE, que también             cofundadores de compañías de Costa Rica como
vienen a ser parte de sus ventajas, sus              Grupo Cinética C.R en el área de desarrollo de
                                                     Software.
desventajas al igual que también se dieron
algunas explicaciones más profundas de
conceptos importantes, como por ejemplo
la compilación dinámica.

Referencias

GeeksforGeeks. (2020, August 25). Top 5 IDEs
for C++ That You Should Try Once.
https://www.geeksforgeeks.org/top-5-ides-for-c-
that-you-should-try-once/

GeeksforGeeks. (2021, March 18). 10 Best IDEs
for C or C++ Developers in 2021.
https://www.geeksforgeeks.org/10-best-ides-for-c-
or-cpp-developers-in-2021/

K. (2021a, March 9). 27 Best C & C++ IDE &
Editors In 2021 (With Infographics). Web
Development & Technology Resources.
https://codecondo.com/top-10-ide-for-c-and-
cplusplus-for-programmers/

K. (2021b, April 30). Top IDEs for C or C++
Developers in 2021 & Beyond! Eduonix Blog.
https://blog.eduonix.com/software-
development/top-10-ides-c-c-developers/

L., J., C., O., Rodriguez, D., J., Manivannan, K.,
Points, V. S., & Abdal-Aziz, Y. (2021c, February
4). Best C++ IDEs or Source Code Editors for
Programming in 2021 [Updated]. Hackr.Io.
https://hackr.io/blog/cpp-ide

Rungta, K. (2021, March 25). 15 Best C++ IDE:
Free Windows Editor | Compiler | 2021. Guru99.
https://www.guru99.com/best-cpp-ide-editor-
free.html

Welch, S. (2020, May 19). Best C++ IDEs.
Udacity.
https://www.udacity.com/blog/2020/05/best-c-
ides.html

Pablo Fonseca Moncada es un estudiante de la
universidad Cenfotec, que actualmente está
cursando la carrera de bachillerato de ingeniería
de Software, ha trabajado un año con
También puede leer