Pull to refresh
14
0
Nikolay Rumyantsev @Dorgaliser

User

Send message
Привет, Вадим :)

Давай определимся со значением слова «прозрачный» в заголовке статьи.

1. Прозрачный, значит максимально простой для клиента способ получения данных с сервера. Т.е. разработчик Front-end приложения читая код с первого взгляда не может отличить локальный вызов от удаленного.

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

Они немного противоречат друг другу. Известный нам с тобой фреймворк имеет ряд недостатков, и прозрачностью не обладает, я бы даже сказал, что он слегка громозкий, из-за большого количества классов и абстракций, которые там есть. Человек, который хорошо им владеет, может очень быстро написать клиент-серверное приложение, что прекрасно подходит для небольших проектов, но чтобы эффективно использовать, надо достаточно глубоко в нём разобраться, больше, чем прочитать статью и зареференсить nuget-сборку, иначе в некоторых местах поведение может отличаться от ожидаемого.

Известные проблемы текущей реализации:
1. Фреймворк заточен под хостинг WCF-сервиса в Windows Service или Console Application. Для некоторых решений хостинг в IIS более оптимален, с текущей реализацией фреймворка не сделаешь красивого решения.
2. В текущей реализации фреймворка с WCF-сервиса нельзя вызвать другой WCF-сервис. Эта возможность необходима для некоторых приложений.
3. Текущая реализация работает по net.tcp протоколу, а если необходимо, к примеру, REST API, которое сереализует данные в виде XML/JSON/SOAP?
4. Некоторая реализация WCF-сервисов предоставляет WSDL, что можно использовать так же для автодокументирования сервисов. Здесь этого так же нет.

Подчеркну ещё раз мораль:
Если нужно сделать маленький проект, фреймворк очень хороший.
Если есть желание использовать в продакшне — нужно детально изучить код, прежде, чем класть чужую либо в ядро своего проекта. И лучше исходниками, а не ссылкой на сборку.
Ну, а можете расшифровать набор навыков этот и объяснить, почему в него не входят базовые вещи из Computer Science и математики?
Какие с Вашей точки зрения знания (и допущение незнания смежных технологий, необходимые навыки ) должны быть, чтобы позиционировать желаемую компенсацию на таком уровне, основываясь на реалиях рынка?
По-моему, основной способ борьбы с раздуванием ViewModel — следование принципу SRP и использование Dependency Injection.
Судя по профилю у автора карма 2 и 2 голоса. Т.е. карму ему никто не портил. У него отрицательный рейтинг, т.к. минусовали статью. Статью минусовали, скорее всего, именно из-за того, что предлагаемое решение не оптимальное, и в комментариях описали почему.
В данном решении ViewModel Жестко связан с View. В VM вообще не должно быть даже упоминания элементов управления.
Уже не раз писал в фейсбуке тебе, и ещё раз повторю здесь (хотя не люблю переходить на личности). Перед тем, как что-то утверждать, либо кидай пруф, либо основательно разберись в предмете.

1) Инстаграм: официального подтверждения не было. Он не за горами — а для меня срок — вчера. Прошло уже достаточно времени, и за это время должны были реализовать, договориться с разработчиками сервиса (Принадлежит фейсбуку, фейсбук — партнёр майкрософт). Комментаторам ниже — не интересует Ломограм и подобные — нужна заказчка фото. API для сторонних разработчиков это не позволяет сделать). Я прошу не писать мне комментов в стиле, что я неправильно использую какие-то фичи. Я говорю о тех фичах, которые нужны мне. Их нет. Точка. Причины меня, как пользователя, не волнуют.

2) Альфабанк (Я — клиент Альфы). Приложение WP значительно проигрывает по функционалу iOS/Android. Даже заходя на сайт банка, мы видим вот там примерно следущую ссылку. Значит iOS и Android приложения обновили, а на свежевыпущенную версию WP8 забил Альфа с высокой колокольни. Второго приложения Альфа-Ключ до сих пор нет. Приложение для WP7 появилось значительно позже.

3) Тинькофф разрабатывал мой бывший коллега, и приложение до сих пор находиться в стадии бетатестирования. Вышло оно также сравнительно недавно.

4) Для сбербанка нет официального приложения. Приложение сбербанкер — это обёртка над мобильным банком. Всё то же самое делается с помощью смс. И отправляет он смски.

5) Для того, чтобы окончательно добить тему банков — открываем рейтинг банков. Смотрим, сколько из ТОП50 хотя бы имеет клиента под WP7/8. Наслаждаемся показательями, близкими к 0.

И ещё раз подчеркну — дело не в количестве приложений. А в том, что для бОльшей части энтерпрайза WP как платформы не существует, либо они её недооценивают.

А выходят приложения в следущей последовательности: iOS -> Anrdoid -> WP.

А цифры 20, 100 тысяч приложений в маркетплейсе, будешь на конференциях студетам рассказывать :).

P.S. Я сам пользуюсь WP. Платформа неплохая, железо качественное. Экосистема отвратительная. Надеюсь, это измениться к лучшему.
Инстаграм, Angry Birds Seasons, вменяемое приложение для контакта, мобильные клиенты банков. Список можно безгранично перечислять. Почитай статью Пола Туротта, почему по приложения Windows Phone не скоро догонит iOS/Android. И подумай, сколько ты в окружающей среде видишь надпись: Доступно приложение для Windows Phone. А сколько — аналогичных надписей для других платформ.
Есть ли информация, когда будет доступен Windows Server 2012 для подписчиков MSDN/TechNet?
Это в большинстве компаний сейчас так, к сожалению. Острый дефицит квалифицированных кадров, раздутые зарплаты, некомпетентные сотрудники, и, что самое печальное, никто не знает, что со всем этим делать.

С другой стороны, такая ситуация выгодна для квалифицированных сотрудников, которые будут на вес золота.
Ясное дело, каждый выбирает лучшее для себя. Просто не стоит ограничивать себя каким-то одним мирком, будь то Oracle или Microsoft, а следует следить за трендами, ходить на конференции и знать, что предлагает та или иная технология, чтобы максимально эффективно решать стоящие перед разработчиком задачи.

Например, в нашей компании есть девушка, которая хорошо знает и C#, и F#, и в зависимости от того, что ей нужно сделать, она использует соответствующую парадигму программирования и язык, на котором она пишет.
А почему его нет? (Я не оспариваю, я в общем-то с Вами согласен, просто интересно послушать мнение).
Lazy и в C# есть.

Смысл моего комментария был в том, что некорректны подобные сравнения, нельзя выдергивать что-то из контекста. Каждый язык или платформа лучше подходит для определенного класса задач.

Было бы гораздо полезнее, если бы Вы написали статью в таком стиле:

[Класс задач] [Платформа / языки программирования для её решения] [Плюсы и минусы выбранной платформы для решения этого класса задач].

Тогда бы сравнение было бы более объективным. А сейчас оно перерастёт в холивар, где сторонники Microsoft / Oracle будут кричать, что их языки/платформа лучше. А лучшего в широком смысле слова просто нет.
Эпизод 2 пропустили. Вы необъективны и явно склоняете читателей в сторону C#.

Java более кросплатформенна, в статье вы сравниваете вроде бы языки, но потом переходите на CLR/JVM.

У нас же есть ещё F#, Scala, Mono, другие языки программирования, платформы, фреймворки, которые тоже имеют отношения к делу. Почему Вы их не упомянули?

Нужно использовать те языки и платформы, которые лучше подходят для реализации задач, стоящих перед разработчиком. А если человек знает и JVM, и .NET — это ему будет только плюс. А такие сравнения, как в статье, просто некорректны.
А это в настройках студии можно как-нибудь сделать?
Дело в том, что на Consumer Preview ничего подобного не было замечено. Release Preview — это RC, т.е. версия, которая практически готова, и ожидаются только мелкие изменения в систему и багфиксы. Я не могу поверить, что разработчики в Microsoft не запускали на нём Skype — проблема повторяется у большого количества людей. Поскольку Skype сейчас является подразделением Microsoft (хоть и интеграция в корп ещё не завершена полностью), то они могли бы как-то синхронизировать свои действия.
Буквы в верхнем регистре в главном меню смотрятся просто отвратительно. Также расстраивает, что до сих пор не интегрировали WP7 SDK в студию, и кроме VS 2012 чтобы разрабатывать WP7-приложения приходится держаться VS 2010.
Если монитора 2 или больше, один из широкоформатников можно развернуть вертикально, тогда вообще куча свободного пространства будет под код. (при условии скрытия ненужных панелей инструментов).
Я об этом написал ещё утром двумя комментариями ниже (:

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity