Serie tutorial Xamarin Forms 101

Saludos en esta entrada les compartiré el videos donde doy inicio a una serie tutorial sobre Xamarin forms la cual denominare Xamarin Forms 101
Donde aprenderemos que es Xamarin y como funciona.



Si te ha gustado esta Entrada, por favor, compartir y dejar su comentario a continuación. Si tienes alguna pregunta, no dudes en enviar aquí. Voy a responder a todas las preguntas! 🙂 .

Seminario desarrollo aplicaciones móviles – Xamarin

Saludos en esta entrada les compartiré el video de el momento de mi participación como speaker en  el Seminario Internacional: “Desarrollo de Aplicaciones Móviles” hablando sobre #Xamarin. Llevado a cabo en el auditorio principal del edificio de Postgrado de la Sede de la universidad UAPA recinto Santiago.

Seminario desarrollo aplicaciones móviles – Xamarin

Si te ha gustado esta Entrada, por favor, compartir y dejar su comentario a continuación. Si tienes alguna pregunta, no dudes en enviar aquí. Voy a responder a todas las preguntas! 🙂 .

Obten Resharper GRATIS de JetBrains

Resultado de imagen para resharperSaludos si eres estudiante y quieres aprender a desarrollar utilizando las herramientas que usan los profesionales como el famoso Resharper que se integra a la perfección con Visual Studio, solo debes registrarte aqui con tu Email educativo, ya sea de tu Instituto o Universidad.

Esto nos dará acceso a Resharper Ultimate, te estarás diciendo pero a de ser un trial, pues no, no es así recibirás un licenciamiento de estudiante y la activación se completara cuando terminemos la instalación elegiremos la opción de activar con la cuenta y en la ventana introducimos nuestro usuario y contraseña de JetBrains, hecho esto tendremos acceso a todas las funcionalidades.

Pero de seguro te preguntaras.

Que es Resharper ?

Resharper es un complemento indispensable para aquellos que utilizamos Visual Studio, ya que provee una gran cantidad de funcionalidad que potencia el IDE e incrementa notablemente la productividad del desarrollador.

Algunas de las funcionalidades más útiles e impresionantes de R# se encuentran a nivel de Generación de Código, RefactoringPruebas Unitarias.

También es impresionante el uso de los HotKeys, incrementando nuestra productividad.

Si eres un programador  y tienes alguna  pregunta por favor comenta, y si eres un programador con mucha experiencia en R# y consideras que se me escapo comentar algo, déjamelo saber y lo actualizare el post.

 

Skills que todo programador Junior C# debe tener

C#Una pregunta muy común que me encuentro en los pasillos de mi alma máter, de parte de mis compañeros es que realmente debe saber un programador C# que recién empieza en el desarrollo de software. La mayor preocupación es, que cosas o tecnologías son criticas para el primer empleo y mantenerlo.

Si estas buscando tu primer empleo como programador junior C#, o acabas de conseguir uno, esta entrada te ayudara a tener una visión mas clara, tratando de ser un [patrón de aprendizaje] que podría servir de dirección, sin importar lo que vamos a desarrollar sea aplicaciones web o de escritorio.

Antes de entrar en detalle, necesitamos tener algo claro: [como programador junior, no se espera que lo sepamos todo !! ], todo programador tiene fortaleza en áreas especificas basado en proyectos que ya a trabajado.
Por cada skill al final de cada tema dejare links con recursos que he encontrado en la Internet y considero buenos recursos para aprender, si tu conoces mejores, por favor déjamelo saber y lo actualizare en el articulo.

Skills Fundamentales

Cualquiera que sea el área en la que te quieras enfocar a desarrollar aplicaciones de escritorio o Windows, a continuación algunas cosas que debes saber.

  • Estructuras de datos y Algoritmos
  • Bases de datos (MS SQL Server)
  • ORM (Entity Framework

Estructura de Datos

Si no tienes estudios universitarios, es fuertemente recomendado que al menos dispongamos de un mes y estudiemos estructura de datos y algoritmos. Estos son como el alfabeto del desarrollo de software. Claro !! podemos obviar esta parte y saltar directamente al desarrollo web, pero créeme, hay una gran diferencia entre un programador que ya ha estudiado estructuras de datos y algoritmos y uno que no lo ha hecho. Estas cosas realmente ayudan a pensar como un programador.
Estarías sorprendido de que las grandes compañías como Microsoft, Amazon dedica una parte significante de su entrevista técnica sobre estructuras de datos y algoritmos, no sobre ASP.NET CORE o WPF !! Porque ellos solo quieren ver si tu realmente piensas como programador o no.

Este es un buen libro para iniciarte en el tema:
Data Structures and Algorithms Made Easy

Bases De Datos

SQL Server es la DBMS mas usada por programadores .NET, asegurate de estar familiarizado con los conceptos básicos de las bases de datos relacionales y como crear tablas, vistas y procedimientos almacenados en SQL Srver.
T-SQL es el lenguaje de consulta, asegúrate de saber como hacer SELECT, INSERT, UPDATE, DELETE, JOIN y GROUP BY.

T-SQL Step by Step

O/RMs

Cuando estamos trabajando con una base de datos relacional, podemos usar un Object/Relational Mapper (O/RM) para guardar o consultar objetos en una base de datos, en el ecosistema .NET el mas usado es Entity Framework es el mas usado por todos los equipos.
Getting Started with Entity Framework 7

Desarrollo Web

Desarrollar aplicaciones web es fundamentalmente diferente a las aplicaciones de escritorio ya que las tareas se dividen en dos partes, Front-end y Back-end, pero a su vez los programadores estamos divido en tres grupos:

  • Front-end developers
  • Back-end developers
  • Full-stack developers (estos hacen ambas tareas)

Tu puedes elegir una dependiendo de tu interes, un Full-stack tiene mas oportunidad de empleo sobre los demas.

Programador Front-end

Como programador Front-end deberas estar familiarizado con HTML, CSS y JavaScript como minimo.

HTML es un lenguaje, que se utiliza para construir la estructura de una pagina web. No es un como un lenguaje de programación como C#, este no tiene logica. Usamos CSS para hacer que nuestra pagina se vea bonita. CSS es todo acerca de los estilos (colores, bordes, etc). Y finalmente usamos JavaScript para agregar interacción al sitio web.

HTML5 & CSS Fundamentals on Channel9
Javascript on Code Academy

Programador Back-end

ASP.NET MVC es el framework dominante para desarrollar aplicaciones web sobre un servidor. Como programador ASP.NET MVC, deberíamos tener una familiaridad básica con HTML, CSS y Javascript. Entonces, lo recomendable seria que empecemos con front-end y luego movernos hacia la programación back-end, lo que nos podría hacer un programador full-stack.

Aquí un tutorial completo sobre ASP.MVC

A Step-by-Step ASP.NET MVC Tutorial for Beginners

Programador aplicaciones de escritorio

Si lo que quieres es desarrollar aplicaciones de escritorio para windows,el 99% de los trabajos allá fuera requieren saber XAML, WPF o Windows Forms.

WPF: A Beginner’s Guide

Si eres un programador junior y tienes alguna otra pregunta por favor comenta, y si eres un programador con mucha experiencia y consideras que se me escapo comentar algo, déjamelo saber y lo actualizare el post.

Introducción a Xamarin Android, guía total

Saludos en esta entrada les compartirá un video sobre Xamarin Android, una poderosa herramienta de desarrollo de software.

Xamarin Android

Si te ha gustado esta Entrada, por favor, compartir y dejar su comentario a continuación. Si tienes alguna pregunta, no dudes en enviar aquí. Voy a responder a todas las preguntas! 🙂 .
Sigue leyendo “Introducción a Xamarin Android, guía total”

Vlog #03 Entorno mínimo de desarrollo con Xamarin

297072LOGOSaludos en esta entrada hablare sobre el entorno mínimo de desarrollo con Xamarin, con información muy util para aquellos que no tengamos muchos recursos en nuestro ordenador.

Si te ha gustado esta Entrada, por favor, compartir y dejar su comentario a continuación. Si tienes alguna pregunta, no dudes en enviar aquí. Voy a responder a todas las preguntas! 🙂 .

Estandares de Codificacion y nomenclatura C#

 Muchos nos iniciamos en el mundo de la programación escribiendo código y testeando, si funciona seguimos avanzando hacia el siguiente tópico de estudio o meta que nos hayamos trazado, olvidándonos de los estándares y nomenclaturas utilizados en el lenguaje de programación que estemos utilizando; en nuestro caso estaremos estudiando algunos estándares y nomenclaturas utilizados en C#.

Aquí vamos!!

A continuación presentare algunos  estándares de codificación C#, las convenciones de nombres, y las mejores prácticas.
Puedes Utilizarlos en tus propios proyectos y / o ajustarlos a tus propias necesidades.

Usa PascalCasing.

Esta la usamos para los nombres de métodos y clases.

Que es PascalCasing?

Es un procedimiento de programación común en el lenguaje Java y .Net. La nomenclatura está compuesta por tantas palabras como sean necesarias. La primera letra de cada una de las palabras irá siempre en mayúsculas. Debemos tener en cuenta que se omite el uso de articulos.

Ejemplo: GetInformation y no GetTheInformation.

public class ClientInformation
{
    public void ClearData()
    {
        //...
    }
    public void CalculateData()
    {
        //...
    }
}

Razon: Consistente con el Microsoft .NET Framework y fácil de leer.

Usa camelCasing.

Esta la usamos para los argumentos de métodos y variables locales.

Que es camelCasing? Es un estilo de escritura que se aplica a frases o palabras compuestas. El nombre se debe a que las mayúsculas a lo largo de una palabra en CamelCase se asemejan a las jorobas de un camello.

Ejemplo:

public class EventLog
{
    public void Add(LogEvent logEvent)
    {
        int itemCount = logEvent.Items.Count;
        // ...
    }
}

Razon: Consistente con el Microsoft .NET Framework y fácil de leer.

No uses Hungarian.

No usar notación o cualquier otro tipo de identificación en los identificadores

Ejemplo:

// Correcto
int contador;
string nombre;
 
// Evita
int iContador;
string strNombre;

Razón: Consistente con el Microsoft .NET Framework y Visual Studio IDE hace que la determinación de tipos sea más fácil. En general se quiere evitar indicadores de tipo en cualquier identificador.

No uses Screaming Caps.

Es decir evita gritar mayúsculas para  constantes y variables de sólo lectura.

Ejemplo.

// Correcto
public static const string TipoEntrega = "VIP";
 
// Evita
public static const string TIPOENTREGA = "VIP";

Razón: Consistente con el Microsoft .NET Framework. Las mayúsculas llaman demasiada atención.

 

Evita usar abreviaciones.

Evita usar abreviaciones excesivas, con excepción de abreviaciones comúnmente usadas como: Id, Xml, Ftp, Uri.

Ejemplo:

// Correcto
UserGroup userGroup;
Assignment employeeAssignment;
 
// Evita
UserGroup usrGrp;
Assignment empAssignment;
 
// Excepciones
CustomerId customerId;
XmlDocument xmlDocument;
FtpHelper ftpHelper;
UriPart uriPart;

Razón: Consistente con el Microsoft .NET Framework y evita abreviaturas inconsistentes.

 

No uses Underscores.

No uses underscores en identificadores. Excepción: se puede prefijar las variables estáticas privadas con un underscores.

Ejemplo:

// Correcto
public DateTime citacliente;
public TimeSpan tiempotranscurrido;
 
// Evita
public DateTime cita_cliente;
public TimeSpan tiempo_transcurrido;
 
// Excepcion
private DateTime _fechaRegistro;

Razón: Consistente con el Microsoft .NET Framework y hace que el código sea más natural para leer.

 

Resumen: En esta entrada aprendimos algunas buenas practicas a la hora de escribir código así como las nomenclaturas y buenas practicas, si conoces alguna déjanos saber en los comentarios.

En una próxima entrada seguiremos tratando tan amplio tema.

Si te ha gustado esta Entrada, por favor, compartir y dejar su comentario a continuación. Si tienes alguna pregunta, no dude en enviar aquí. Voy a responder a todas las preguntas! 🙂 .

 

 

 

 

 

 

 

Algunas diferencias entre Char, Varchar, NChar y NVarchar en SQL Server

Esta semana paseandome por grupos de facebook, me llamo la entencion una discusion acerca del uso de estos tipos de datos, al ver como un usuario alardeaba de usar nchar al parecer porque le resulta mas divertido pulsar la tecla N, asi que  decidi escribir una entrada para el blog sobre ello.

 

 

 

 

 

¿Cuál es la diferencia , y que tan importante es la diferencia?

Char y NChar 

Cuando configuramos un campo de tipo Char o NChar, estamos indicando campos de tamaño fijo. Es Decir, si configuramos una tabla de la siguiente forma:

CREATE TABLE nombre_tabla
(
Campo1 char(10),
Campo2 nchar(10)
)

Campo1 Char(10), Campo2 NChar(10)

La diferencia entre Char y NChar es el soporte a carácteres Unicode “los carácteres Unicode ocupan más de 1 byte”. Por este motivo a la hora de almacenar algún valor, en el Campo1 siempre ocupará 10 bytes y en el Campo2 20 Bytes.

En este caso NChar es el que soporta Unicode.

Pero diras alto !! ahi vaquero, porque Campo2 seran 20 Bytes, esta es la formula usada para calcular el tamaño, la longitud x 2 , es decir 10 * 2 = 20 Bytes.

Varchar y Nvarchar

VARCHAR es la abreviación de variable-length character string y almacena 8,000 caracteres.   Es una cadena de caracteres de texto que puede ser tan grande como el tamaño de página para la tabla de la base de datos. Los campos de tipo Varchar o NVarchar son de almacenamiento variable

El tamaño almacenado dependerá del valor que se quiere guardar, el número de caracteres sólo configura el tamaño máximo que este campo puede almacenar.

Configuramos una tabla de la siguiente forma:

CREATE TABLE nombre_tabla
(
Campo1 varchar(10),
Campo2 nchar(10)
)

El tamaño almacenado dependerá del valor que se quiere guardar, el número de caracteres sólo configura el tamaño máximo que este campo puede almacenar.

En el caso del Campo1 el tamaño máximo será de 10 bytes, y en el caso del Campo2 el tamaño máximo será de 20 bytes.

El tamaño máximo de un VARCHAR es 8000 caracateres.

La “N” en NVARCHAR significa uNicode. Esencialmente, NVARCHAR no es más que un VARCHAR que soporta caracteres de dos bytes.  Lo que representara una longitud máxima de 4000 caracteres. Lo que significa tener la capacidad de almacenar caracteres especiales en este tipo de datos.

Y para que sirve Unicode? Si la columna donde almacenamos el texto es Unicode quiere decir que no tendremos problemas para guardar y recuperar caracteres que se usan en otros idiomas como el español (á é í ó ú ñ), pero con el español los problemas de visualización no son muy frecuentes, con el resto de idiomas es el problema (como el chino o japonés).

 

Unicode o No Unicode

Dependiendo de la información que queremos almacenar en nuestra base de datos, tendremos que definir si permitimos o no valores Unicode (Por ejemplo diferentes idiomas como el Ruso, Japonés, chino, …). Existen tablas de codificación de caracteres (Encodings) que poseen carácteres específicos de Doble Byte. Esto puede afectarnos a la hora de utilizar campos de tipo Char o Varchar, ya que un texto de 10 carácteres podría superar los 10 bytes, haciendo imposible la insercción del valor a la base de datos.

Resumen: En esta entrada aprendimos algunas diferencias entre Char, Varchar, NChar y NVarchar en SQL Server, si conoces alguna dejanos saber en los comentarios.

Si te ha gustado esta Entrada, por favor, compartir y dejar su comentario a continuación.Si tienes alguna pregunta, no dude en enviar aquí. Voy a responder a todas las preguntas ! :).

Uso IEnumerable C#

etSq-1IEnumerable  es una  aplicación del iterador en .NET. En este Post  vamos a tratar de aprender que es el  iterador y el problema que pretende resolver en detalle en breve. Pero si lo que buscas es un  definicion rapida, pragmática. Recuerde que cuando una clase implementa IEnumerable, es decir que se pueden enumerar. Esto significa que puede utilizar un bloque foreach para iterar sobre ese tipo.

Nota : Iteración significa el acto de repetir 
un proceso con la intención de alcanzar 
una meta deseada, objetivo o resultado.

En C#, todas las colecciones “collections” (por ejemplo, listas, diccionarios, pilas, colas, etc.) pueden enumerarse porque implementan la interfaz IEnumerable. Así sean cadenas. Se puede recorrer a través de una cadena usando un bloque foreach para conseguir cada carácter de la cadena.

La bueno de IEnumerable es que vamos a utilizar un mecanismo simple y consistente para recorrer cualquier objeto, independientemente de su estructura interna.

Ejemplo. Aqui les dejo un video del uso.

Este es realizando la misma acción pero sin  IEnumerable.

Resumen: Aprendimos que estas interfaces  del iterador. Su objetivo es proporcionar un mecanismo para recorrer un objeto sin conocer su estructura interna.

Si te ha gustado esta Entrada, por favor, compartir y dejar su comentario a continuación.Si tienes alguna pregunta, no dude en enviar aquí. Voy a responder a todas las preguntas ! :).

 

Windows 10 ya no sera GRATIS !!!

El sistema operativo Windows 10 de Microsoft se ha convertido en la versión de Windows con la mayor velocidad de adopción de la historia. Un año después de su lanzamiento, está presente en 300 millones de dispositivos.

Esta es la primera vez que Microsoft ha ofrecido una actualización gratuita para la nueva versión de su sistema operativo. A juzgar por los resultados, la estrategia ha funcionado. La empresa asegura en su blog que el uso en minutos de su navegador por defecto, Edge, ha crecido un 50% en el último trimestre y Cortana, el asistente virtual que acompaña a Windows, ha respondido ya más de 6.000 millones de preguntas.

Dejará de serlo el próximo 29 de julio. Ese día, todos los usuarios que no hayan actualizado su PC tendrán que pagar 119 euros por la versión básica de Windows 10. La inmensa mayoría de PCs a la venta, en cualquier caso, ya vienen con él instalado de serie.

Windows 10 Home tendrá un precio de venta estimado de 119 dólares. Windows 10 Pro un precio de venta estimado de 199 dólares. Y Windows 10 Pro Pack, que permitirá actualizar desde Windows 10 Home a Windows 10 Pro, tendrá un precio de venta estimado de 99 dólares. Todos ellos estarán disponibles en tiendas físicas o en línea.

Fuente|Microsoft