Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK

Desarrollador FULL STACK

Mencionare los puntos que abordan para ser un programador con el titulo de Full Stack.


1 – Tecnologias FRONT-END:

Los desarrolladores bajo este perfil como front-end deberán ser masters de las tecnologías esenciales del Front-End tales como HTML5, CSS3, Javascript. Conocimientos de librerías de terceros como jQuery, LESS, Angular y React JS es desable.


2 – Lenguajes de Programación:

Ingenieros Full stack deberán conocer al menos un lenguaje de programación de lado servidor como Java, Python, Ruby, .NET entre otros.

Relacionado con

Salario de actual de un programador.


3 – Cache y Base de Datos:

Conocimientos de numerosas tecnologías DBMS es otra necesidad importante de un desarrollador Full-Stack. MYSQL, MongoDB, Oracle, SQL Server son abiertamente usados para esos propósitos. Conocimientos de mecanismo de caché como varnish, Memcached, Redis es un extra.


4 – Habilidades básicas de diseño:

En orden para convertirse en desarrollador full stack, el conocimiento del diseños es también recomendado, para eso la persona deberá conocer los principios básicos de prototipos para interfaces de usuarios (UI/UX).


5 – Servidores:

La exposición al manejo de servidores Apache ( no me refiero al helicóptero) o nginx es deseable. Una buena experiencia en Linux ayuda enormemente en la administración de servidores.

Quizás te interese

WebSphere Application Server ND


6 – VCS o Versionadores:

Un sistema de control de versiones permite a los desarrolladores Full Stack para mantener el trazo de TODOS los cambios hechos en el código
fuente, El conocimiento de Git ayuda a entender para cada desarrollador como obtener siempre el código del programa actualizado, el más reciente
actualizar partes de esos códigos, crear cambios en otro código de otro programador sin alterar lo que la otra persona este haciendo.


7 – Trabajar con APIs ( SOAP, REST )

Conocimientos de servidores web o API es también otra cosa importante para el Full Stack, desarrolladores conocen la creación y como consumir dichos API es muy deseable REST y SOAP.

El ultimo punto y más importante cuanto es el salario de un Desarrollador FULL STACK

Desarrollador FULL STACK

Desarrollador FULL STACK

En Estados Unidos como promedio son de 112,000 dolares por año. unos 9,000 dolares cada mes. Esta tuani saber ese monto, no te rindas y da un inicio en esta era cibernetica.

Mito: Desarrolladores Full Stack es escribir todos los tipos de codigos existente ( programan de todo )

Realidad: El o Ella puede conocer las diferentes tecnologías en el área de desarrollo de software, sin embargo no escriben dicho código ( no programan )


WebSphere Application Server en Windows Parte #1

wAS

¿Que es WebSphere Application Server(WAS)?

WebSphere Application Server conocido popularmente como WAS es un servidor de aplicaciones de la familia de WebSphere de IBM. WAS fue creado usando estandares abiertos como Java Platform, Enterprise Edition J2EE, XML y Web Services.

IBM gestiono la participación de varios de sus laboratorios más importante en en mundo para la creación del Run-Time de WebSphere, con todo este esfuerzo realizado y con la idea de hacer un producto que marcara una diferencia con respecto a los Servidores de Aplicaciones que estaban en ese momento, nace WAS, el cual corre en multiples pataformas de sistemas operativos AIX/Linux/Microsoft Windows/Solaris.

Quizás te interese

Tablas Cruzadas usando DB2 For i

Nosotros nos enfocaremos en la WAS que corre en la plataforma de sistema operativo Windows, con la cual usaremos para multiples laboratorios.

Puede ser de tu interés.

WebSphere Application Server en Windows

¿Que Necesitamos para Instalar el WAS?

IBM Installation Manager:

IBM Installation Manager es una tecnología de instalación de software de IBM que se utiliza para instalar, actualizar y configurar muchos paquetes de software de IBM.

WebSphere Application Server en Windows, IBM Installation Manager

Use este programa para instalar, actualizar, modificar, revertir y desinstalar paquetes de software certificados por IBM en su computadora. El programa localiza y muestra los paquetes disponibles, verifica los requisitos previos y las interdependencias, e instala o modifica los paquetes seleccionados.

Quizás te interese

Excel en Java usando Apache POI

IBM WebSphere Application Server Network Deployment Version 9.0 traditional:

IBM WAS se basa en estándares abiertos y lo ayuda a implementar y administrar aplicaciones que van desde sitios web simples hasta potentes soluciones a pedido.

Procedimiento para Instalación de WAS ND 9.0:

  • Instalar IBM Installation Manager si no lo tienes aún.
  • Abrir IBM Installation Manager ibm installation manager .IBM Installation Manager, Esta Tuani, WAS, WebSphere Application Server
  • Ir al menu File/Preferences
    IBM Installation Manager, Esta Tuani
  • Agregamos los repositorios correspondientes a WAS ND 9.0 y a IBM Java JDK 8.0 y Damos en Test de Connections y luego OK.
    IBM Installation Manager
  • Luego en la pantalla principal de IBM Installation Manager, seleccionamos la opción Install
    IBM Installation Manager
  • Seleccionar IBM WebSphere Application Server Nerwork Deployment/Version 9.0.x.x y IBM SDK Java Technology Edition
    Version 8 IBM Installation Manager, WAS, Esta Tuani

    IBM Installation Manager, WebSphere Application Server, WAS, Esta Tuani
  • Esperar a que termine de preparar el Deployment, y seleccionamos IBM WebSphere Application Server Network Deployment.
    IBM Installation Manager
  • Aceptar los terminos de licencia y seleccionar el tipo instalación que vas a realizar en base a la arquitectura de tu Ordenador, sea 32 Bit o 64 Bit.
  • Seleccionamos idioma por defecto u otro idioma si asi lo preferimos.
  • Después de confirmar el paquete que vamos a instalar nos puesta la pantalla final de instalación
    IBM Installation Manager
  • Damos click en el botón de Install y esperamos a que termine de descargar e instalar todos los componentes, esto suele demorar en base a la velocidad de internet que tengas.

Procedimiento para actualizar instalación de componentes WAS ND 9.0

  • Abrir IBM Installation Manager
  • Luego en la pantalla principal seleccionamos la opción Update.
    IBM Installation Manager
  • Nos muestra todos los paquetes que tenemos instalados y que tenemos fixes o actualizaciones pendiente de aplicar
    IBM Installation Manager, WAS, Esta Tuani
  • Checkamos la opción Update all packages, y damos click sobre botón Next o Siguiente, esperamos a termine de verificar y preparar todas las actualizaciones.
    IBM Installation Manager, websphere application server, esta tuani
  • Aceptamos las condiciones de licencia y das en Next o siguiente
    IBM Installation Manager
  • Finalmente en la pantalla de Packeges que vas a actualizar das click en siguiente y espera a que termine el proceso de verificación y traida de archivos.
  • Finalmente nos aparece la pantalla de confirmar actualización, en este paso damos click sobre el botón Update.
  • Esperamos que termine de actulizar los paquetes y listo ya tenemos el WebSphere Application Server 9.0 ND Instalado y Actualizado.

Quizás te interese

Experiencia de un programador, Entrevista de trabajo

Cabe mencionar que para este ejemplo se uso el producto licenciado de IBM WAS ND 9.0 la version Trial que nos ofrece esta plataforma, existe una version que es libre de uso sin licencia llamada WebSphere Aplication Server Liberty la cual recomiendo su uso.

Como podemos ver este es un proceso de instalación y actualización un poco mas largo de lo normal, pero efectivo, espero le haya gustado el articulo espero muy pronto traer el video de este Post y más artículos de WAS. Asi que no olvides suscribirte en nuestro canal de youtube, donde encontraras videos de Tecnología, programación y mucho más. Por el momento Hasta la Proxima.


Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK
Programacion Informática Tecnología

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK

Que habilidades o conocimientos se requieren para ser un desarrollador Full Stack, acá te informo lo tuani cuales son.
Read More
¿Qué es Amazon Afiliados?
Marketing Digital Marketing Digital

¿Qué es Amazon Afiliados?

El sistema online de Amazon afiliados consiste en un intercambio de beneficios entre Amazon con una página web o blog....
Read More
Full stack o Front end, Java o C++, Lenguajes de programación y trabajos, quien gana mas en este siglo 21?
Informática Tecnología

Full stack o Front end, Java o C++, Lenguajes de programación y trabajos, quien gana mas en este siglo 21?

Full stack o Front end, Java o C++, El salario no es mas que un componente del paquete que nosotros los desarrolladores buscamos trabajos flexibles en nuestros roles, trabajo desde casa, flexibilidad de tiempo en términos de horas.
Read More
¿Qué es Facebook Ads? 3 estrategias para mejorar tus ventas
Marketing Digital Informática Marketing Digital

¿Qué es Facebook Ads? 3 estrategias para mejorar tus ventas

¿Qué es Facebook Ads? Facebook Ads es una herramienta publicitaria online que sirve para promocionar una página en Facebook o...
Read More
5 Tips para tener un buen feed en Instagram
Informática Curiosidades Tecnología

5 Tips para tener un buen feed en Instagram

La plataforma de Instagram propiedad de Facebook, es una de las redes sociales más populares a nivel mundial. Existe alrededor...
Read More
Contenidos adecuados para la programación/desarrollo de software
Informática

Contenidos adecuados para la programación/desarrollo de software

Donde pasar mayor tiempo en las redes sociales o en un tema sobre programación, de eso se trata este articulo, invertir horas en el Internet
Read More
¿Cómo Funciona Amazon Advertising?  Atrae a 7 de cada 10 usuarios en internet.
Marketing Digital Informática Marketing Digital

¿Cómo Funciona Amazon Advertising? Atrae a 7 de cada 10 usuarios en internet.

Generalmente las campañas de Facebook y Google resultan ser las más conocidas. Sin embargo Amazon Advertising podría brindarte resultados extraordinarios de segmentación.
Read More
3- Google: SEO Off Page
Informática Marketing Digital Marketing Digital

3- Google: SEO Off Page

Para comprender un poco de lo que trata el SEO Off Page, es necesario que comprenda el concepto de Search Engine...
Read More
Descubre Google Adsense: ¿Que es? ,¿Cómo funciona?, ¿Cuanto paga en 1000 visitas?
Informática Marketing Digital Marketing Digital

Descubre Google Adsense: ¿Que es? ,¿Cómo funciona?, ¿Cuanto paga en 1000 visitas?

Google AdSense es una herramienta la cual permite mostrar publicidad, anuncios publicitarios permitiéndote ganar dinero...
Read More
2- Google: SEO On Page
Informática Marketing Digital

2- Google: SEO On Page

Para comprender un poco de lo que trata el SEO On Page, es necesario que comprenda el concepto de Search Engine Optimization (SEO) y su importancia, asi que si no has leido nuestro articulos sobre este concepto te invito a que lo leas aqui.
Read More
{"posts_per_page":"10","cat":["33"],"design":"design-1","pagination":"false","gridcol":"2","showDate":"true","showCategory":"true","showContent":"true","words_limit":"20","showreadmore":"true","order":"DESC","orderby":"post_date","showAuthor":"true","media_size":"large","show_tags":"true","show_comments":"true"}

Procedimiento que regresa una tabla cruzada usando Db2

tabla_cruzada

Concepto básico de tabla cruzada usando Db2

El concepto básico de una tabla cruzada es que los valores de fila se transforman en valores de columna. A menudo he deseado que DB2 tuviera un procedimiento o función que nos regrese una tabla pivote. Pero hasta que llegue ese día, tendré que arreglármelas con una solución alternativa que también podría serle útil.

La solución alternativa tiene la forma de un procedimiento almacenado que puede usarse para pivotar cualquier columna en cualquier tabla. Antes de llegar al procedimiento almacenado, veamos un ejemplo pivote simple.

tabla_cruzada, tabla cruzada usando db2, pivot table in db2,

Estos ejemplos están utilizando la tabla SALES en la base de datos de muestra de DB2. Para crear la base de datos de ejemplo de DB2 en su sistema, llame al procedimiento almacenado de SQL

CALL QSYS/CREATE_SQL_SAMPLE('MYSCHEMA')

Una tabla cruzada usando Db2 simple

El código de ejemplo 1 muestra la declaración de selección y el conjunto de resultados para seleccionar un resumen de ventas por vendedor.

select sales_person, sum(sales) as sales
   from sales 
   group by sales_person
   order by sales_person;

SALES_PERSON   SALES
GOUNOT             50	
LEE                91	
LUCCHESSI          14
Código de muestra 1

Cruzando estos datos daría como resultado la línea única que se muestra en el código de muestra 2.

GOUNOT         LEE   LUCCHESSI
     50          91          14
Código de muestra 2

Desafortunadamente, la obtener este resultado de una sola línea requiere bastante trabajo, como se muestra en el código de muestra 3.

select 
   sum(case when sales_person = 'GOUNOT' then sales end) 
    as GOUNOT,
   sum(case when sales_person = 'LEE' then sales end) 
    as LEE,
   sum(case when sales_person = 'LUCCHESSI' then sales end)
    as LUCCHESSI
   from sales;
Código de muestra 3

Examinaremos esta consulta select con más detalle en un momento, pero veamos primero un ejemplo un poco más complicado (y más significativo).

Una tabla cruzada usando Db2 más complicado

En el código de muestra 4 podesmos observar una extensión de la declaración de selección y el conjunto de resultados utilizados en el código de muestra 1. Hemos agregado subtotales por región.

select region, sales_person, sum(sales) as sales
   from sales 
   group by region, sales_person
   order by region, sales_person;

REGION         SALES_PERSON   SALES
Manitoba       GOUNOT             15
Manitoba       LEE                23
Manitoba       LUCCHESSI           3
Ontario-North  GOUNOT              1
Ontario-North  LEE                 8
Ontario-South  GOUNOT             10
Ontario-South  LEE                34
Ontario-South  LUCCHESSI           8
Quebec         GOUNOT             24
Quebec         LEE                26
Quebec         LUCCHESSI          34
Código de muestra 4

Cruzar estos datos es realmente beneficioso, como se muestra en el código de muestra 5.

REGION       GOUNOT         LEE   LUCCHESSI
Manitoba          15          23           3
Ontario-North      1           8           -
Ontario-South     10          34           8
Quebec            24          26          34 
Código de muestra 5

Y la declaración de este select que se requiere no es tan diferente del original, como se muestra en el código de muestra 6.

select 
   region,
   sum(case when sales_person = 'GOUNOT' then sales end) 
    as GOUNOT,
   sum(case when sales_person = 'LEE' then sales end) 
    as LEE,
   sum(case when sales_person = 'LUCCHESSI' then sales end)
    as LUCCHESSI
   from sales
   group by region
   order by region;
Código de muestra 6

El verdadero problema es…

Si examina las declaraciones select en los códigos de muestra 3 y 6, verá que se define una columna para cada uno de los valores posibles para la columna SALES_PERSON. Cuando se ejecuta la instrucción, el valor de la columna SALES se acumulará en la columna correspondiente (GOUNOT, LEE o LUCCHESSI) en función del valor de la columna SALES_PERSON.

Pero, ¿qué sucede si entra en juego un cuarto vendedor? Sí, tenemos que cambiar la declaración de selección y agregar una columna para el nuevo vendedor.

Personalmente, prefiero una solución libre de mantenimiento.

Usando un procedimiento almacenado

El procedimiento almacenado DO_PIVOT acepta seis parámetros:

  1. El nombre del esquema (biblioteca).
  2. El nombre de la tabla.
  3. El nombre de la columna a pivotar (Cruzar).
  4. El nombre de la columna que se agregará para el pivote.
  5. La función agregada que se realizará (el valor predeterminado es SUM).
  6. El nombre de la columna para agrupar (el valor predeterminado es nulo, lo que da como resultado un conjunto de resultados de una sola línea).

La siguiente llamada al procedimiento proporciona el conjunto de resultados que se muestra en el código de ejemplo 2.

CALL DO_PIVOT('SQLSTAND',
              'SALES',
              'SALES_PERSON', 
              'SALES', 
              DEFAULT, 
              DEFAULT);

Y la siguiente llamada al procedimiento proporciona el conjunto de resultados que se muestra en el código de muestra 5.

CALL DO_PIVOT('SQLSTAND',
              'SALES',
              'SALES_PERSON', 
              'SALES', 
              DEFAULT, 
              'REGION');

El procedimiento almacenado DO_PIVOT

El procedimiento DO_PIVOT construye dinámicamente la instrucción select requerida para generar el conjunto de resultados requerido.

Primero, el procedimiento genera una lista de los distintos valores para la columna dinámica solicitada. Luego, construye la instrucción de selección dinámica, agregando una definición de columna para cada uno de los valores distintos en la lista generada.

Finalmente, el procedimiento ejecuta la declaración generada y devuelve el conjunto de resultados.

El código de muestra 7 muestra el código requerido para crear el procedimiento DO_PIVOT. Simplemente copie y pegue, cambie el nombre del esquema y ejecute las declaraciones.

SET SCHEMA = WHER_YOU_WANT_IT;

CREATE PROCEDURE DO_PIVOT
   (IN FOR_SCHEMA CHARACTER (10) , 
    IN FOR_TABLE CHARACTER (10) , 
    IN PIVOT_COLUMN VARCHAR (250) , 
    IN VALUE_COLUMN VARCHAR (250) , 
    IN AGG_FUNCTION VARCHAR (5) DEFAULT 'SUM' , 
    IN GROUP_COLUMN VARCHAR (250) DEFAULT NULL ) 
    LANGUAGE SQL 
    MODIFIES SQL DATA 
    PROGRAM TYPE SUB 
    CONCURRENT ACCESS RESOLUTION DEFAULT 
    DYNAMIC RESULT SETS 1 
    OLD SAVEPOINT LEVEL COMMIT ON RETURN NO 

BEGIN

   DECLARE SQLCODE INTEGER DEFAULT 0 ;
   DECLARE SQL_STATEMENT VARCHAR ( 5000 ) ;
   DECLARE PIVOT_VALUE VARCHAR ( 20 ) ;
   DECLARE PAD CHAR ( 2 ) DEFAULT ' ' ;

   DECLARE C1 CURSOR FOR D1 ;
   DECLARE C2 CURSOR WITH RETURN FOR D2 ;

   SET SCHEMA = FOR_SCHEMA ;

   -- Get the list of values available for the pivot column
   -- Each value will be a column in the return set
   SET SQL_STATEMENT = 'select distinct ' 
                       || PIVOT_COLUMN  
                       || ' from ' 
                       || FOR_TABLE 
                       || ' order by 1' ;

   PREPARE D1 FROM SQL_STATEMENT ;
   OPEN C1 ;

   -- Construct a dynamic select statement for the pivot
   SET SQL_STATEMENT = 'select ' ;

   -- If requested, add the Group By Column 
   -- to the select clause
   IF GROUP_COLUMN IS NOT NULL THEN
      SET SQL_STATEMENT = SQL_STATEMENT || GROUP_COLUMN ;
      SET PAD = ', ' ;
   END IF ;

   -- For each possible value for the Pivot Column, 
   -- add a case statement to perform the requested 
   -- aggregate function on the Value Column
   FETCH NEXT FROM C1 INTO PIVOT_VALUE ;
   WHILE ( SQLCODE >= 0 AND SQLCODE <> 100 ) DO
      SET SQL_STATEMENT = SQL_STATEMENT 
                          || PAD 
                          || AGG_FUNCTION 
                          || '(CASE WHEN ' 
                          || PIVOT_COLUMN 
                          || ' = ''' 
                          || PIVOT_VALUE 
                          || ''' THEN ' 
                          || VALUE_COLUMN 
                          || '  END) AS ' 
                          || PIVOT_VALUE ;
      SET PAD = ', ' ;
      FETCH NEXT FROM C1 INTO PIVOT_VALUE ;
   END WHILE ;
   CLOSE C1 ;

   -- Specify the table to select from
   SET SQL_STATEMENT = SQL_STATEMENT 
                       || ' from ' 
                       || FOR_TABLE ;

   -- If requested, add the Group By Column
   -- to the select clause
   IF GROUP_COLUMN IS NOT NULL THEN
      SET SQL_STATEMENT = SQL_STATEMENT 
                          || ' group by ' 
                          || GROUP_COLUMN 
                          || ' order by ' 
                          || GROUP_COLUMN;
   END IF ;

   PREPARE D2 FROM SQL_STATEMENT ;
   OPEN C2 ;

END ;

LABEL ON ROUTINE DO_PIVOT 
   ( CHAR(), CHAR(), VARCHAR(), VARCHAR(), VARCHAR(), VARCHAR() )  
   IS 'Perform a General Purpose Pivot';

COMMENT ON PARAMETER ROUTINE DO_PIVOT 
   ( CHAR(), CHAR(), VARCHAR(), VARCHAR(), VARCHAR(), VARCHAR() ) 
   (FOR_SCHEMA IS 'Schema for Table' , 
    FOR_TABLE IS 'For Table' , 
    PIVOT_COLUMN IS 'Name of Column to be Pivoted' , 
    VALUE_COLUMN IS 'Column to be Aggregated for Pivot' , 
    AGG_FUNCTION IS 'Use Aggregate Function' , 
    GROUP_COLUMN IS 'Group on Column' ) ;
Código de muestra 7

Este es un procedimiento que he encontrado útil en más de una ocasión y espero que lo encuentres igual de útil. ¡Pero realmente desearía que hubiera una función pivote en DB2!

Crédito a:

Paul Tuohy es CEO de ComCon, una Compañia consultora de iSeries, y un co-fundador de System i Developer. 

Quizás te interese:

Excel en Java
Programación con Swift iOS Parte 1
Programación con Swift iOS Parte 2
Programación con Swift iOS Parte 3 

Te invito a suscribirte a nuestro canal de youtube, donde estaremos subiendo vídeos tutoriales que complementen nuestros artículos.

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK
Programacion Informática Tecnología

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK

Que habilidades o conocimientos se requieren para ser un desarrollador Full Stack, acá te informo lo tuani cuales son.
Read More
WebSphere Application Server en Windows Parte #1
Informática Desarrollo Programacion

WebSphere Application Server en Windows Parte #1

¿Que es WebSphere Application Server(WAS)? WebSphere Application Server conocido popularmente como WAS es un servidor de aplicaciones de la familia...
Read More
Procedimiento que regresa una tabla cruzada usando Db2
Informática Programacion

Procedimiento que regresa una tabla cruzada usando Db2

Concepto básico de tabla cruzada usando Db2 El concepto básico de una tabla cruzada es que los valores de fila...
Read More
Primeros pasos con Slim 4 en PHP
PHP Programacion

Primeros pasos con Slim 4 en PHP

Primeros pasos para utilizar Slim 4 en Php, Instalando Apache XAMPP, Composer y creando prin=mera App con Slim.
Read More
Slim para PHP – Micro Framework programación del 2020
PHP Programacion

Slim para PHP – Micro Framework programación del 2020

Hola que tal, como están? espero que muy bien. El día de hoy le vengo a hablar un poco de...
Read More
Conociendo  RPG IV  – AS400
Programacion

Conociendo RPG IV – AS400

Conociendo lenguaje de programación - RPG IV
Read More
Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4
Programacion Java

Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4

Hola que tal, como están?, bienvenido a este pequeño y sencillo articulo acerca de como crear un archivo Excel en...
Read More
Swift-IOS para principiantes, UITableView Parte #3
Programacion Centroamérica Swift

Swift-IOS para principiantes, UITableView Parte #3

Conceptos fundamentales de UITableView Las tablas son comúnmente utilizadas por aplicaciones cuyos datos están altamente estructurados u organizados jerárquicamente. Las...
Read More
Introducción a Swift IOS Parte #2
Informática Swift

Introducción a Swift IOS Parte #2

En este Post aprenderemos a crear nuestra primera app básica usando Swift IOS, la cual estará conformado por dos campos de textos donde se digitarán números que a través de botones se ejecutarán acciones básicas de una calculadora como sumar, restar, multiplicar y dividir.
Read More
Introducción a Swift-IOS Parte#1
Informática Programacion Swift

Introducción a Swift-IOS Parte#1

Swift es un lenguaje de programación creado por Apple, el cual esta enfocado para desarrollar aplicaciones que corran en iOS, Mac OS (OSX), TvOS y WatchOS presentado oficialmente en el año 2014 y diseñado para que se pudiera integrar con Cocoa y Cocoa Touch
Read More
{"posts_per_page":"10","cat":["151"],"design":"design-1","pagination":"false","gridcol":"2","showDate":"true","showCategory":"true","showContent":"true","words_limit":"20","showreadmore":"true","order":"DESC","orderby":"post_date","showAuthor":"true","media_size":"large","show_tags":"true","show_comments":"true"}

Primeros pasos con Slim 4 en PHP

Slim PHP

Bien como había mencionado antes, el día de hoy les traigo los primeros pasos con Slim 4 en PHP, este es un pequeño tutorial en el caso que tu aun no tengas instalados los componentes solicitados con anterioridad, si los tienes, puedes irte casi al final donde muestro como crear una app básica con Slim.

En el tutorial anterior habíamos mencionado los componentes necesarios para que Slim pueda correr sin problemas, en los primeros pasos con Slim lo que haremos es realizar la instalación de php, para esto nos auxiliaremos de la distribución de apache XAMPP.

Si aún no lo tienes descargado puedes descargarlo de su página oficial XAMPP. Una vez descargado procedemos a realizar su respectiva instalación, este nos realizará la instalación de, Apache, PHP, Perl, MariaDB, dejaremos nuestra instalación totalmente básica, pero si quieres leer mas acerca de la instalación de XAMPP te dejo por acá el link de Preguntas Frecuentes.

Una vez que finalice la instalación este nos preguntara si queremos abrir el panel de control de xampp, No quitemos el check para que este abra solo, en todo caso si lo cerraste, este lo podrás encontrar en el menú de inicio, bien una vez que abra el panel de control, se mostrara una ventana como esta:

Primeros pasos con Slim 4 en PHP

Por el momento no iniciaremos ninguno de los servicios, después de esto procederemos a descargar e instalar Composer, una vez descargado, ejecutaremos el Composer-Setup.exe descargado desde la pagina oficial. Este nos solicitara en un combo de selección la versión de php con la que el estará trabajando, por eso necesitamos tener instalado previamente XAMPP. Como se muestra en la figura.

Si tu ruta de instalación no es la misma que seleccioné yo, ahí tienes la opción de buscar la ruta y decirle donde tienes instalada tu versión de PHP.

Composer será agregado a la ruta donde tu tengas instalado PHP. como se muestra en la siguiente figura, después de esto solo presionamos el botón install, esto no tomara tiempo y nos mostrara la pantalla que ya se ha instalado composer, presionamos el botón finalizar y ya estamos listo para empezar a instalar Slim para PHP.

Para comprobar que composer fue instalado y está funcionando correctamente en nuestro ordenador, una de las vías que considero rápidas en Windows es, presionando tecla Windows + R, este abrirá el run de Windows, escribimos cmd y presionamos Enter.

Una vez que estemos en la consola simplemente escribimos composer y presionamos Enter, este nos mostrara la versión que estamos utilizando y nos mostrará los comandos que podemos utilizar con este como se muestra en la imagen.

Primeros pasos con Slim 4

Bien para crear nuestro proyecto, nos guiaremos de la documentación de Slim, la creación del proyecto es algo tan sencillo como ejecutar el siguiente comando.

$ php composer.phar create-project slim/slim-skeleton [my-app-name]

En nuestro caso le pondremos, my-crud-rest, y lo enrutamos a la siguiente dirección que creamos con anterioridad, ejecutemos esto en nuestra consola

php composer.phar create-project slim/slim-skeleton C:\Developer\Project\my-crud-rest

Es probable que al ejecutar esta línea en el cmd de Windows este nos dé un problema, como se muestra en la imagen.

En caso que les de este error, la forma sencilla y rápida de solucionar este pequeño inconveniente es primeramente irnos a esta ruta de Windows: C:\ProgramData\ComposerSetup\bin

Ahí encontraremos el archivo composer.phar el cual lo copiaremos a la carpeta de nuestro usuario, después de esto cerramos el cmd y ejecutamos una consola nuevamente, copiamos y pegamos la línea que habíamos copiado antes:

php composer.phar create-project slim/slim-skeleton C:\Developer\Project\my-crud-rest

Y ejecutamos nuevamente. miraremos como este empieza a descargar los componentes necesarios.

Una vez finalizado este punto ya tenemos creado nuestro proyecto esqueleto nuestros primeros pasos con Slim y empezar a trabajar con este. Luego puedes ejecutarlo con el servidor web incorporado de PHP de esta manera:

cd [my-app-name]
php -S localhost:8080 -t public public/index.php

Donde [my-app-name] sera la ruta de tu proyecto con su nombre por ejemplo en nuestro casos seria:

cd C:\Developer\Project\my-crud-rest

Seguidamente ejecutamos en el cmd el siguiente comando

php -S localhost:8090 -t public public/index.php

De esta manera ha iniciado nuestro servidor virtual. Si nos vamos al navegador e ingresamos la url http://localhost:8090/ en la que iniciamos nuestro servidor virtual miraremos que este nos regresa Hola mundo!

Y así vemos que nuestra primera aplicación con Slim, está corriendo de forma satisfactoria.

Para detener el servidor virtual a como se muestra en la imagen es tan simple como presionar la tecla Ctrl + C y este cerrara este servidor virtual.

Si quieres visitar alguno de nuestros post de programación te invito a verlos en los siguientes Links:

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK
Programacion Informática Tecnología

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK

Que habilidades o conocimientos se requieren para ser un desarrollador Full Stack, acá te informo lo tuani cuales son.
Read More
WebSphere Application Server en Windows Parte #1
Informática Desarrollo Programacion

WebSphere Application Server en Windows Parte #1

¿Que es WebSphere Application Server(WAS)? WebSphere Application Server conocido popularmente como WAS es un servidor de aplicaciones de la familia...
Read More
Procedimiento que regresa una tabla cruzada usando Db2
Informática Programacion

Procedimiento que regresa una tabla cruzada usando Db2

Concepto básico de tabla cruzada usando Db2 El concepto básico de una tabla cruzada es que los valores de fila...
Read More
Primeros pasos con Slim 4 en PHP
PHP Programacion

Primeros pasos con Slim 4 en PHP

Primeros pasos para utilizar Slim 4 en Php, Instalando Apache XAMPP, Composer y creando prin=mera App con Slim.
Read More
Slim para PHP – Micro Framework programación del 2020
PHP Programacion

Slim para PHP – Micro Framework programación del 2020

Hola que tal, como están? espero que muy bien. El día de hoy le vengo a hablar un poco de...
Read More
Conociendo  RPG IV  – AS400
Programacion

Conociendo RPG IV – AS400

Conociendo lenguaje de programación - RPG IV
Read More
Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4
Programacion Java

Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4

Hola que tal, como están?, bienvenido a este pequeño y sencillo articulo acerca de como crear un archivo Excel en...
Read More
Swift-IOS para principiantes, UITableView Parte #3
Programacion Centroamérica Swift

Swift-IOS para principiantes, UITableView Parte #3

Conceptos fundamentales de UITableView Las tablas son comúnmente utilizadas por aplicaciones cuyos datos están altamente estructurados u organizados jerárquicamente. Las...
Read More
Introducción a Swift IOS Parte #2
Informática Swift

Introducción a Swift IOS Parte #2

En este Post aprenderemos a crear nuestra primera app básica usando Swift IOS, la cual estará conformado por dos campos de textos donde se digitarán números que a través de botones se ejecutarán acciones básicas de una calculadora como sumar, restar, multiplicar y dividir.
Read More
Introducción a Swift-IOS Parte#1
Informática Programacion Swift

Introducción a Swift-IOS Parte#1

Swift es un lenguaje de programación creado por Apple, el cual esta enfocado para desarrollar aplicaciones que corran en iOS, Mac OS (OSX), TvOS y WatchOS presentado oficialmente en el año 2014 y diseñado para que se pudiera integrar con Cocoa y Cocoa Touch
Read More
{"posts_per_page":"10","cat":["151"],"design":"design-1","pagination":"false","gridcol":"2","showDate":"true","showCategory":"true","showContent":"true","words_limit":"20","showreadmore":"true","order":"DESC","orderby":"post_date","showAuthor":"true","media_size":"large","show_tags":"true","show_comments":"true"}

Slim para PHP – Micro Framework programación del 2020

Slim PHP

Hola que tal, como están? espero que muy bien. El día de hoy le vengo a hablar un poco de Slim para PHP que si no me equivoco ya esta en su Versión 4.3, empezaremos hablando acerca de: Que es un Micro-Framework?

Bien, para explicarlo de una manera sencilla, un microframework es un término que se utiliza para referirse a marcos de aplicaciones web minimalistas, normalmente estos facilitan el enviar o recibir una solicitud HTTP al controlador apropiado que a menudo están específicamente diseñados para construir las API para otro servicio o aplicación.

Slim para PHP

Sea un proyecto pequeño o grande, recuerda que una de las decisiones claves es decidir que tecnología base vas a aplicarle a estos proyectos, para que complicarse la vida en la selección del framework? No tiene sentido por ejemplo utilizar un framework de gran envergadura con una curva de aprendizaje quizás un poco mas alta, esto es como saltar de un avión sin paracaídas, es por eso que te propongo usar Slim para PHP.

Slim es un micro framework PHP que sirve para construir rápidamente APIs que se comunican con bases de datos y luego sirven los datos en formatos de textos estructurados tales como JSON, pero también es excelente para crear websites sencillos.

De igual manera si no eres un programador experimentado y estas empezando a programar y no tienes ni la mas mínima idea de por donde iniciar, la propuesta esta acá, PHP es uno de los lenguajes con una programación versátil, con una curva de aprendizaje no tan alta y una documentación de mas de 20 años desde sus inicios, por acá te dejo una guía escrita las directrices para adquirir las mejores practicas en PHP.

Slim Php

Si tu idea es montar una API REST simple pero potente para tus aplicaciones web, Slim para PHP te hará la vida sencilla, ademas de poder desarrollar aplicación muy profesionales de un forma rápida y sencilla.

Slim es muy ligero, está bien documentado y sin lugar a duda es una opción muy recomendable cuando el peso de nuestra aplicación recae del lado del cliente.

Como por ejemplo si nuestra decisión para el front end es usar Angular, React, Vue.js, Ember, Backbone.js o cualquier otro framework mvc de JavaScript, Slim se convierte en nuestro mejor aliado.

Ahora bien lo primero que te recomiendo que instales para utilizar este poderoso framework es PHP, en este caso no importa el sistema operativo estés usando puedes instalarlo tanto en windows como en linux y MAC OS-X, por ejemplo si usas Windows la opción que yo te recomiendo es usar XAMPP el cual es uno de los entornos mas populares de PHP y esta disponible para los sistemas operativos mencionados anteriormente.

xampp, slim, php

XAMPP es una distribución de Apache completamente gratuita y fácil de instalar que contiene MariaDB, PHP y Perl. y la cual tiene más de 10 años en este entorno debido a esto hay una gran comunidad detrás del proyecto.

Al igual que en windows hay otras alternativas de instalaciones de este tipo de infraestructura para linux como es LAMP, el cual es usado como el acrónimo para describir un sistema de infraestructura en Linux que al igual que XAMPP contiene Apache, MariaDB-MySql y PHP

Algo interesante y excelente de este framework es la guía de usuario que este nos brinda, ademas de el paso a paso de como descargarlo y como instalarlo esto esta en el sitio oficial de Slim.

Dentro del paso a paso lo primero que debemos de hacer es descargar el manejador de dependencia de PHP Composer, y después de este paso empezar a trabajar con Slim creando un Slim-Skeleton.

slim, composer

Algunas de las granes características de este framework son:

  • Enrutador HTTP (Route): Slim proporciona un enrutador rápido y potente que asigna devoluciones de llamada de ruta a métodos específicos de solicitud HTTP y URI
  • Capa Middleware: Slim te permite crear tu aplicación con middleware concéntrico para ajustar los objetos de solicitud y respuesta HTTP alrededor de su aplicación.
  • Inyección de dependencia: Slim admite la inyección de dependencia para que tenga un control completo de sus herramientas externas.
  • PSR-7 Support: Slim admite cualquier implementación de mensajes HTTP PSR-7, por lo que puede inspeccionar y manipular el método, estado, URI, encabezados, cookies y cuerpo del mensaje HTTP.

Pero bien, como he dicho, si estás aprendiendo PHP y necesitas montar una aplicación sencilla, en mi humilde opinión pienso que deberías de darle la oportunidad a este Framework Slim y por supuesto a este lenguaje de años.

Me despido no sin antes agradecer tu atención y hacerte saber que mas adelante dejaré por acá un link de los blogs donde mostraré un paso a paso de como instalar XAMPP, instalar Slim y como hacer una API con un CRUD sencillo usando SLIM, mientras tanto te invito a suscribirte a nuestro canal de Youtube Esta Tuani en el cual estaré compartiendo el video tutorial del blog que te mencione antes de la API en Slim.

También te dejo algunos enlaces de programación en Java de como crear un Excel en java y como Leer un Excel en java con apache POI y programación en Swift de UITableView en Swift.

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK
Programacion Informática Tecnología

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK

Que habilidades o conocimientos se requieren para ser un desarrollador Full Stack, acá te informo lo tuani cuales son.
Read More
WebSphere Application Server en Windows Parte #1
Informática Desarrollo Programacion

WebSphere Application Server en Windows Parte #1

¿Que es WebSphere Application Server(WAS)? WebSphere Application Server conocido popularmente como WAS es un servidor de aplicaciones de la familia...
Read More
Procedimiento que regresa una tabla cruzada usando Db2
Informática Programacion

Procedimiento que regresa una tabla cruzada usando Db2

Concepto básico de tabla cruzada usando Db2 El concepto básico de una tabla cruzada es que los valores de fila...
Read More
Primeros pasos con Slim 4 en PHP
PHP Programacion

Primeros pasos con Slim 4 en PHP

Primeros pasos para utilizar Slim 4 en Php, Instalando Apache XAMPP, Composer y creando prin=mera App con Slim.
Read More
Slim para PHP – Micro Framework programación del 2020
PHP Programacion

Slim para PHP – Micro Framework programación del 2020

Hola que tal, como están? espero que muy bien. El día de hoy le vengo a hablar un poco de...
Read More
Conociendo  RPG IV  – AS400
Programacion

Conociendo RPG IV – AS400

Conociendo lenguaje de programación - RPG IV
Read More
Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4
Programacion Java

Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4

Hola que tal, como están?, bienvenido a este pequeño y sencillo articulo acerca de como crear un archivo Excel en...
Read More
Swift-IOS para principiantes, UITableView Parte #3
Programacion Centroamérica Swift

Swift-IOS para principiantes, UITableView Parte #3

Conceptos fundamentales de UITableView Las tablas son comúnmente utilizadas por aplicaciones cuyos datos están altamente estructurados u organizados jerárquicamente. Las...
Read More
Introducción a Swift IOS Parte #2
Informática Swift

Introducción a Swift IOS Parte #2

En este Post aprenderemos a crear nuestra primera app básica usando Swift IOS, la cual estará conformado por dos campos de textos donde se digitarán números que a través de botones se ejecutarán acciones básicas de una calculadora como sumar, restar, multiplicar y dividir.
Read More
Introducción a Swift-IOS Parte#1
Informática Programacion Swift

Introducción a Swift-IOS Parte#1

Swift es un lenguaje de programación creado por Apple, el cual esta enfocado para desarrollar aplicaciones que corran en iOS, Mac OS (OSX), TvOS y WatchOS presentado oficialmente en el año 2014 y diseñado para que se pudiera integrar con Cocoa y Cocoa Touch
Read More
{"posts_per_page":"10","cat":["151"],"design":"design-1","pagination":"false","gridcol":"2","showDate":"true","showCategory":"true","showContent":"true","words_limit":"20","showreadmore":"true","order":"DESC","orderby":"post_date","showAuthor":"true","media_size":"large","show_tags":"true","show_comments":"true"}

Conociendo RPG IV – AS400

RPG IV

Retomando la clase RPG IV.

Este lenguaje de programación muy arcaico pero poderoso. Mantiene ciertas reglas a considerar a la hora de codificar.
Tiene palabras reservadas y nombres simbólicos, tal como otros lenguajes y continuación las mencionare.

rpg, ile rpg, esta tuani, rpg iv

Caracteres validos:

  1. Las letras: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
  2. Acepta caracteres en minúscula pero al compilar esta se transformaran en mayúsculas.
  3. Los números: 0 1 2 3 4 5 6 7 8 9.
  4. Los caracteres especiales: + – * , . ‘ & ⁄ $ # : @ _ > < = ( ) %
  5. Acepta blancos.

OJO:
RPGLE No es case-sensitive por lo que si usas una variable de nombre “soyVariable” será igual usar “SOYVARIABLE”

Nombres Simbólicos:

Sino estas familiarizado con este termino acá va su definición: Es un nombre que identifica únicamente a una entidad especifica en un programa o procedimiento
En el lenguaje RPG IV los nombres simbólicos son usados para lo siguiente:

  1. Arreglos.
  2. Nombres de compilación condicional.
  3. Estructura de Datos.
  4. Excepciones de Registros de Salida.
  5. Campos.
  6. Lista de Campos Llaves.
  7. Etiquetas.
  8. Constantes.
  9. Lista de Parámetros.
  10. Nombres de Prototipos.
  11. Nombres de Registros.
  12. Sub-Rutinas.
  13. Tablas.

Las siguientes reglas se aplican a todos los nombres simbólicos, excepto las desviaciones indicadas en la descripción de cada nombre simbólico:

  1. El primer carácter del nombre debe ser alfabético. Esto incluye los caracteres especiales: $, #, @.
  2. Los caracteres que siguen pueden ser alfabéticos o números. Esto incluye guion bajo o subrayado: (_).
  3. El nombre debe ajustarse a la izquierda en la entrada del formulario de especificación, excepto en los campos que permiten que el nombre flote (especificación de definición,
    campos de palabras clave y el campo extendido del factor 2).
  4. Un nombre simbólico no puede ser una palabra reservada de RPG IV.
  5. Un nombre simbólico puede tener de 1 a 4096 caracteres. Los límites prácticos están determinados por el tamaño de la entrada utilizada para definir
    el nombre. Se puede especificar un nombre de hasta 15 caracteres en la entrada Nombre de la definición o especificación del procedimiento. Para nombres
    de más de 15 caracteres, use una especificación de continuación. Para obtener más información, consulte Acerca de las especificaciones.
  6. Un nombre simbólico debe ser único dentro del procedimiento en el que se define.

Palabras reservadas y Los formularios de especificación los veremos pronto.

Ver también:

Swift iOS para principiante Parte #1
Swift iOS para principiante Parte #2
Swift iOS para principiante Parte #3
Excel en Java.
Hola Mundo, RPG.

Suscribete a nuestro canal de Youtube aquí.

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK
Programacion Informática Tecnología

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK

Que habilidades o conocimientos se requieren para ser un desarrollador Full Stack, acá te informo lo tuani cuales son.
Read More
WebSphere Application Server en Windows Parte #1
Informática Desarrollo Programacion

WebSphere Application Server en Windows Parte #1

¿Que es WebSphere Application Server(WAS)? WebSphere Application Server conocido popularmente como WAS es un servidor de aplicaciones de la familia...
Read More
Procedimiento que regresa una tabla cruzada usando Db2
Informática Programacion

Procedimiento que regresa una tabla cruzada usando Db2

Concepto básico de tabla cruzada usando Db2 El concepto básico de una tabla cruzada es que los valores de fila...
Read More
Primeros pasos con Slim 4 en PHP
PHP Programacion

Primeros pasos con Slim 4 en PHP

Primeros pasos para utilizar Slim 4 en Php, Instalando Apache XAMPP, Composer y creando prin=mera App con Slim.
Read More
Slim para PHP – Micro Framework programación del 2020
PHP Programacion

Slim para PHP – Micro Framework programación del 2020

Hola que tal, como están? espero que muy bien. El día de hoy le vengo a hablar un poco de...
Read More
Conociendo  RPG IV  – AS400
Programacion

Conociendo RPG IV – AS400

Conociendo lenguaje de programación - RPG IV
Read More
Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4
Programacion Java

Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4

Hola que tal, como están?, bienvenido a este pequeño y sencillo articulo acerca de como crear un archivo Excel en...
Read More
Swift-IOS para principiantes, UITableView Parte #3
Programacion Centroamérica Swift

Swift-IOS para principiantes, UITableView Parte #3

Conceptos fundamentales de UITableView Las tablas son comúnmente utilizadas por aplicaciones cuyos datos están altamente estructurados u organizados jerárquicamente. Las...
Read More
Introducción a Swift IOS Parte #2
Informática Swift

Introducción a Swift IOS Parte #2

En este Post aprenderemos a crear nuestra primera app básica usando Swift IOS, la cual estará conformado por dos campos de textos donde se digitarán números que a través de botones se ejecutarán acciones básicas de una calculadora como sumar, restar, multiplicar y dividir.
Read More
Introducción a Swift-IOS Parte#1
Informática Programacion Swift

Introducción a Swift-IOS Parte#1

Swift es un lenguaje de programación creado por Apple, el cual esta enfocado para desarrollar aplicaciones que corran en iOS, Mac OS (OSX), TvOS y WatchOS presentado oficialmente en el año 2014 y diseñado para que se pudiera integrar con Cocoa y Cocoa Touch
Read More
{"posts_per_page":"10","cat":["151"],"design":"design-1","pagination":"false","gridcol":"2","showDate":"true","showCategory":"true","showContent":"true","words_limit":"20","showreadmore":"true","order":"DESC","orderby":"post_date","showAuthor":"true","media_size":"large","show_tags":"true","show_comments":"true"}

Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4

Excel en java, Esta tuani.

Hola que tal, como están?, bienvenido a este pequeño y sencillo articulo acerca de como crear un archivo Excel en java y por supuesto como leer este archivo desde Java, para este tutorial utilizaremos las librerías de código abierto de de Apache POI. Realmente es algo sencillo de hacer y daremos inicios desde ya.

Bien el primer paso que debes de seguir es realizar la descarga de las librerías de Apache desde el sitio oficial, te dejo por acá el enlace para que las puedas descargar. Apache POI. En amarillo esta marcada la versión que estaremos utilizando.

Exel en Java. Libreria Apache POI
Exel en Java. Libreria Apache POI

En mi caso decidí descargarlo en .zip, que es el mas común si trabajas con Windows, si tu trabajas con otro sistema operativo y te es mas sencilla otras de las versiones, puedes utilizar la que tu desees.

Exel en Java. Libreria Apache POI
Descargar librería, en nuestro caso el link sugerido.

Aclaro que por cuestión de gustos y rapidez, yo estaré utilizando Netbeans como IDE así que las imágenes que proporcionaré serán de este, lo dejo a tu criterio el uso de este IDE o si Prefieres Eclipse o cualquier otro, eso ya es cuestión de gustos, para mi es mas cómodo Netbeans.

Pero bien, una vez descargada la librería, procedemos a descomprimir el contenido, en mi caso descomprimiré la librería en una carpeta en la unidad C:\ de mi computador. La ruta completa será C:\Developer\LibsJava\ dentro de esta pegaremos el .zip y damos extraer aquí.

A como logran apreciar, el contenido de la librería es bastante grande, nosotros no utilizaremos tantos archivos, a continuación les agregaré una imagen en la cual mostrare la lista de archivos jars que seleccionaremos para trabajar en nuestro pequeño laboratorio, no son necesarias todas las librerías.

Propiedades del proyecto en Netbeans

Y si mas preámbulo, colocaré el código por acá

EXCEL EN JAVA – CREAR UN ARCHIVO  (.XLSX)

El código que muestra a continuación esta 100% funcional, puedes utilizarlo sin problema, solo es necesario cambiar la ruta actual, o si prefieres crear la ruta del archivo donde se creará el Excel con intencional .xlsx. en mi caso la ruta que utilice fue: C:\Developer\Tutorial\Java\ hago un poco de énfasis en esto ya que, si la ruta no se encuentra el código enviara el error que la ruta no fue encontrada.

Te dejo por acá el preciso momento en el que realizamos en el video tutorial la codificación de la creación del archivo Excel.

import java.io.File;
import java.io.FileOutputStream;

import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.Font;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

// Excel en Java, tutorial escritura
public class CreateExcelFile {

    public static void main(String[] args) {

        String fileName = "Productos.xlsx";
        String filePath = "C:\\Developer\\Tutorial\\Java\\" + fileName;
        //Seteando el nombre de la hoja donde agregaremos los items
        String hoja = "Hoja1"; 
        
        //Creando objeto libro de Excel
        XSSFWorkbook book = new XSSFWorkbook();
        XSSFSheet hoja1 = book.createSheet(hoja);
        
        //Cabecera de la hoja de excel
        String[] header = new String[]{"Código", "Producto", "Descripción"};

        //Contenido de la hoja de excel
        String[][] document = new String[][]{
            {"C001", "Computador Laptop HP.", "Compurtador marca HP color negro."},
            {"C002", "Computador Escritorio Lenovo.", "Compurtador marca lenovo color negro con monitor integrado."},
            {"C003", "Impresora HP.", "Impresora marca HP, multifuncional color negro."},
            {"C004", "Mouse Inalambrico Logitec.", "Mouse Inalambrico color azul con negro."},
            {"C005", "Teclado Inalambrico Lenovo.", "Teclado Inalambrico color blanco."}
        };

        //Aplicando estilo color negrita a los encabezados
        CellStyle style = book.createCellStyle();
        Font font = book.createFont();
        font.setBold(true);//Seteando fuente negrita al encabezado del archivo excel
        style.setFont(font);

        //Generando el contenido del archivo de Excel
        for (int i = 0; i <= document.length; i++) {
            XSSFRow row = hoja1.createRow(i);//se crea las filas
            for (int j = 0; j < header.length; j++) {
                if (i == 0) {//Recorriendo cabecera
                    XSSFCell cell = row.createCell(j);//Creando la celda de la cabecera en conjunto con la posición
                    cell.setCellStyle(style); //Añadiendo estilo a la celda creada anteriormente
                    cell.setCellValue(header[j]);//Añadiendo el contenido de nuestra lista de productos
                } else {//para el contenido
                    XSSFCell cell = row.createCell(j);//Creando celda para el contenido del producto
                    cell.setCellValue(document[i - 1][j]); //Añadiendo el contenido
                }
            }
        }

        File excelFile;
        excelFile = new File(filePath); // Referenciando a la ruta y el archivo Excel a crear
        try (FileOutputStream fileOuS = new FileOutputStream(excelFile)) {
            if (excelFile.exists()) { // Si el archivo existe lo eliminaremos
                excelFile.delete();
                System.out.println("Archivo eliminado.!");
            }
            book.write(fileOuS);
            fileOuS.flush();
            fileOuS.close();
            System.out.println("Archivo Creado.!");

        } catch (Exception e) {
            e.printStackTrace();
        }

    }
}

Imágenes del archivo Excel creado

EXCEL EN JAVA – LEER UN ARCHIVO  (.XLSX)

A continuación les proporciono el fragmento de código 100% funcional de la lectura del archivo Excel desde java. En esta ocasión leeremos el mismo archivo que creamos anteriormente., leyéndolo desde la misma ruta donde lo habíamos creado.

import java.io.File;
import java.io.FileInputStream;
import java.util.Iterator;

import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

// Excel en Java, tutorial lectura
public class LeerArchivoExcel {

    public static void main(String[] args) {
        // Nombre del archivo a leer
        String fileName = "Productos.xlsx";
        String pathFile = "C:\\Developer\\Tutorial\\Java\\" + fileName;

        try (FileInputStream file = new FileInputStream(new File(pathFile))) {
            // Leer el archivo de Excel en la ruta especificada
            XSSFWorkbook book = new XSSFWorkbook(file);
            // Obtener medinte indice la hoja que se leera
            XSSFSheet sheet = book.getSheetAt(0);
            // Obteniendo todas las filas de la hoja leida
            Iterator<Row> rowIterator = sheet.iterator();

            // CRendo un StringBuilder donde almacenaremos los datos del 
            // Excel temporalmente para mostrarlo en consola
            StringBuilder sb = new StringBuilder();

            Row row;
            // Recorreremos cada fila de la hoja hasta llegar al final
            while (rowIterator.hasNext()) {
                row = rowIterator.next();
                // Obteniendo las celdas de cada fila para obtener valores
                Iterator<Cell> cellIterator = row.cellIterator();
                Cell cell;
                //Recorrienco las celdas de la fila obtenida
                while (cellIterator.hasNext()) {
                    // Obteniendo el valor de la celda para ser almacenada en nuestro buffer
                    cell = cellIterator.next();
                    // Agregando a nuestro buffer los valores leidos 
                    // de las celdas incluyendo la cabecera
                    // Haremos una pequeña validacion para saber si la columna que 
                    // estamos leyendo esta en la posicion cero, si es la primera no agregaremos formato
                    // de lo contrario rellenaremos con espacios la cadena pare verlo de forma ordenada.
                    if (cell.getColumnIndex() == 0) {
                        sb.append(cell.toString()).append("\t");
                    } else {
                        sb.append(String.format("%-30s", cell.toString())).append("\t");
                    }
                    
                }
                // Agregando salto de linea, por estetica
                sb.append("\n");
            }
            // Imprimiendo contenido del Excel agregado en el buffer
            System.out.println(sb.toString());
        } catch (Exception e) {
            e.getMessage();
        }
    }
}

Imagen del archivo Excel leído desde Java

Impresión en consola de los datos del Excel leido

Bien, espero que el tutorial haya sido de gran ayuda, y gracias por haber llegado hasta el final del tutorial, por acá te dejare en enlace para que puedas descargar el código fuente de Excel en Java, creación y lectura de un archivo .xlsx 100% funcional.

También te dejo algunos enlaces con otros tutoriales de programación en Swift. Y te invito a que te suscribas a nuestro canal de Youtube Esta Tuani, tabien te invito a ver el video tutorial completo de este blog por si se te hace mas comodo.

Gracias por tu atención en este tutorial Excel en Java, te esperamos nuevamente.

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK
Programacion Informática Tecnología

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK

Que habilidades o conocimientos se requieren para ser un desarrollador Full Stack, acá te informo lo tuani cuales son.
Read More
WebSphere Application Server en Windows Parte #1
Informática Desarrollo Programacion

WebSphere Application Server en Windows Parte #1

¿Que es WebSphere Application Server(WAS)? WebSphere Application Server conocido popularmente como WAS es un servidor de aplicaciones de la familia...
Read More
Procedimiento que regresa una tabla cruzada usando Db2
Informática Programacion

Procedimiento que regresa una tabla cruzada usando Db2

Concepto básico de tabla cruzada usando Db2 El concepto básico de una tabla cruzada es que los valores de fila...
Read More
Primeros pasos con Slim 4 en PHP
PHP Programacion

Primeros pasos con Slim 4 en PHP

Primeros pasos para utilizar Slim 4 en Php, Instalando Apache XAMPP, Composer y creando prin=mera App con Slim.
Read More
Slim para PHP – Micro Framework programación del 2020
PHP Programacion

Slim para PHP – Micro Framework programación del 2020

Hola que tal, como están? espero que muy bien. El día de hoy le vengo a hablar un poco de...
Read More
Conociendo  RPG IV  – AS400
Programacion

Conociendo RPG IV – AS400

Conociendo lenguaje de programación - RPG IV
Read More
Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4
Programacion Java

Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4

Hola que tal, como están?, bienvenido a este pequeño y sencillo articulo acerca de como crear un archivo Excel en...
Read More
Swift-IOS para principiantes, UITableView Parte #3
Programacion Centroamérica Swift

Swift-IOS para principiantes, UITableView Parte #3

Conceptos fundamentales de UITableView Las tablas son comúnmente utilizadas por aplicaciones cuyos datos están altamente estructurados u organizados jerárquicamente. Las...
Read More
Introducción a Swift IOS Parte #2
Informática Swift

Introducción a Swift IOS Parte #2

En este Post aprenderemos a crear nuestra primera app básica usando Swift IOS, la cual estará conformado por dos campos de textos donde se digitarán números que a través de botones se ejecutarán acciones básicas de una calculadora como sumar, restar, multiplicar y dividir.
Read More
Introducción a Swift-IOS Parte#1
Informática Programacion Swift

Introducción a Swift-IOS Parte#1

Swift es un lenguaje de programación creado por Apple, el cual esta enfocado para desarrollar aplicaciones que corran en iOS, Mac OS (OSX), TvOS y WatchOS presentado oficialmente en el año 2014 y diseñado para que se pudiera integrar con Cocoa y Cocoa Touch
Read More
{"posts_per_page":"10","cat":["151"],"design":"design-1","pagination":"false","gridcol":"2","showDate":"true","showCategory":"true","showContent":"true","words_limit":"20","showreadmore":"true","order":"DESC","orderby":"post_date","showAuthor":"true","media_size":"large","show_tags":"true","show_comments":"true"}

Swift-IOS para principiantes, UITableView Parte #3

Swift, Lenguaje de programación, iOS-Swift, esta tuani

Conceptos fundamentales de UITableView

Las tablas son comúnmente utilizadas por aplicaciones cuyos datos están altamente estructurados u organizados jerárquicamente. Las aplicaciones que contienen datos jerárquicos a menudo usan tablas junto con un controlador de vista de navegación, lo que facilita la navegación entre diferentes niveles de la jerarquía. Por ejemplo, la aplicación Configuración utiliza tablas y un controlador de navegación para organizar la configuración del sistema.

Ejemplo de tableview, uitableview,esta tuani

UITableView gestiona la apariencia básica de la tabla, pero su aplicación proporciona las celdas (objetos UITableViewCell) que muestran el contenido real. Las configuraciones de celda estándar muestran una combinación simple de texto e imágenes, pero puede definir celdas personalizadas que muestren el contenido que desee. También puede proporcionar vistas de encabezado y pie de página para proporcionar información adicional para grupos de celdas.

Protocolo UITableViewDataSource
.

Apple nos ofrece la clase UITableView para que podamos trabajar con tablas en nuestras aplicaciones. Esta clase ha sido diseñada para poder mostrar tipos de datos muy diferentes. En una tabla puedes mostrar prácticamente cualquier dato, desde un conjunto de opciones básicas hasta un listado de productos en inventarios, con la información completa de cada uno, clasificados por sucursales.

La pregunta es:
¿Cómo le decimos a la clase UITableView que información debe mostrar?
La respuesta es, utilizando el protocolo UITableViewDataSource.

Las TableViews se dividen en Secciones y Celdas
Las tablas se dividen en diferentes secciones, donde cada sección puede contener un determinado número de celdas, entonces en que consiste el protocolo UITableViewDataSource.

UITableViewDataSource es el enlace entre los datos que queremos mostrar y nuestra UITableView. Este protocolo declara dos métodos obligatorios:

  • tableView:numberOfRowsInSection()
  • tableView:cellForRowAt()

El primero de los métodos: numberOfRowsInSection(), el cual especifica el número de celdas que mostraremos en nuestra tabla y se ejecutará tantas veces como secciones tenga nuestra tabla. En nuestro caso, como no hemos indicado el número de secciones, iOS entenderá que nuestra tabla tiene una única sección, por lo que este método se ejecutará una única vez.

El segundo método: cellForRowAt(), nos permite especificar los datos que mostraremos en cada celda y se ejecutará tantas veces como celdas tenga la única sección de nuestra tabla.

Cabe mencionar que estos son métodos obligatorios, y tendremos que implementarlos en nuestra clase si queremos utilizar el protocolo UITableViewDataSource.

Protocolo UITableViewDelegate

Por otro lado tenemos el protocolo UITableViewDelegate. Este protocolo es el encargado de determinar la apariencia de nuestra UITableView. Todos sus métodos son opcionales, por lo que no estamos obligados a implementar ninguno. Sin embargo, ofrece funcionalidades muy útiles como especificar el height de las celdas, configurar tanto el header como el footer de una tabla, reordenar las celdas, etc.

En este tutorial no utilizaremos ninguno de estos métodos, ya que nos vamos a centrar únicamente en mostrar los datos en nuestra aplicación pero aún así es importante que conozcas las opciones que te ofrece este protocolo.

IndexPath
La clase IndexPath es fundamental para que entiendas completamente el trabajo con tablas en aplicaciones iOS. Siempre que quieras utilizar alguna TableView en tu aplicación, tendrás que implementar el método cellForRowAt y gran parte del funcionamiento de este método se basa en un objeto de la clase IndexPath.

Este objeto tiene dos propiedades:

  • .section
  • .row

A través de estas dos propiedades, podremos situarnos en un punto concreto de una tabla. Mediante la propiedad .section especificaremos en que sección de nuestra tableView nos encontramos, mientras que a través de la propiedad .row determinaremos, dentro de esa sección, en que celda nos encontramos.
Por tanto si especificáramos lo siguiente:

  • .section = 0
  • .row = 4

Nos encontraríamos en la quinta celda de la primera sección de nuestra tabla.

Creando nuestro proyecto.

Abre Xcode y crea un nuevo proyecto, haciendo clic en la opción “Create a new Xcode project”.

Pantalla de bienvenida, Xcode

Elige la plantilla “Single View Application” y haz clic en Next para continuar.

Template new project, esta tuani, xcode, swift ios

A continuación rellena los campos que Xcode te solicita:

  • Nombre de producto o de la apps.
  • Nombre de la organización.
  • El identificador de la organización (Normalmente es el dominio de tu empresa pero en orden inverso).
  • El lenguaje (Importante que elijas Swift)

Una vez que has introducido esta información, pulsa en Next y Xcode te preguntará donde quieres guardar tu proyecto. Elige una ubicación de tu ordenador y haz clic en el botón Create. Xcode creará tu proyecto y te mostrará tu entorno de trabajo:

entorno de trabajo xcode, swift ios, tableview, uitableview

Lo primero que haremos será crear la interfaz de nuestra aplicación. Abre el fichero Main.storyboard.

Haz doble clic en el único ViewController que tenemos en nuestro storyboard, para seleccionarlo. Después, en la librería de objetos, situada en la parte inferior derecha, desplázate hacia abajo hasta encontrar el objeto Table View y arrástralo al interior de la view de nuestro ViewController.

Ahora redimensiona la UITableView para que ocupe toda la view principal

uitableview, xcode, swift ios, ios, esta tuani

Acabas de añadir un UITableView a la interfaz de tu aplicación. Esta tabla será la que utilicemos para mostrar los datos de nuestra app.

Lo siguiente que tienes que hacer es añadir las constraints de esa tabla. Las constraints nos permiten asegurarnos de que al ejecutar nuestra app en cualquier dispositivo, nuestra tabla aparecerá correctamente centrada.

Lo primero que tenemos que hacer es especificar que la clase ViewController.swift se ajustará a los protocolos UITableViewDataSource y UITableViewDelegate. Este es el primer paso siempre que trabajes con protocolos, determinar que clase será la que implemente el protocolo.

class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate

En clase ViewController.swift, declaramos la variable donde almacenaremos la información que queremos que muestre nuestra tabla.

Como los datos que mostraremos en nuestra tabla será un listado de paises Centroamericanos, utilizaremos un array llamado Banderas para almacenar ese listado. Por tanto, tendrás que añadir la siguiente variable justo antes del método viewDidLoad() y posterior a esto se rellana el array con los nombre de los paises de centroamérica dentro del método viewDidLoad():

var banderas:[String] = []

override func viewDidLoad() {     
     super.viewDidLoad()
     banderas=["Guatemala", "Honduras", "El Salvador", 
               "Nicaragua", "Costa Rica", "Panama"] 
}

Ahora que ya tenemos nuestro array con todos los equipos que queremos mostrar en nuestra tabla, es hora de hacer que nuestra tabla muestre estos datos. Para ello utilizaremos los dos métodos del protocolo UITableViewDataSource:

  • numberOfRowsInSection()
  • cellForRowAt()

Añade la implementación de estos dos métodos a tu clase ViewController.swift:

func tableView(_ tableView:UITableView, numberOfRowsInSection section:Int) -> Int
{
   return banderas.count
}
    
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell 
{
   let cell:UITableViewCell=UITableViewCell(style: UITableViewCellStyle.subtitle, reuseIdentifier: "mycell")
   cell.textLabel?.text = banderas[indexPath.row]
   cell.imageView?.image = UIImage(named: banderas[indexPath.row])
        
   return cell
        
}

Recuerda que hemos comentado antes, que estos dos métodos no se ejecutan una única vez.

A continuación tienes la explicación del código de cada uno de ellos.

El método numberOfRowsInSection(), como hemos dicho, es el encargado de especificar el número de celdas que mostraremos. En nuestro caso, como queremos mostrar tantas celdas como elementos hayamos almacenado en nuestro array banderas, utilizaremos la propiedad count, que lo que hace es devolver el número de elementos que hay almacenados en un array. De esta forma, si nuestro array characters tiene 6 elementos, nuestro método numberOfRowsInSection devolverá 6. Por tanto nuestra tabla mostrará 6 celdas con contenido.

Por otro lado, el método cellForRowAt() crea un objeto celda, que hemos llamado cell, de tipo UITableViewCell, al que se le asigna el identificador “mycell”. Posteriormente, lo que hace es asignar a su propiedad textLabel.text, el texto que queremos mostrar, que en nuestro caso, será el elemento que esté contenido en el array, en la posición indexPath.row.

Recuerda que la propiedad indexPath.row indica la celda en la que nos encontramos, por lo que la primera vez que se ejecute el método cellForRowAt(), indexPath.row será igual a 0, la segunda será igual a 1, la tercera será igual a 2, de esta forma podremos recorrer nuestro array teams y mostraremos cada vez un elemento distinto del array. No olvides que el método cellForRowAt() se ejecuta tantas veces como celdas vayamos a mostrar en nuestra tabla.

Ahora, prueba a ejecutar tu aplicación.

TableView, xcode, swift ios, esta tuani

Descarga el proyecto de ejemplo desde aqui.

Quizas sea de interes:

Virtualizar MAC OS en Windows PC
Introducción a Swift IOS Parte #1
Introducción a Swift IOS Parte #2

Te invitamos a suscribirte a nuestro canal de Youtube y a visitar nuestra sección de multimedias

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK
Programacion Informática Tecnología

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK

Que habilidades o conocimientos se requieren para ser un desarrollador Full Stack, acá te informo lo tuani cuales son.
Read More
WebSphere Application Server en Windows Parte #1
Informática Desarrollo Programacion

WebSphere Application Server en Windows Parte #1

¿Que es WebSphere Application Server(WAS)? WebSphere Application Server conocido popularmente como WAS es un servidor de aplicaciones de la familia...
Read More
Procedimiento que regresa una tabla cruzada usando Db2
Informática Programacion

Procedimiento que regresa una tabla cruzada usando Db2

Concepto básico de tabla cruzada usando Db2 El concepto básico de una tabla cruzada es que los valores de fila...
Read More
Primeros pasos con Slim 4 en PHP
PHP Programacion

Primeros pasos con Slim 4 en PHP

Primeros pasos para utilizar Slim 4 en Php, Instalando Apache XAMPP, Composer y creando prin=mera App con Slim.
Read More
Slim para PHP – Micro Framework programación del 2020
PHP Programacion

Slim para PHP – Micro Framework programación del 2020

Hola que tal, como están? espero que muy bien. El día de hoy le vengo a hablar un poco de...
Read More
Conociendo  RPG IV  – AS400
Programacion

Conociendo RPG IV – AS400

Conociendo lenguaje de programación - RPG IV
Read More
Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4
Programacion Java

Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4

Hola que tal, como están?, bienvenido a este pequeño y sencillo articulo acerca de como crear un archivo Excel en...
Read More
Swift-IOS para principiantes, UITableView Parte #3
Programacion Centroamérica Swift

Swift-IOS para principiantes, UITableView Parte #3

Conceptos fundamentales de UITableView Las tablas son comúnmente utilizadas por aplicaciones cuyos datos están altamente estructurados u organizados jerárquicamente. Las...
Read More
Introducción a Swift IOS Parte #2
Informática Swift

Introducción a Swift IOS Parte #2

En este Post aprenderemos a crear nuestra primera app básica usando Swift IOS, la cual estará conformado por dos campos de textos donde se digitarán números que a través de botones se ejecutarán acciones básicas de una calculadora como sumar, restar, multiplicar y dividir.
Read More
Introducción a Swift-IOS Parte#1
Informática Programacion Swift

Introducción a Swift-IOS Parte#1

Swift es un lenguaje de programación creado por Apple, el cual esta enfocado para desarrollar aplicaciones que corran en iOS, Mac OS (OSX), TvOS y WatchOS presentado oficialmente en el año 2014 y diseñado para que se pudiera integrar con Cocoa y Cocoa Touch
Read More
{"posts_per_page":"10","cat":["151"],"design":"design-1","pagination":"false","gridcol":"2","showDate":"true","showCategory":"true","showContent":"true","words_limit":"20","showreadmore":"true","order":"DESC","orderby":"post_date","showAuthor":"true","media_size":"large","show_tags":"true","show_comments":"true"}

Introducción a Swift IOS Parte #2

Swift, Lenguaje de programación, iOS-Swift, esta tuani

Ya hemos aprendido a crear nuestra virtual de MAC OSX y nuestro ambiente de trabajo en los posts anterior de Introducción a Swift IOS Parte #1, si no los has leido te invito a visitar primero estos dos posts.

En este Post aprenderemos a crear nuestra primera app básica usando Swift IOS, la cual estará conformado por dos campos de textos donde se digitarán números que a través de botones se ejecutarán acciones básicas de una calculadora como sumar, restar, multiplicar y dividir.

  • Lo primero que haremos e ir a abrir nuestro IDE xCode y escoger la opción de crear un nuevo proyecto de xcode.
Pantalla de bienvenida, Xcode, Este ide es el mas completo para programar en Swift iOS
  • En la ventana de selección de template para tu nuevo proyecto seleccionamos la opción de Vista simple de App.
Ventana de template para crear nuevo proyecto Xcode. Este ide es el mas completo para programar en Swift iOS
  • Le ponemos un nombre a nuestra aplicación que en nuestro caso se llamara MiPrimeraApp, y hacemos clic sobre el botón y por último sobre el botón crear.
  • Lo primero que se nos muestra es la pantalla de las propiedades de configuración general de nuestro proyecto, donde podemos observar el nombre de nuestro proyecto, nuestro identificador de paquete permite que iOS y macOS reconozcan cualquier actualización de esta aplicación, la versión de nuestro proyecto y el número de compilado.
  • En nuestra estructura de proyecto tenemos en primer plano, nuestros Storyboards y nuestros ViewControllers, que son los componentes con los que trabajaremos para este ejemplo.
  • Usando nuestro panel de librerías de objetos vamos a diseñar esta pantalla básica, con la que haremos funcionar nuestro ejemplo.
Pantalla de ejemplo de aplicación movil basico. emulador básico para Swift-IOS
  • Para conectar nuestro control de interfaz de tipo texto con una variable de control dentro de nuestro editor, necesitaremos seleccionar el control a vincular o conectar y presionando la tecla “Control” y presionando nuestro cursor arrastramos desde nuestro control de interfaz a la posición donde necesitamos poner o inicializar nuestro variable de control en nuestro ViewController, no abrirá un modal donde verificamos que el tipo de conexión se “Outlet”, definimos el nombre y damos clic sobre el botón conectar.
  • Para los controles que son tipo botón el procedimiento es el mismo con la diferencia que el tipo de conexión seria de acción, esto es para indicar que la conexión se hará hacia una función o evento.
Nuestro ViewController deberia quedar de esta manera:
@IBOutlet weak var txtNumero1: UITextField!
@IBOutlet weak var txtNumero2: UITextField!    
@IBOutlet weak var lblResultado: UILabel!
    
@IBAction func btnSumar_Click(_ sender: Any) {
   var vSumar : Int = Int(txtNumero1.text!)! + Int(txtNumero2.text!)!;
   lblResultado.text = String(vSumar);
}
    
@IBAction func btnRestar_Click(_ sender: Any) {
   var vRestar : Int = Int(txtNumero1.text!)! - Int(txtNumero2.text!)!;
   lblResultado.text = String(vRestar);
}
    
@IBAction func btnMultiplicar(_ sender: Any) {
   var vMultiplicar : Int = Int(txtNumero1.text!)! * Int(txtNumero2.text!)!;
   lblResultado.text = String(vMultiplicar);
}
    
@IBAction func btnDividir_OnClick(_ sender: Any) {
   var vDividir : Int = Int(txtNumero1.text!)! / Int(txtNumero2.text!)!;
   lblResultado.text = String(vDividir);
}

Descarga el proyecto de ejemplo dando click aqui.

Te invitamos a ver nuestro video tutoria y a suscribirte a nuestro canal de youtube.

Suscribete a nuestro canal de Youtube

Recuerda ver tambien nuestros post de:

Virtualizar MAC OS sobre Windows PC.

Introducción a Swift IOS Parte #1

Puedes visitar nuestra sección de multimedias y ver mas videos de tu interés.

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK
Programacion Informática Tecnología

Capacidades y Habilidades necesarias para ser un desarrollador FULL STACK

Que habilidades o conocimientos se requieren para ser un desarrollador Full Stack, acá te informo lo tuani cuales son.
Read More
WebSphere Application Server en Windows Parte #1
Informática Desarrollo Programacion

WebSphere Application Server en Windows Parte #1

¿Que es WebSphere Application Server(WAS)? WebSphere Application Server conocido popularmente como WAS es un servidor de aplicaciones de la familia...
Read More
Procedimiento que regresa una tabla cruzada usando Db2
Informática Programacion

Procedimiento que regresa una tabla cruzada usando Db2

Concepto básico de tabla cruzada usando Db2 El concepto básico de una tabla cruzada es que los valores de fila...
Read More
Primeros pasos con Slim 4 en PHP
PHP Programacion

Primeros pasos con Slim 4 en PHP

Primeros pasos para utilizar Slim 4 en Php, Instalando Apache XAMPP, Composer y creando prin=mera App con Slim.
Read More
Slim para PHP – Micro Framework programación del 2020
PHP Programacion

Slim para PHP – Micro Framework programación del 2020

Hola que tal, como están? espero que muy bien. El día de hoy le vengo a hablar un poco de...
Read More
Conociendo  RPG IV  – AS400
Programacion

Conociendo RPG IV – AS400

Conociendo lenguaje de programación - RPG IV
Read More
Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4
Programacion Java

Excel en JAVA: Creación y lectura de archivos con Apache POI 4.4

Hola que tal, como están?, bienvenido a este pequeño y sencillo articulo acerca de como crear un archivo Excel en...
Read More
Swift-IOS para principiantes, UITableView Parte #3
Programacion Centroamérica Swift

Swift-IOS para principiantes, UITableView Parte #3

Conceptos fundamentales de UITableView Las tablas son comúnmente utilizadas por aplicaciones cuyos datos están altamente estructurados u organizados jerárquicamente. Las...
Read More
Introducción a Swift IOS Parte #2
Informática Swift

Introducción a Swift IOS Parte #2

En este Post aprenderemos a crear nuestra primera app básica usando Swift IOS, la cual estará conformado por dos campos de textos donde se digitarán números que a través de botones se ejecutarán acciones básicas de una calculadora como sumar, restar, multiplicar y dividir.
Read More
Introducción a Swift-IOS Parte#1
Informática Programacion Swift

Introducción a Swift-IOS Parte#1

Swift es un lenguaje de programación creado por Apple, el cual esta enfocado para desarrollar aplicaciones que corran en iOS, Mac OS (OSX), TvOS y WatchOS presentado oficialmente en el año 2014 y diseñado para que se pudiera integrar con Cocoa y Cocoa Touch
Read More
{"posts_per_page":"10","cat":["151"],"design":"design-1","pagination":"false","gridcol":"2","showDate":"true","showCategory":"true","showContent":"true","words_limit":"20","showreadmore":"true","order":"DESC","orderby":"post_date","showAuthor":"true","media_size":"large","show_tags":"true","show_comments":"true"}

Introducción a Swift-IOS Parte#1

Swift, Lenguaje de programación, iOS-Swift, esta tuani

Swift-IOS es un lenguaje de programación creado por Apple, el cual está enfocado para desarrollar aplicaciones que corran en iOS, Mac OS (OSX), TvOS y WatchOS presentado oficialmente en el año 2014 y diseñado para que se pudiera integrar con Cocoa y Cocoa Touch, se considera que es el lenguaje que viene a sustituir a Objective-C como lenguaje principal para los desarrollos de aplicaciones de Apple.

Swift está totalmente integrado con cualquier lógica y/o librerías hechos en su predecesor Objective-C, haciendo fácil de usar y procurando no perder desarrollo hecho con el lenguaje antes mencionado y que se desea implementar o integrar con Swift-IOS.

Este lenguaje de programación es poderoso e intuitivo y a la vez hace que la escritura de código sea interactivo y divertido, enfocado a que sea seguro y que se produzcan apps que se ejecuten rápido y que sobre todo administre eficientemente los recursos de los dispositivos. Para mayo de 2018 salió la versión 4 de Swift el cual viene con el IDE XCode 9 para el desarrollo en plataforma de Mac OS.

xcode, swift-ios, esta tuani, estatuani

Es el entorno de desarrollo integrado (IDE) usado por Mac OS para el desarrollo de software y contiene todas las herramientas diseñada y creadas por Apple para la creación de aplicaciones que corran en sus sistemas operativos iOS, Mac OS, Watch OS y Tv OS.

Trabaja en conjunto con Interface Builder una herramienta gráfica para la creación de interfaces de usuarios, y puede compilar códigos hechos en lenguajes como C, C++, Swift, Objective C, Objective C++, Java y AppleScript.

 

Crear ambiente de trabajo

A continuación, se explicara de forma corta como crear el ambiente de trabajo en su Macbook o en su Virtual de MAC OS en Windows.

1- Entrar a App Store en la barra inferior de la pantalla o usando “launchpad” de MAC OS

swift-ios, estatuani, programación en swift

2- En App Store, se filtra desde el buscador que esta en la parte superior derecha de la pantalla la palabra “xcode”

swift-ios, estatuani, programación en swift

3- En la pantalla de instalación se da click sobre la opción de Get – Installs, e inicia la instalación de XCode.

swift-ios, estatuani, programación en swift, swift ios

4- Esperar que finalice y ya tenemos nuestro ambiente de desarrollo creado.

swift-ios, estatuani, programación en swift, swift ios

 

Muchas gracias y espero sea de ayuda.

Ir a Introducción a Swift-IOS Parte #2

Introducción a Swift-IOS, TableView Parte #3

Te invitamos a que te suscribas a nuestro canal de youtube y que nos visites a nuestra sección de multimedias.

Dragon Ball Super Manga 59: Spoiler y Rumores
Comic Cine y Ocio Mangas

Dragon Ball Super Manga 59: Spoiler y Rumores

Dragon Ball Super Manga 59 Después de una larga ausencia EstaTuani esta de regreso, esto a causa de la espectativa...
Read More
One Piece Manga 976: “¡¡¡Permitanme presentarme!!!”
Cine y Ocio Mangas

One Piece Manga 976: “¡¡¡Permitanme presentarme!!!”

Sin mas que decir, vamos al review de One Piece Manga 976 llamado ¡El Nuevo Timonel de los Mugiwaras!, el...
Read More
One Piece Manga 976: Spoilers, “¡¡¡Defenderemos nuestro destino!!!”
Cine y Ocio Mangas

One Piece Manga 976: Spoilers, “¡¡¡Defenderemos nuestro destino!!!”

Ya estan los spoilers de One Piece Manga 976, Y es que en la portada de la WSJ tenemos a Luffy, Gol D. Roger y Oden junto al mensaje "la voluntad heredada a través del espacio y el tiempo".
Read More
One Piece Manga 973: Resumen y reacción
Cine y Ocio Mangas

One Piece Manga 973: Resumen y reacción

El día de hoy les traigo el resumen del One Piece Manga 973, el cual esta lleno de muchas revelaciones,...
Read More
{"posts_per_page":"4","cat":"","design":"design-1","pagination":"false","gridcol":"2","showDate":"true","showCategory":"true","showContent":"true","words_limit":"20","showreadmore":"true","order":"DESC","orderby":"post_date","showAuthor":"true","media_size":"large","show_tags":"true","show_comments":"true"}