2 years, 10 months agoRecords of reports Community DevCamp – action became available to developers from developers. The main speakers are recognized experts of community which heat how they see, use or are going to use the latest innovations for developers on .NET — .NET Native, Roslyn, cross-platform development on ASP.NET, the containers Docker, Azure Service Fabric, F# — and many other things.
As I noticed, many people use ReSharper, however completely ignore its expansions (plug-ins). In this article I will describe those from them which seemed to me useful. Names of expansions are clickable and conduct on their detailed description.
Now the huge number of tasks demands the big performance of systems. Infinitely physical restrictions do not allow to increase the number of transistors on a processor crystal. The geometrical sizes of transistors cannot be reduced physically as when exceeding perhaps admissible sizes the phenomena which are not noticeable at the big sizes of active elements begin to be shown — quantum size effects begin to affect strongly. Transistors begin to work not as transistors. And Moore's law here at anything. It was and remains the law of cost, and increase in number of transistors on a crystal is rather consequence from the law. Thus, to increase the power of computer systems it is necessary to look for other methods. This use of multiprocessors, multicomputers. Such approach is characterized by a large number of processor elements that execution of subtasks on each computing device brings to independent.
2 years, 10 months ago
There are different methods of localization of a WPF-application. The simplest and widespread option — use of the resource file Resx and the Designer-class which is automatically generated to them. But this method does not allow to change values "on the fly" when changing language. For this purpose it is necessary to open a window repeatedly, or to restart the application. I will show option of localization of a WPF-application with instant change of culture in this article.
So it turned out that for a long time the question torments: "How to monitor forums on subjects interesting to you, but the most important how to learn about emergence of new questions at the time of their publication". Of course, one may say, that there are mailings, RSS, but personally at me it turns out so that I reach mail, as a rule, with mobile during movement. To manually serfit resources not option at all. Here therefore if I could also answer, there is no computer near at hand. And after arrival the head is already stuffed absolutely to others. I can safely formulate the problem. The channel reporting and the most important, drawing my attention at the time of the publication of a new question is necessary.
Until recently it I considered some IM, for work of Telegram I do not use, and with the others all something not absolutely so.
In life of the PVS-Studio analyzer the important event took place — in the latest version verifiability of the code written on C# was added. Being one of developers of this analyzer, I just could not pass by, without having checked some project. It is clear, that it will be interesting to very few people to read about verification of small and unknown projects therefore it was necessary to select something known, and the choice fell on MonoDevelop.
One night the son approached me and told that he wants to play Mario. In the summer at the grandmother at the dacha he liked "to be cut" in rainy weather. And behind a window just a rain. Without hesitation I downloaded to it the first emulator 8 a bit prefix and game. However, it turned out that pleasure from game on the keyboard at all not that. To go to buy the joystick was already late. And then I thought that it is possible to do also without it. Near at hand we had old Nokia Lumia, its sizes and a form approximately matched our needs. It was decided to write the joystick. The son went to draw design on a sheet of paper in a section, and the father went to make coffee and to think, as if to perform this idea with the smallest time expenditure.
I decided to go on the way of the smallest (from my point of view) resistance. The prefix emulator should specify pushed buttons in settings, our application means has to click. Clicking of buttons can be emulated by means of old kind WINAPI.
The client-server application became final idea. The client (phone) when clicking the button sends request for the server which, in turn, depending on what came emulates clicking or release of the button of the keyboard. Communication is performed through sockets. It seems everything is simple. We begin to do.
In four months, at the end of April, in four cities of Russia (St. Petersburg, Moscow, Omsk and Yekaterinburg) there will take place the only conference in Russia on test automation – QA: Conference. This conference is developed for the specialist of the widest profile – Automation Engineer and will cover — consistently, all subjects:
2 years, 10 months ago
We have one .NET-application which is able to load and use plug-ins. Plug-ins — business good. It is possible to expand functionality, it is possible to update quickly them from the website, it is possible even to give to users SDK and to allow to write the plug-ins. We also did all this. Our plug-ins represented normal .NET-assemblies which needed to be thrown in a certain folder from where the basic of the application loaded them and used. Well, you, probably represent as — Assembly.Load (), we look for the class implementing the necessary interface further, we create object of this class, etc. All this worked long ago, is stable and nothing portended trouble. But suddenly at some point there was a need to create the plug-in consisting of several files. In this regard was decided to consider as a plug-in not just .NET-assembly (1 file), and zip-archive in which can be as one assembly, and several files. In this regard plug-ins in archives were necessary to teach to pack the bild-server, and the main application — to extract them in the right place. In general a task on 10 code lines. Nothing portended trouble. And here I from the bild-server download collected archive with a plug-in, I will extract it in the necessary folder, I start the application, and … does not work! Stop how does not work? It same plug-in!
Further — more. I ask to do the same procedure my colleague, on its computer. It tries — and everything works for it! But how so? One application version, the same file from the bild-server. Some difference in an environment? I sit down at the colleague's computer, I try once again — does not work! It in it tries time on mine — works! That is it turns out that the file "remembers" who extracted it! We call the third colleague to observe this circus. Consistently, on the same computer, in turn we do the same actions: we download archive with a plug-in, we will extract in the necessary folder, we start the application. When it is done by me — the program does not see a plug-in when it is done by the colleague — everything works. On the third circle of these interesting experiments suddenly we notice a difference in actions: I extracted a plug-in with standard means of Windows, and my colleague — with the help 7-Zip. Both was caused by us from a context menu of archive so in the beginning nobody noticed a difference in click on not that point. Well ok. It turns out, the file retrieved from zip-archive with the help 7-zip differs from the same file from the same archive retrieved by means of the standard Windows archiver?
By the way, until you opened article under a cat, answer for yourself a question whether there can be it that contents of files of valid zip-archive at extraction 7-zip and through the conductor of Windows will be a miscellaneous?