Passa al contingut principal

Entrades

Secret Santa

Per fi, i fruit de la necessitat he creat una nova "aplicació". Realment és una web per a mòbil, però que es pot visitar com aplicació des de qualsevol mòbil (bo, de moment només windows phone i android). Es tracta d'una aplicació per a fer els sortejos d'amic invisible. Cada usuari tindra un altre usuari com a resultat. També es pot veure via web a : http://secretsanta.vicentfernandez.cat Podeu veure unes captures de pantalla:

Comence un curs de programació

He començat un curs de programació (realment seran una série de cursos), obert a tot el públic clar (es pot entrar com a visitant), http://moodle.plataformesdigitals.cat/course/view.php?id=8 La idea és anar fent un curs o cursos de totes les fases de programació: Programació bàsica (Introducció a la programació)  Entorns de programació Programació Orientada a Objectes Programació de jocs Programació RAD Programació Mòbil Programació servidor TDDs Gestió de projectes (gestió de codi, personal..) ...

Quan dos "gurús" recomanen el contrari

Ja m'ha passat alguna vegada i fa poc estava comentant-ho amb un col·lega (Hola Master Jail /Juan Ramon ;)). Després de llegir-me el llibre Clean Code de Robert C. Martin, vaig començar a llegir-me el llibre Test-Driven Development by Example de Kent Beck. El llibre me l'havia recomanat molta gent, des de Juan Ramon fins al mateix autor de Clean Code al seu llibre. La meua sorpresa ha sigut al inspeccionar les recomanacions d'eliminació de duplicitat al fer els tests, al final el codi del test queda així: public void testMultiplication() {    Dollar five= new Dollar(5);    assertEquals(new Dollar(10), five.times(2));    assertEquals(new Dollar(15), five.times(3)); } o encara pitjor: public void testEquality() {      assertTrue(new Dollar(5).equals(new Dollar(5)));      assertFalse(new Dollar(5).equals(new Dollar(6)));          assertTrue(new Franc(5).equals(new Franc(5)));   ...

TDD estan molt bé però...

Doncs com ja heu vist (si és que algú segueix el meu bloc, clar ;)) que estic intentant aprendre a programar decentment. I intente, per això, gastar TDDs. Però de vegades em planteja més problemes propis del sistema de test, que si no els gastara. L'exemple que m'ha fet "pedre" unes quantes hores, és amb el nunit de Visual Studio, fent un test d'una classe em C# de Windows Phone Class Library (target 7.1 SDK, no sé si això és rellevant però pense que no). En resum, el test seria algo així:    [TestMethod]         public void testAutenticadorLogin()         {             Autenticador au = new Autenticador("http://localhost", 800, "test", "test");             au.login();         } Què simplement intenta autenticar mitjançant un webservice instal·lat en localhost, l'usuari test i la contrassenya test. Doncs sempre que intentava llançar el test em tra...

Múltiples plataformes amb Visual Studio II ( i Estrenant GitHub )

Ja fa temp que volia fer alguna cosa semblant. Ja fa temps vaig crear un parser C# per a feeds atom que val tant per Android, com per a WP ( i deuria de valer per a IOS també). Molt modest però valia per a fer aplicacions que llegiren de blogs personals. El parser formarà part de d'una col·lecció que aniré afegint anomenada (molt originalment) util, que es pot trobar en  https://github.com/fercavi/util . La classe anomenada cAtom (notació hongaresa, la vaig fer abans de llegir Clean Code ;)), només té una operació, Run() ;) (realment 2, ara ho explique).  Quan acabe el Run tindrà dos llistes, una de títols (getTitle) i una de notícies (getValue). Els passos seran els següents: 1. Inicialitzar-la en el constructor, diguent-li la url que volem llegir i, opcionalment, el nombre d'elements que volem extraure (per defecte 10). 2. Afegir-li un callback, en els mòbils la majoria d'events són asíncrons, per tant necessitarem una funció de callback que serà la que carregue la i...

Múltiples plataformes amb Visual Studio

Si recordem estàvem creant un dau fa uns quants posts (m'ha pillat vacances, i les vacances, vacances són ;)). Ara anem a aprofitar el projecte que teníem  que simplement era test i la classe dau, i anem a afegir un nou projecte, per exemple Windows phone: (Botó dret sobre la solució i afegir nou projecte) seleccionem Windows phone: Afegim un botó que quan fem click cree un dau, i mostre el número. Haurem de referenciar els projectes Project->Add Reference, seleccionar projecte i posem el projecte dau per a poder crear el dau, a banda de es recomanable que tot tinga el mateix namespace, si no haurem d'anar afegint usings. Es possible que si actualitzeu els namespaces vos done problemes. Haureu també de canviar-ho als arxius .xaml: x : Class ="RollDice.App ... on RollDice és el nom del namespace . Afegim un botó, i un event capturador de l'event: private void Button_Click_1( object sender, RoutedEventArgs e) {        ...

Xamarin Studio

Hem va quedar pendent, fa dos posts, explicar com fer una solución en VS multiplataforma. Per a explicar-ho el primer que necessite és un framework multiplataforma. He elegit Xamarin, podía haver elegit qualsevol altre, però este em permet escriure en C# tot el codi, davall el paraigüa de Mono. Si només vols fer programes sense reutilitzar cap component extern ni res, la versió és gratuïta. Si per exemple vols fer jocs i utilitzar Monogame (port de XNA per a moltes plataformes) ahí has d'adquirir alguna versió de pago. També pot ser que vullgues utilitzar VS per a fer programes en Android amb C#....  Doncs hauràs de pagar mínim 300$ per desenvolupador per plataforma mínim. Pot parèixer un poc car, però si vas a dedicar-te professionalment a desenvolupar aplicacions per a móbil no tens més remei (d'este o d'altre similar). M'explique, imaginem que vas a fer un programa per a mòbils i vols fer-ho per a les plataformes més gastades (Windows phone, Iphone i Android). Tens d...