Fie ca 2016 sa va dea ceea ce va trebuie si ceea ce va doriti
La multi ani ,
Fie ca 2016 sa va dea ceea ce va trebuie si ceea ce va doriti
La multi ani ,
Am facut un playlist despre .NET in cinci minute. Deocamdata sunt 75 de minute la adresa
https://www.youtube.com/playlist?list=PL4aSKgR4yk4OnmJW6PlBuDOXdYk6zTGps
Si ca sa va fac viata usoara , apasati aici:
Pentru cod sursa – o sa fac in curind un proiect github
Si in cele din urma prezentarea mea Universal Windows App and C# – an unified experience with Cloud help
Daca vrei sa fii colegul meu la EA, te rog sa ma anunti:
Manages a team responsible for the creation and execution of automated test plans to ensure software products efficiently meet design specifications and EA’s quality standards. The ideal candidate will have experience in game testing, project and resource management, test automation, process and tool development.
The main responsibilities for this role are defined as follows:
– Manages the creation and execution of automated test scripts and test cases from specifications
– Establishes deadlines and prioritizes work assignments and assigns projects based on available resources to ensure automated testing is completed on schedule and within budget
– Oversees local tool implementation
– Manages a team of Automation Specialists and Analysts
– Responsible for defining, rolling out, supervising and reporting on test automation processes.
– Anticipates problems and future technical needs and takes necessary steps to address issues. Performs analysis, risk management and documents justification for new initiatives
– develop standards, KPIs, procedures, training manuals and other documentation for projects or internal use
– Participate in developing and maintaining good working relationships with the QA teams, QE and development teams in product development, project management and Automation deliverables.
– Reviews automation testing processes to improve product quality.
– Responsibility for the QA Automation team’s performance
Required:
Desirable:
O sa fiu speaker la Microsoft Summit 4-5 noiembrie 2015 . In afara de prezentarea mea va recomand “C# everywhere – Building Cross-Platform Apps with Xamarin and MvvmCross” de Flavius-Radu Demian ( si altele, insa la asta sigur ma duc)
Sper sa va vad acolo!
Pentru Covariance si Contravariance cititi :http://blogs.msdn.com/b/csharpfaq/archive/2010/02/16/covariance-and-contravariance-faq.aspx
Pentru CQRS cititi http://martinfowler.com/bliki/CQRS.html
Sa presupunem acum ca avem o clasa Implementation si o clasa derivata DerivedImplementation
public interface IFind { } public class Implementation : IFind { } class DerivedImplementation : Implementation { }
In dulcele stil CQRS , avem urmatoarea clasa de Command:
public interface ICommand<T> where T : IFind { bool Update(T t); } public class BaseServiceCommnand<T> : ICommand<T> where T : IFind { public bool Update(T t) { return true; } }
Ce credeti, se compileaza rindul de mai jos:
ICommand<DerivedImplementation> command = new BaseServiceCommnand<Implementation>(); Console.WriteLine(command.Update(new DerivedImplementation()));
Daca nu ( si nu!) ce trebuie adaugat ?
( nu, nu va ginditi la DI / IoC – e acelasi lucru)
Raspuns:
{
؛(ʇ ʇ)ǝʇɐpdn ןooq
}
puıɟı : ʇ ǝɹǝɥʍ
<ʇ uı>puɐɯɯoɔı ǝɔɐɟɹǝʇuı ɔıןqnd
Data viitoare , concluzii
Pentru Covariance si Contravariance cititi : http://blogs.msdn.com/b/csharpfaq/archive/2010/02/16/covariance-and-contravariance-faq.aspx
Pentru CQRS cititi http://martinfowler.com/bliki/CQRS.html
Acum partea intii – covarianta:
Sa zicem ca vrem sa implementam o parte din CQRS pe interfete:
public interface IFind { } public class ImplementationFind: IFind { } public interface IQuery<T> where T : class,IFind, new() { T Find(int id); } public class BaseServiceQuery<T> : IQuery<T> where T : IFind { public T Find(int id) { return new T(); } }
Deci ImplementationFind implementeaza IFind
Ce credeti, se compileaza rindul de mai jos:
IQuery<IFind> da = new BaseServiceQuery<ImplementationFind>(); Console.Write(da.Find(1).GetType());
Daca nu ( si nu!) ce trebuie adaugat ?
( nu, nu va ginditi la DI / IoC – e acelasi lucru)
Raspuns:
{
؛(pı ʇuı)puıɟ ʇ
}
puıɟı : ʇ ǝɹǝɥʍ
<ʇ ʇno>ʎɹǝnbı ǝɔɐɟɹǝʇuı ɔıןqnd
( intrati pe http://www.fliptext.info/ si inversati textul )
Acum ginditi-va si de ce e asa de important un cuvint in C# – de tipul out.
Data viitoare contravarianta
Marți, 13 octombrie 2015, ora 19:00, va fi a opta întâlnire pe anul 2015 a www.adces.ro
Locul de întrunire va fi la Electronic Arts( vezi detalii mai jos) .
Din agendă:
Cristian Pascariu •
Durata estimata : 1h..1h30 min (Apoi bergem la bere 😉 )
Data: 13 octombrie 2015, ora 19:00 Locație: sediul Electronic Arts – Afi Park 2 .
Te rog sa iti iei buletinul cu tine.
Harta: https://goo.gl/maps/Kt8ZL
Detalii acces: Poți ajunge aici cu următoarele mijloace de transport în comun: – Metrou, Stația Politehnica – Orice (105, 69, altele ) pina la mall AFI Palace Cotroceni si intrebi de cladirea AFI Park 2.
Telefonul meu este 0728200034
Gasiti pe FB evenimentul la adresa : https://www.facebook.com/events/1004030386285298/
Am avut de facut un deploy la o aplicatie C# care folosea un pachet de NuGET care folosea niste lib-uri compilate de C/ C++ ( cu DllImport). Acestea erau downloadate de pe GitHub .
Mi-a dat eroare ca ii lipseste libraria – culmea, ea exista! Asa ca , impreuna cu un coleg, la ora 18:00, am inceput sa vedem ce avea. Dependency Walker ne-a indicat ca lipsea un dll de debug de VC++ – si StackOverflow ne-a dat solutia : compilati in Release mode.
De aici ne-am izbit in tot felul de probleme – de la faptul ca lib-urile pe release nu se duceau unde trebuie la faptul ca nu reusea sa linkeze si i se parea ca nu gaseste definitia. De la eroarea ca nu stie sa transforme din LPCST in LPCSTRW la macrouri pre-processor.
TOTAL : La 20:30 am terminat de compilat. DOUA ORE JUMATATE PENTRU COMPILARE DIN DEBUG IN RELEASE.
Remarca finala a colegului : E ok acuma.
Remarca finala a mea: Cine stie ce naiba s-a schimbat din cauza de definitii. E cazul sa retestam tot !
Nu stiu daca ati citit
Daca nu, faceti-o. Va pune in ordine ideile pentru GUI.