Developers Club geek daily blog

We look for errors in MonoDevelop

1 year, 9 months ago

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.

Read more »


New Year's check of .NET Core Libraries (CoreFX)

1 year, 10 months ago
About a year ago Microsoft uploaded publicly the source code of such projects as CoreCLR and CoreFX. The last project was not interesting to us until recently because it is written in the C# language, but not C ++. But with an output of the new PVS-Studio 6.00 version supporting projects and in the C# programming language I decided to return to CoreFX and to write article.

Introduction


.NET Core is modular implementation of libraries and runtime environment which includes a. net Framework subset. .NET Core consists of a set of libraries, called "CoreFX" and the small optimized working environment of "CoreCLR".

.NET Core extends open source which is available on GitHub:
These are the large products from Microsoft containing the qualitative source code, but suspicious code locations can all the same be found.

About check of CoreCLR it is possible to read in article "PVS-Studio: 25 suspicious fragments of a code from CoreCLR".

The CoreFX project about which the speech in article will approach was checked by means of the static PVS-Studio 6.00 analyzer which supports now and C#!

Read more »


Mono и ОС МСВС

2 years ago

Импортозамещение! Это очень популярное нынче слово затмило даже нанотехнологии! Оно несет как большие перспективы так и множество проблем. Не так давно это коснулось и меня. Мне была поставлена задача запустить наше программное обеспечение на операционной системе ОС МСВС. Очень интересное дело, учитывая, что Линукс я видел последний раз лет 8 назад, а наше ПО написано под .Net.

Read more »


Vulnerability in Xamarin for Android: we substitute dll and we eat free of charge

2 years, 5 months ago

Introduction


This history has begun even last summer: we with friends have come into institution of fast food which has only just implemented mobile discount application at night. Application has been installed, the free food is received, the traffic is saved in the .pcap-file, and, naturally, there was desire to rummage in it, to learn how it works. The program has been written on C# with use of multiplatform framework for development of the Xamarin mobile applications; at that time apktool could not collect correctly changed apk and came to the end with error. Long time I used this application, accumulated points, spent them, sometimes natykayas for posts about wrapping at forums, however, accounts of nakrutchik quickly enough banned.

Something to investigate passion and desire as it is normal at me it happens, does not appear from nowhere. This time the thief who has rested at me purse with all cash cards has sponsored, and I had no other output, except how to buy lunch in this institution, previously having wound points. And coffee I, in difference fromChikey , do not love. However, article at all not about it.

image
The changed name is extremely similar to the present name of institution

Read more »


PVS-Studio: 25 suspicious fragments of code from CoreCLR

2 years, 7 months ago

The Microsoft corporation has uploaded publicly the source code of the CoreCLR engine which is the key .NET Core element. This news, of course, could not but draw our attention. After all the more audience at the project, the will be more disturbing to look the found suspicious places. Despite authorship of Microsoft as in any large project, is here on what to look and of what to think.

Introduction


CoreCLR is the environment of execution of .NET Core, executing such functions as garbage collection or compilations in final machine code. .Net Core — is modular implementation of .Net which can be used as base for huge number of scenarios.

The source code since recent time is available on GitHub and was checked by means of PVS-Studio 5.23. As well as I, persons interested can receive full log of check by means of Microsoft Visual Studio Community Edition which output too was recent news from Microsoft.

Read more »


Пишем и запускаем приложения ASP.NET vNext на Маке

2 years, 11 months ago
ASP.NET восстала из пепла и делает уверенные шаги к завоеванию мира! Во первых Microsoft открыла часть исходников .NET и продолжает их открывать. Новая версия ASP.NET vNext с самого начала open source и размещена на GitHub. Во вторых отныне .NET будет кроссплатформенным, ровно как и разрабатываемый веб-сервер. А это значит, что веб-приложения на ASP.NET vNext вы сможете разрабатывать в своих уютных Макашечках и Убунточках.
Чем я незамедлительно и решил воспользоваться.
ИМХО. Думаю вам не надо объяснять о красивом синтаксисе C#, строгой типизации и высокой скорости работы.
Что касается ASP.NET, то раньше все было печально, но за последние несколько лет MS достигла большого прогресса в разработке ASP.NET MVC веб-фреймворка взяв лучшие практики из RoR, Laravel и других. А когда несколько месяцев назад они официально объявили что открывают исходники своего фреймворка и становятся кроссплатформенными, пламя любви к ним вспыхнуло вновь.

Read more »


Поговорим про отличия Mono от MS.NET

2 years, 11 months ago


С каждым днём кроссплатформенная разработка под .NET становится всё более реальной. А после недавнего анонса официальной поддержки Linux/MacOS счастливое будущее стало ещё немножечко ближе. Вышеприведённая картинка утратила свою былую актуальность, ведь исходники теперь будут под MIT. Впрочем, писать кроссплатформенные .NET-приложения можно достаточно давно ? в этом нам помогает Mono. Но вот отношение к нему в сообществе довольно неоднозначное. Мне зачастую приходится слышать изречения вроде ?Mono тупит, под него всё в три раза медленнее работает? или ?Под Mono вообще нормально ничего не запускается?. Причём очень редко доводится слышать от этих людей конкретные факты. Вопросы ?А что конкретно тупит?? или ?А что конкретно не работает?? повергают их в ступор. Не всех (некоторые способны на конструктивную дискуссию), но большинство. Чаще всего начинаются возмущённые ответы в духе ?Да вообще ничего не работает! А если и работает, то очень медленно!?. В конце беседы создаётся впечатление, что каждая конечная машинная команда под Mono работает в несколько раз медленнее, а в половине исходников стоят throw new Exception().

В этом посте мне хотелось бы немножко поделиться опытом. Не так давно мы портировали наш продукт анонс на Хабре) под Linux. Могу заявить, что работает он вполне нормально. Да, чутка медленнее, чем под Windows на классическом .NET от Microsoft (далее ? MS.NET). Но работает вполне стабильно, а падение производительности не принципиальное. При этом продукт у нас достаточно большой и вполне попадает под категорию enterprise, а возможности C#/.NET мы используем на полную катушку. Так что завести большое серверное приложение под .NET реально ? было бы желание. Также мне довелось беседовать с разными разработчиками, которые пишут что-то под Mono ? истории в большинстве своём успешные.

Но почему же тогда встречается столько негатива в сторону Mono? Я считаю, что проблема в том, что люди не особо хотят разбираться в разнице между рантаймами. Запустили разок какое-нибудь .NET-приложение под Linux на Mono 2.4, а оно с ходу не запустилось ? всё, Mono целиком плохой, не будем его использовать. А в итоге виноват оказывается один-единственный метод, у которого реализация немного отличается от MS.NET. Новые версии Mono выходят раз в пару месяцев, реализацию уже давно поправили, но люди всё равно продолжают ходить и хаять бедный Mono, не желая разбираться в деталях.

Сегодня я приведу несколько примеров того, чем вообще могут отличаться разные рантаймы.

Read more »


Xamarin.Android: плагин к VS2013 для редактирования aXML в IntelliJ IDEA или Android Studio

2 years, 11 months ago
Xamarin предлагает неплохие средства для проектирования интерфейса iOS (интеграция с XCode). Однако то, что касается Android, вызывает уныние и печаль ? никаких подсказок для редактирования xml (хотя, говорят, в каком-то виде они есть) и слабенький дизайнер. На юзервойсе и форуме народ давно уже просит интеграцию с Android IDE.



Некоторые научились копировать ресурсы в Android проект, созданный в IDEA, Android Studio, etc. И потом копировать назад изменения в Xamarin проект. Я немного устал от этой процедуры и решил это автоматизировать при помощи плагина, который бы синхронизировал папку Resources между Xamarin и IDEA (Android Studio или любая другая IDE с поддержкой gradle) проектами.

Read more »


Microsoft открывает исходный код .NET и делает его кроссплатформенным

2 years, 11 months ago


Более чем 12 лет фреймворк .NET был основной моделью программирования для разработчиков, которые хотели построить приложения для Windows. Но в попытке сделать множество средств их разработки кроссплатформенными, сегодня Microsoft объявило о своих планах перенести .NET на Mac и Linux и открыть большую часть серверного ядра .NET (не клиентской части), начиная со следующей версии.

Read more »


Application programming on Android by means of Xamarin and F#

3 years, 3 months ago
image

Hi!

Recently Xamarin has announced competition on development of mobile application in the functional F# programming language.
It has been connected with Xamarin 3 output with complete support F#. I have decided to distract from daily tasks and to try to participate especially as I look on F# long ago, but I had no chances to get acquainted with it in more detail. For participation in competition I have decided to develop application which idea has been offered by someone in the course of discussion of sudden take-off of the Yo mobile application. Here quote:
Idea for startup, the working name? where are you??.

The sense is simple, the girl installs application, specifies in it number of the young man and after that there is big gnopka of sending the message? where are you?? #startup #idea

Why not?

Note
I wrote this post in parallel working on application. Therefore it big and places not really logical.

Read more »