• В каких кейсах стоит использовать MVC-фронтенд- и MVC-бэкенд-фреймворк вместе?

    @Abcdefgk
    Если это не модная SPA, то функция ангуляров и прочих реактов сводится к тому, чтобы мешаться под ногами.
    Ответ написан
    Комментировать
  • На что лучше перейти на Angular, React, Vue?

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

    Рассмотрим упомянутые варианты...

    AngularJS. JS. Он пляшет от шаблонов. В этом его сила (заверстали страницу, добавили директив и готово) и слабость (динамическое формирование страниц, как вы заметили, даётся с большим трудом). Криво реализованное двустороннее связывание и обнаружение изменений приводит к странным костылям и тормозам.

    Angular. TS. Опять же пляшет от шаблонов. Но внутрення архитектура улучшилась. С одной стороны она стала ещё сложнее, с другой - гибче. Динамику реализовать в нём проще, но придётся поломать голову ковыряясь в абстракциях. "Проталкивающая" модель реактивности не очень удобная и эффективная, но жить можно.

    Vue. JS. По уму сделанный AngularJS. Довольно практичный (если не пытаться прикручивать TS) с приятной "затягивающей" реактивностью. Из трендовых фреймворков я бы обратил внимание именно на него.

    React based. JS. Сам реакт - не более чем библиотека для рендеринга. Так что под его лейблом подразумевается на самом деле "мы написали свой фреймворк, в котором рендерим через реакт". Достаточно легко в нём реализуется динамика. Но с переиспользуемостью кода и его лаконичностью - просто беда. Куча копипасты во имя великой идеи с глобальным состоянием - типичная ситуация. Каждый такой фреймворк по своему уникален, так что "знание реакта" мало чем помогает при вхождении в проект.

    Polymer. JS. Попытка воспользоваться самыми последними стандартами. Всё крутится вокруг DOM, что весьма не эффективно. Реактивности как таковой нет. Спека ShadowDOM имеет уже вторую версию и та весьма ограниченна и требует костыльных костылей и вытягивания гланд через анус при использовании. Динамика с одной стороны отличная - рендерите что угодно куда угодно и динамически всё подгружается. Но без "вулканизации" вся эта динамика дико тупит, поэтому всё-равно всё объединяют в один бандл.

    $mol. TS. Полностью динамичен и ленив. Что угодно может быть динамически загружено, но в этом нет необходимости, так как компоненты получаются крайне компактными, а в бандл тянется лишь то, что реально используется. Рендерит тоже по возможности лениво, что позволяет быстро показать даже очень большую страницу. Имеет стандартную библиотеку компонент. В качестве примера, могу привести визуальный редактор компонент, который динамически строится по его коду и тут же в рантайме этот компонент изменяет (он ещё в разработке, но уже много чего позволяет): mol.js.org/#demo=mol_app_hello/edit/path

    К тем вариантам, что "JS", разумеется можно прикрутить сбоку и TS, но очень ограниченно:
    1. Будет много кода с декларациями типов и мало выведения типов.
    2. Практичная с точки зрения JS магия вырождается в весьма непрактичную борьбу с типизацией.
    3. Многие библиотеки/плагины/компоненты написаны на JS. В лучшем случае вы сможете своими силами написать для них типы.
    Итого:
    1. Под вашу задау идеально подходит $mol, но он далеко не в тренде (80 звёзд на гитхабе, ага). На нём можно быстро разрабатывать приложения, но сложно найти работу. Если есть желание, то мы ищем разработчиков от стажёров до сеньёров.
    2. Из востребованного сейчас на рынке: AngularJS, React*. Мой прогноз - скоро реакт выйдет из моды. Многие уже обожглись на нём, нафигачив горы говнокода, и переползают на более практичный Vue.
    3. Для устройства в Я имеет смысл изучать BEMJS (тогда точно возьмут :-D) или что-то трендовое типа React или Vue ну и VanillaJS нужно знать обязательно. Я сам в нём 2 раза работал, но как видите самореализоваться там не смог.
    4. Так как сроки у вас поджимают, то переписывать проект уже поздно. Так что лучше подумать о типичных костылях: CDN, нескучная анимация загрузки, агрессивное кеширование. Тем не менее по скорости разработки я бы отсортировал решения в следующем порядке (от быстрой к медленной): $mol, Vue, Angular, Polymer, React*
    5. Производительность и размер приложений на упомянутых фреймворках можете сравнить тут: mol.js.org/app/bench/#bench=https%3A%2F%2Feigenmet...
    6. Так как у вас энтерпрайз, то выбирать стоило бы из фреймворков, предоставляющих свою библиотеку высокоуровневых компонент (ExtJS,OpenUI5,KendoUI,VCL.JS,$mol). Энтерпрайзу обычно скорость разработки, богатство и единообразие функциональности важнее кастомных дизайнерских изысков на каждом экране.
    7. Для разработки более-менее крупных поектов имеет смысл брать фреймворки написанные с использованием статической типизации, тогда вы получите от типизации больше преимуществ и меньше боли. Их пока ещё не очень много: Angular (TS/Dart), $mol (TS), CycleJS (TS), VCL.JS (TS)...
    8. Джуниору лучше не заниматься созданием нового фреймвора (даже на Реакте), ничем хорошим это не закончится. Тут нужен опыт, чутьё и рациональность. Не у каждого сеньёра это всё есть.
    9. IE10 - это боль и страдания. Вы профилировали, на что именно уходит больше всего времени (загрузка, инициализация приложения, загрузка данных рендеринг)? Возможно стоит уменьшить объём единовременно отображаемых данных или подумать о серверном рендеринге ангуляровских шаблонов.
    Ответ написан
  • Как сделать консоль в WPF окне?

    petermzg
    @petermzg
    Самый лучший программист
    Консоль это выполнение команд и отображение результатов их исполнения.
    Для ввода команд подойдет TextBox с параметрами TextWrapping="Wrap" и AcceptsReturn="True".
    Отлавливает Enter и на него выполняете команду
    Process proc = new Process();
    proc.StartInfo.FileName = "команда.exe";
    proc.StartInfo.Arguments = "<ее параметры>";
    proc.StartInfo.UseShellExecute = false;
    proc.StartInfo.RedirectStandardOutput = true;
    proc.Start();

    Получаете результат выполнения
    proc.StandardOutput.ReadToEnd()
    и записываете в ваш TextBox
    Ответ написан
    Комментировать
  • В чем разница между Django, Flask и Angular, Backbone?

    Везде можно подключить БД

    На фронтенде БД будет храниться в браузере, т.е. этим данным доверять нельзя. В БД на клиенте могут храниться данные, необходимые для оффлайн-работы приложения, например.

    можно сделать сайт отдельно на каждом из фреймворков

    Вы явно не понимаете про фронтенд и бэкенд. На Django или Flask можно сделать серверную часть сайта. На Angular или Backbone - клиентскую. И никак иначе. Поэтому если приложению нужен сервер - на одном ангуляре Вы его не напишете. Аналогично, если нужна сложная логика на клиенте, джанго тут ничем не поможет.

    Почему просто не сделать все на одном?

    Как минимум потому что языки на сервере и на клиенте зачастую разные (тот же Python на сервере и JS На клиенте например). Вообще, есть фулстек фреймворки типа Meteor, которые позволяют писать изоморфный код, но как-то особой популярности они не получили насколько я могу судить.
    Ответ написан
    Комментировать
  • Стоит ли изучать AngularJs или сразу Angular 2?

    SPAHI4
    @SPAHI4
    реактовцы - это не девы, а прокидыватели пропсов
    Angularjs давно изжил себя. Кроме того, Angular (не js который) - абсолютно новый фреймворк, почти ничего не имеющий общего с предыдущим. Для больших приложений это неплохой выбор.
    Ответ написан
    Комментировать
  • Стоит ли изучать AngularJs или сразу Angular 2?

    Negwereth
    @Negwereth
    lvivcss.com.ua
    Angular 2+
    Ответ написан
    Комментировать
  • Насколько пригоден ASP.NET Core для стартового проекта?

    @kttotto
    пофиг на чем писать
    На днях сдаем достаточно крупный проект на asp.net core, который не только на тестах, но и уже в бою отработал. Причем это не первый сданный проект на core. Все замечательно работает. Каких то особых проблем, что это именно core, не возникало.
    Ответ написан
    3 комментария
  • Quick sort работает в c# почему-то быстрее, чем в с++. Разве не должно быть наоборот?

    StrangeAttractor
    @StrangeAttractor
    Не должно. Доподлинно известно, что есть вещи, которые работают на Java быстрее, чем на C++ или C (особенно если запрограммированы "втупую", без хитроумных ручных оптимизаций и хаков на основе учёта никоуровневых особенностей машины), а на Scala - ещё быстрее. C# данном контексте, можно сказать, та же Java/Scala. Я даже не удивлюсь, если найдутся задачи, в производительности которых будет лидировать, к примеру, PHP.
    Ответ написан
    1 комментарий
  • Какой лучше выбрать Visual Studio? 2013 или 2010?

    evnuh
    @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Если любите MILF, берите 2010.
    Ответ написан
    Комментировать