<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Abrilskop</title>
    <description>The latest articles on DEV Community by Abrilskop (@abrilskop).</description>
    <link>https://dev.to/abrilskop</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1022128%2F45edcd08-93b7-4263-a613-a12f854c776a.jpeg</url>
      <title>DEV Community: Abrilskop</title>
      <link>https://dev.to/abrilskop</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/abrilskop"/>
    <language>en</language>
    <item>
      <title>React</title>
      <dc:creator>Abrilskop</dc:creator>
      <pubDate>Sat, 03 Feb 2024 04:27:49 +0000</pubDate>
      <link>https://dev.to/abrilskop/react-4klg</link>
      <guid>https://dev.to/abrilskop/react-4klg</guid>
      <description>&lt;p&gt;&lt;strong&gt;¿Que es React?&lt;/strong&gt;&lt;br&gt;
Es una biblioteca de Javascript para construir interfaces de usuario en web o movil.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;React es declarativo y esta basado en componentes.&lt;/li&gt;
&lt;li&gt;Es universal, ya que se ejecuta tanto como de lado del servidor y cliente, permitiendonos reutilizar el mismo codigo.&lt;/li&gt;
&lt;li&gt;En 2013 se volvio de codigo abierto.&lt;/li&gt;
&lt;li&gt;Pertenece a Meta(Facebook, Whatsapp)&lt;/li&gt;
&lt;li&gt;Creado en 2012 por Jordan Wolk, ya que era muy dificil trabajar con formularios.&lt;/li&gt;
&lt;li&gt;Evita ataques por XSS(intento de ainyeccion de codigo).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;¿Por que aprender React?&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Es el framework mas demandado del mundo.&lt;/li&gt;
&lt;li&gt;Te permite desarrollar aplicacion de escritorio, web y moviles.&lt;/li&gt;
&lt;li&gt;Mantenimiento activo.&lt;/li&gt;
&lt;li&gt;El aprendisaje es mas facil si sabes otro framework.&lt;/li&gt;
&lt;li&gt;Los cambios en React son mas facil de inplementar.&lt;/li&gt;
&lt;li&gt;Una gran comunidad.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Preguntas tipicas de React&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://www.reactjs.wiki/"&gt;https://www.reactjs.wiki/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Documentacion&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://es.react.dev/learn"&gt;https://es.react.dev/learn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>react</category>
      <category>reactnative</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Entorno de Desarrollo para empezar a desarrollar aplicaciones Moviles II</title>
      <dc:creator>Abrilskop</dc:creator>
      <pubDate>Wed, 30 Aug 2023 20:33:33 +0000</pubDate>
      <link>https://dev.to/abrilskop/entorno-de-desarrollo-para-empezar-a-desarrollar-aplicaciones-moviles-ii-1i6f</link>
      <guid>https://dev.to/abrilskop/entorno-de-desarrollo-para-empezar-a-desarrollar-aplicaciones-moviles-ii-1i6f</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;Instalacion de Flutter en Windows&lt;/strong&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Nos dirigimos a la documentacion de Flutter, ahi nos especifica que tenemos que tener instalado Android Studio y el SDK.
&lt;a href="https://docs.flutter.dev/get-started/install"&gt;&lt;/a&gt;
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--p1mcceaQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bnefdid7w0ujsulpgmud.png" alt="c" width="800" height="374"&gt;
Procedemos a descargar el SDK de flutter.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--U2sKab9Z--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/04wqmpzg9q3y2eov26l4.png" alt="b" width="182" height="194"&gt;
&lt;/li&gt;
&lt;li&gt;Añadimos al Path nuestra ruta, en mi caso yo lo guarde el el disco C, asi que copio la ruta para pegarla en el Path. &lt;code&gt;C:\flutter\bin&lt;/code&gt;
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Hq01Df0l--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xqjfs7qs7g7y6wmvmpf9.png" alt="d" width="800" height="337"&gt;
&lt;/li&gt;
&lt;li&gt;Buscamos env o variables de entorno en nuestro buscador de Windows.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--k3R9JNom--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bvm56q17ihvygy2fkrrd.png" alt="e" width="800" height="650"&gt;
&lt;/li&gt;
&lt;li&gt;Hacemos clic en variables de entorno.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PdZ6qHRv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wsi1bnumb0xilg98khav.png" alt="f" width="532" height="585"&gt;
&lt;/li&gt;
&lt;li&gt;Nos llevara a esta ventana, seleccionamos path y hacemos clcic en editar.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AtPiaXV7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xdd4dwvhjdbxaw0e2glc.png" alt="g" width="701" height="451"&gt;
&lt;/li&gt;
&lt;li&gt;Creamos uno nuevo y pegamos la ruta copiada, presionamos aceptar y cerramos la ventana.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PSzk2HQe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9wriyzxp3j6hnr2tysx3.png" alt="h" width="603" height="668"&gt;
&lt;/li&gt;
&lt;li&gt;Para verificar que se nos instalo flutter, vamos al cmd y escribimos &lt;code&gt;flutter doctor&lt;/code&gt;, este comando actualizara algunas cosas.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JNQfwt34--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r9dr4jfieo1fqozrq530.png" alt="i" width="800" height="468"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Solucion de Problemas&lt;/strong&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;En mi caso vemos 2 problemas:&lt;/li&gt;
&lt;li&gt;Android Toolchain&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Visual Studio&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Para solucionar el primer problema, nos dirigimos a SDK Maanagaer, vamos a la opcion de SDK tools y descargamos el componenete que nos falta, una ves instalado el problema se nos solucionara.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lZGkQAhJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wuusug6zorr6roudbkvf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lZGkQAhJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wuusug6zorr6roudbkvf.png" alt="j" width="800" height="491"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--W4ggGfjw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/np77c3acsuis9g9wf9f7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--W4ggGfjw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/np77c3acsuis9g9wf9f7.png" alt="k" width="800" height="466"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Para solucionar el problema de Android Toolchain escribimos:&lt;br&gt;
&lt;code&gt;flutter doctor --android-licenses&lt;/code&gt;, y le damos yes a todo.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--yWOcuuyA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b5tnegraknprceru92c9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--yWOcuuyA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b5tnegraknprceru92c9.png" alt="l" width="800" height="475"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Para el tercer problema, no es necesario solucionar el de Visual Studio ya que solo queremos desarrollar aplicaciones moviles.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Podemos ver que solucionamos satisfactoriamente los problemas.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4NUrTG91--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7toe8i2aj74oxezrlo61.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4NUrTG91--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7toe8i2aj74oxezrlo61.png" alt="m" width="800" height="465"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Instalacion de Extenciones en VSCode&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;1.Por ultimo instalamos nuestra extencion de dart en visual studio code, cerramos y volvemos a abrir para que se actualice.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XbemjVxQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qqydhd5ju6pj43hxp6n7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XbemjVxQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qqydhd5ju6pj43hxp6n7.png" alt="n" width="800" height="249"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Creacion de primer proyecto&lt;/strong&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Abrimos Visual Studio Code, seleccionamos View y Command Palette.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FyAV6dFD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v3ausmaqf981hq7t1lf9.png" alt="commandpalette" width="586" height="621"&gt;
&lt;/li&gt;
&lt;li&gt;Hacemos clic en flutter:new project.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZwbA6M6r--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g3a5nlmobcv1odrbwkvm.png" alt="newproject" width="800" height="164"&gt;
&lt;/li&gt;
&lt;li&gt;Escojemos la platilla de app.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DFPIs0WV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x7rxc80br2t1iopw85yx.png" alt="p" width="751" height="383"&gt;
&lt;/li&gt;
&lt;li&gt;Nos abrira el explorador de archivos, para que escojamos donde guardar nuestro nuevo proyecto, seleccionamos la carpeta en la que lo guardaremos y enter.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ndCzb7Jx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3rnc0u9lbqvsnhsnvhla.png" alt="q" width="800" height="342"&gt;
&lt;/li&gt;
&lt;li&gt;Le pondremos el nombre que deseemos a nuestro proyecto y enter.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--oTXJEkLm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/528ubs08rnlfzcywbnmd.png" alt="r" width="800" height="121"&gt;
&lt;/li&gt;
&lt;li&gt;Nos aparecera esta ventana, y simplemente aceptamos.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--25h5E6PF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gljh7icvl71bkycthbsj.png" alt="s" width="665" height="495"&gt;
&lt;/li&gt;
&lt;li&gt;Nuestro proyecto de flutter se habra creado automaticamente.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--S-DN4wD5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uonqpml1pb30k75wk01g.png" alt="d" width="800" height="407"&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>flutter</category>
      <category>dart</category>
      <category>development</category>
      <category>programming</category>
    </item>
    <item>
      <title>Entorno de Desarrollo para empezar a desarrollar aplicaciones Moviles I</title>
      <dc:creator>Abrilskop</dc:creator>
      <pubDate>Wed, 30 Aug 2023 19:12:58 +0000</pubDate>
      <link>https://dev.to/abrilskop/entorno-de-desarrollo-para-empezar-a-desarrollar-aplicaciones-moviles-i-j36</link>
      <guid>https://dev.to/abrilskop/entorno-de-desarrollo-para-empezar-a-desarrollar-aplicaciones-moviles-i-j36</guid>
      <description>&lt;h2&gt;
  
  
  &lt;strong&gt;Instalacion de Android Studio&lt;/strong&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Ir a la pagina oficial de Android Studio y darle clic en "Download Android Studio Giraffe".
&lt;a href="https://dev.tourl"&gt;&lt;code&gt;https://developer.android.com/studio&lt;/code&gt;&lt;/a&gt;
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vJFwgLz---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qrg1az1emzmihoskg8xj.png" alt="AndroidStudioGiraffe" width="800" height="309"&gt;
&lt;/li&gt;
&lt;li&gt;Acepta los terminos y condiciones de la ventana que te aparece a continuacion y automaticamente se te descargara el paquete de instalacion.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--COQoqBYi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/htnzekgwse5bctqp5vmv.png" alt="Terminos y condiciones" width="800" height="434"&gt;
&lt;/li&gt;
&lt;li&gt;Una vez descargado abre el paquete(con permisos de administrador) y dale &lt;strong&gt;next&lt;/strong&gt; a todo a menos que quieras cambiar la ruta de instalacion.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uy0yiISx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/07hq9kdfegkmjeppv1h1.png" alt="packete" width="200" height="249"&gt;
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mgXxMykJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dh6oz12pes7l220r181q.png" alt="pack" width="622" height="481"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Instalacion de SDK Manager&lt;/strong&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Una vez abierto Android Studio, debes instalar el SDK Manager. Ve a la opcion more acctions y selecciona SDK Manager.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zUTTdlW1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k4jlcmory5a1qlraaedr.png" alt="moreactions" width="800" height="658"&gt;
&lt;/li&gt;
&lt;li&gt;En la opcion de SDK Plataforms, instalaras las versiones desde el Android 13 hasta el 7, para evitar complicaciones con la compatibilidad.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iFzdHxgg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9pts4wign89i6kbr1656.png" alt="SDKPlataforms" width="800" height="590"&gt;
&lt;/li&gt;
&lt;li&gt;Terminado la instalacion cerramos y volvemos a la pagina de inicio.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uYSRx-eW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/76zb9ys5zefo2le1nn73.png" alt="finish" width="800" height="585"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Instalacion del Emulador&lt;/strong&gt;
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Instalacion de Emulador, para poder ver los cambios en nuestro proyecto. Hacemos clic en "More actions" y dentro de ahi seleccionamos "Virtual Device manager"
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--v9zPCZl3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cx7f2t2vg9y2go058oio.png" alt="emulador" width="800" height="656"&gt;
&lt;/li&gt;
&lt;li&gt;Nos llevara a esta ventana, podemos ver que se nos descarga un emulador predeterminado pero para mas rapidez, procedemos a seleccionar uno nuevo y hacemos clic en "Create Device".
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uOh55K2x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fyvco1wbh92i4cvbo8ds.png" alt="newemulator" width="800" height="657"&gt;
&lt;/li&gt;
&lt;li&gt;Seleccionamos la categoria de "Phone" y "Phone 7 pro", luego le damos clic en next.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3_vMIUEl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5tyavbfe5263imv3gznx.png" alt="selection" width="800" height="531"&gt;
&lt;/li&gt;
&lt;li&gt;En la Imagen del Sistema, vemos que tenemos ya descargado la imagen R, pero seleccionamos el Tiramisu, ya que es mas rapido, una vez seleccionado le hacemos clic en next.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MT5ttGy---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mn3m2y2r1uxumfasgce2.png" alt="Imagesystem" width="800" height="525"&gt;
&lt;/li&gt;
&lt;li&gt;Acto siguiente el emulador tambien se comenzara a descargar.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ows2Tfp---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xdrq8qqlbhzioomu0tzs.png" alt="fin" width="800" height="579"&gt;
&lt;/li&gt;
&lt;li&gt;Verificamos la configuracion y le damos clcic en "finish"
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--OnxSbAnY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gxtu5m9to425gto41lv5.png" alt="finish" width="800" height="521"&gt;
&lt;/li&gt;
&lt;li&gt;Nuestro emulador se habra creado correctamente.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7Hnu4PFj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z5705yrfspi47f6fsc7t.png" alt="emulator" width="800" height="500"&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>android</category>
      <category>flutter</category>
      <category>programming</category>
      <category>firebase</category>
    </item>
    <item>
      <title>Como subir tu codigo en un repositorio de Github</title>
      <dc:creator>Abrilskop</dc:creator>
      <pubDate>Mon, 31 Jul 2023 02:10:58 +0000</pubDate>
      <link>https://dev.to/abrilskop/como-subir-tu-codigo-en-un-repositorio-de-github-1f4d</link>
      <guid>https://dev.to/abrilskop/como-subir-tu-codigo-en-un-repositorio-de-github-1f4d</guid>
      <description>&lt;ol&gt;
&lt;li&gt;Crear un nuevo repositorio en Github
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--afme0a0s--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ojzmdp135zivrxwk0qo4.png" alt="new repository" width="728" height="845"&gt;
&lt;/li&gt;
&lt;li&gt;Ir a la carpeta de archivos que queremos subir y abrir git bash
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--r-eHGuRU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0ffw155uyru19h67schc.png" alt="new repository" width="800" height="491"&gt;
&lt;/li&gt;
&lt;li&gt;Una vez abierto, inicializamos nuestro repositorio con el comando &lt;code&gt;git init&lt;/code&gt;, causando que automaticamente nos cree una carpeta escondida llamada .git
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--99XBCFlI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v2hujgtdf5bxq4bmlh42.png" alt="new repository" width="800" height="539"&gt;
&lt;/li&gt;
&lt;li&gt;Para confirmar todos los archivos que queremos añadir dentro de la carpeta, usamos el comando &lt;code&gt;git add .&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Para comprobar que nuestros archivos estan seleccionados, usamos el comando &lt;code&gt;git status&lt;/code&gt;
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5m_48bav--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s3a44rfqv1wjsdn2f3uo.png" alt="new repository" width="745" height="448"&gt;
&lt;/li&gt;
&lt;li&gt;Para realizar el commit, usamos el comando &lt;code&gt;git commit -m&lt;/code&gt; y le añades el comentario para realizar tu cambio entre comillas
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BFypUKkJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y4qqknofbkok42np0lyc.png" alt="new repository" width="770" height="457"&gt;
&lt;/li&gt;
&lt;li&gt;Creamos la rama principalcon el comando &lt;code&gt;git branch -m main
&lt;/code&gt;
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8QMG0fn1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uoqg3fimioyqa64pvsdg.png" alt="new repository" width="545" height="51"&gt;
&lt;/li&gt;
&lt;li&gt;Volvemos a Github y copiamos. Tambien podemos tipearlo &lt;code&gt;git remote add origin https://github.com/user/file.git&lt;/code&gt;
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WXA06kqy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ozcee28qrzmp1crxn3fs.png" alt="new repository" width="800" height="478"&gt;
&lt;/li&gt;
&lt;li&gt;Finalmente usamos el comando &lt;code&gt;git push -u origin main&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>github</category>
      <category>git</category>
      <category>vscode</category>
      <category>html</category>
    </item>
    <item>
      <title>¿ Por qué es importante la Normalización en Base de Datos ?</title>
      <dc:creator>Abrilskop</dc:creator>
      <pubDate>Thu, 02 Mar 2023 02:38:51 +0000</pubDate>
      <link>https://dev.to/abrilskop/por-que-es-importante-la-normalizacion-en-base-de-datos--5693</link>
      <guid>https://dev.to/abrilskop/por-que-es-importante-la-normalizacion-en-base-de-datos--5693</guid>
      <description>&lt;p&gt;Reduce la redundancia de datos en la base de datos.(Datos almacenados en un solo lugar), es decir simplifica el diseño de la base de datos provocando que la base de datos sea mas entendible, eficiente y de mantenimiento fácil. También mejora la integridad de los datos, ya que garantiza que los datos estén almacenados de manera coherente y sin errores.&lt;/p&gt;

&lt;h2&gt;
  
  
  ¿Cómo normalizar una Base de Datos en un gran proyecto?
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Analiza la estructura de la base de datos existente: Antes de normalizar una base de datos, es importante comprender la estructura actual de la base de datos y determinar si hay problemas de redundancia o inconsistencias en los datos.&lt;/li&gt;
&lt;li&gt;Identifica las tablas y atributos de la base de datos: Identifica las tablas y los atributos de la base de datos, y decide qué datos son necesarios para la aplicación. Debes asegurarte de que cada tabla tenga una clave primaria única y que los datos estén organizados de manera lógica y coherente.&lt;/li&gt;
&lt;li&gt;Aplica la primera forma normal (1FN): La primera forma normal establece que cada columna en una tabla debe tener valores atómicos y que no debe haber campos repetidos. Si la base de datos no está en 1FN, deberás dividir las tablas en múltiples tablas relacionales para cumplir con esta forma normal.&lt;/li&gt;
&lt;li&gt;Aplica la segunda forma normal (2FN): La segunda forma normal establece que cada columna en una tabla debe depender de la clave primaria de la tabla y no de otras columnas. Si la base de datos no está en 2FN, deberás dividir las tablas en múltiples tablas relacionales para cumplir con esta forma normal.&lt;/li&gt;
&lt;li&gt;Aplica la tercera forma normal (3FN): La tercera forma normal establece que no debe haber dependencias transitivas entre los atributos de una tabla. Si la base de datos no está en 3FN, deberás dividir las tablas en múltiples tablas relacionales para cumplir con esta forma normal.&lt;/li&gt;
&lt;li&gt;Continúa con formas normales superiores: Si es necesario, puedes continuar normalizando la base de datos en formas normales superiores, como la cuarta forma normal (4FN) o la forma normal de Boyce-Codd (BCNF), dependiendo de los requisitos específicos de la aplicación.&lt;/li&gt;
&lt;li&gt;Realiza pruebas y verifica la integridad de los datos: Después de normalizar la base de datos, es importante realizar pruebas exhaustivas para verificar la integridad de los datos y asegurarte de que la base de datos funcione correctamente.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Bibliografía
&lt;/h2&gt;

&lt;p&gt;Las siguientes fuentes son consideradas confiables en el campo de la normalización de bases de datos. Algunas de las fuentes son artículos de sitios web especializados en tecnología y bases de datos, mientras que otras son recursos educativos en línea, como materiales de cursos universitarios.&lt;/p&gt;

&lt;p&gt;Ruiz González, R. (s.f.). El modelo relacional y la normalización de bases de datos. Universidad Nacional de Educación a Distancia. Recuperado de &lt;a href="https://www.uned.es/personal/raulruizgonzalez/archivos/sat/tema2.pdf"&gt;https://www.uned.es/personal/raulruizgonzalez/archivos/sat/tema2.pdf&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Kellenberger, K. (2020). Introduction to Database Normalization. Essential SQL. Recuperado de &lt;a href="https://www.essentialsql.com/get-ready-to-learn-sql-database-normalization-explained-in-simple-english/"&gt;https://www.essentialsql.com/get-ready-to-learn-sql-database-normalization-explained-in-simple-english/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Guru99. (s.f.). Database Normalization: Explanation &amp;amp; Examples. Recuperado de &lt;a href="https://www.guru99.com/database-normalization.html"&gt;https://www.guru99.com/database-normalization.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Codecademy. (s.f.). Database Normalization: A Step-by-Step Guide. Recuperado de &lt;a href="https://www.codecademy.com/articles/what-is-normalization"&gt;https://www.codecademy.com/articles/what-is-normalization&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Study Tonight. (s.f.). Normalization of Database Tables. Recuperado de &lt;a href="http://www.studytonight.com/dbms/database-normalization.php"&gt;http://www.studytonight.com/dbms/database-normalization.php&lt;/a&gt;&lt;/p&gt;

</description>
      <category>database</category>
      <category>sql</category>
      <category>backend</category>
    </item>
    <item>
      <title>¿Que es Git?</title>
      <dc:creator>Abrilskop</dc:creator>
      <pubDate>Tue, 21 Feb 2023 22:49:30 +0000</pubDate>
      <link>https://dev.to/abrilskop/que-es-git-k9g</link>
      <guid>https://dev.to/abrilskop/que-es-git-k9g</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Git fue creado por la necesidad de mantener el primer proyecto de Linus Torvalds "Linux".&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Git es un sistema de control de versiones o software que nos sirve para registrar el historial de desarrollo de algún proyecto como aplicaciones, software, correcciones, actualizaciones, etc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es un repositorio?&lt;/strong&gt;&lt;br&gt;
Es todo proyecto seguido que tiene un historial de git en el cual se registran sus cambios.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es un commit?&lt;/strong&gt;&lt;br&gt;
Es un cambio registrado, aquí el desarrollador describe porque hizo el cambio.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Por qué en Git todo se trabaja por ramas, ramificacioes o bifurcaciones?&lt;/strong&gt;&lt;br&gt;
Rama principal llamada master, donde esta el proyecto que sale al publico. Es una copia exacta del proyecto pero de forma aislada, si todo va bien, unificas esa rama con el proyecto principal&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es un clon?&lt;/strong&gt;&lt;br&gt;
Es una copia exacta del proyecto o repositorio, cada equipo de desarrolladores tiene una copia exacta del proyecto(clon).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es un fork?&lt;/strong&gt;&lt;br&gt;
Es un proyecto diferente que se crea a través de otro, por ejemplos las distribuciones de linux&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Características de Git:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Git no necesita conectarse a un servidor local, ni internet.&lt;/li&gt;
&lt;li&gt;Es mas rápido.&lt;/li&gt;
&lt;li&gt;Cada desarrollador tiene un backup del proyecto lo cual lo hace seguro.&lt;/li&gt;
&lt;li&gt;Cuenta con ramas y fusiones para no malograr la rama principal.&lt;/li&gt;
&lt;li&gt;Git se asegura de que no haya datos corruptos.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Trabajo con Git basico&lt;/strong&gt;&lt;br&gt;
*. Empezamos creando un repositorio codificando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;*. En caso ya cuentes con un proyecto, para que se clone el proyecto y se cree una copia en el equipo local.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git clone
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;*. Empezar con el proyecto y mandar la descripcion de los cambios del repositorio a través de commits. Cada commit debe representar algo especifico, una nueva funcionalidad, correciones.&lt;br&gt;
Los cambios del desarrollador van al Stagin area, con el comando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git add`
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;*. Finalmente mandas el siguiente comando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git commit
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>discuss</category>
      <category>help</category>
    </item>
    <item>
      <title>Algoritmos Complejos</title>
      <dc:creator>Abrilskop</dc:creator>
      <pubDate>Mon, 20 Feb 2023 22:14:44 +0000</pubDate>
      <link>https://dev.to/abrilskop/algoritmos-complejos-4iah</link>
      <guid>https://dev.to/abrilskop/algoritmos-complejos-4iah</guid>
      <description>&lt;h2&gt;
  
  
  What is an Iterative solution?
&lt;/h2&gt;

&lt;p&gt;Es cuando se aplican las Estructuras de control(while, for, simple double) independientemente del lenguaje de programcion.(las que nos sirven par arealizar las iteraciones(es decir repetir))&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is an Recursividad solution?&lt;/strong&gt;&lt;br&gt;
Para su solución se llama así mismo.&lt;br&gt;
Cuando su solución esta basada en invocarse o llamarse a si misma.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es el caso base?&lt;/strong&gt;&lt;br&gt;
Cuando se conoce la solución&lt;br&gt;
Encontramos la solución cuando llegamos al caso base.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Qué es el caso recursivo?&lt;/strong&gt;&lt;br&gt;
Cuando llamamos a la misma función para llegar llegar a la solución.&lt;br&gt;
Cuando su solución esta basado en si mismo.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Un algoritmo puede tener mas de un caso base?&lt;/strong&gt;&lt;br&gt;
Existen algoritmo que tienen mas de 1 caso base, como el problema de fibonacchi.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
