• Как написать свое ПО для отправки СМС сообщений?

    NeiroNx
    @NeiroNx
    Программист
    Если через операторов - то у них есть некое API, если через оборудование то это последовательный порт и AT команды.
    Ответ написан
    Комментировать
  • Как сделать скролинг бокового блока при прокрутке?

    ShadowOfCasper
    @ShadowOfCasper
    Middle User Interface Web Developer
    .block_v_sidebare_saita{
      position: fixed;
      top: 0;
    }
    Ответ написан
    Комментировать
  • Что такое aria и role атрибуты?

    @senselessV7
    ...
    Допустим, при взаимодействии с насыщенным интернет-приложением (в терминологии ARIA такие приложения именуются активными) пользователь не просматривает страницу, а прослушивает ее с использованием экранного диктора. При этом программа зачитывает вслух одну часть страницы, а тем временем другая ее часть динамически обновляется. Живые области ARIA подсказывают пользователю, что обновилась часть страницы — та, которая в данный момент находится не в фокусе ...

    ...
    Существуют атрибуты состояния ariadisabled, aria-busy, aria-expanded, aria-hidden и атрибуты свойств, в частности ariadescribedby, aria-haspopup и aria-labelledby, предоставляющие дополнительную информацию о переопределенных элементах. На практике рекомендуется макси-
    мально полагаться на семантические элементы, но если вам непременно требуется использовать конкретный элемент (допустим, древовидное меню) «не по назначению» — прибегайте к ARIA-атрибутам. ...


    Эстель Вейл "Разработка приложений для мобильных устройств"
    Глава 6


    Почитайте, вполне интересно и полезно!
    Ответ написан
    1 комментарий
  • Как использовать Yandex map API в typescript?

    Вам нужно описать структуру, типы и свойства используемых вами сигнатур в так называемом заголовочном или декларативном файле с расширением d.ts. Мне кажется, что готового пакета для установки через typings нет, но для вашего случая минимальный файл будет выглядеть примерно таким образом:

    ymaps.d.ts
    declare namespace ymaps {
      export function ready(): Promise;
    
      class Promise {
        then(onFulfilled?: Function, onRejected?: Function, onProgress?: Function, ctx?: any): Promise;
      }
    
      export class Map {
        constructor(element: string | any, state: MapState);
      }
    
      export class MapState {
        center: number[];
        controls: string[];
        zoom: number;
      }
    }

    И тогда ваш файл, где используете код с инициализацией карты будет выглядеть так:
    /// <reference path="ymaps.d.ts" />
    ...
    ymaps.ready().then(() => {
      let myMap = new ymaps.Map("main_map", {
        center: [50.450100, 30.523400],
        zoom: 12,
        controls: ['smallMapDefaultSet']
      });
    });


    В первой строке ссылаемся на наш файл с объявлениями. Typescript должен это скушать.
    Замечу, что в ссылке, указанной предыдущим оратором, есть более развернутые декларативные файлы.

    Есть еще один легкий обход всех этих объявлений.

    declare var ymaps: any;
    Ответ написан
    1 комментарий
  • Как отправить лог консоли браузера посетителя разработчику?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Не знаю как отправить лог по нажатию кнопки, да и если ошибка критическая, то вполне вероятно, что js на странице уже не работает и никакие нажатия на кнопку обработаны не будут. Я перехватывю и логирую на бэкенде все ошибки фронтенда. Раньше всех скриптов подключить на странице это https://github.com/darcyclarke/Detect.js и это

    window.onerror = function(err, url, line, col, msg) {
        var data = {
            'Error': err,
            'URL': url,
            'Line': line,
            'Column': null,
            'Message': null,
            'Browser': null,
            'OS': null,
            'Device': null
        };
    
        // HTML5 only
        data['Column'] = !col ? '' : col;
        data['Message'] = !msg ? '' : msg;
    
        try {
            var ua = detect.parse(navigator.userAgent); 
            data['Browser'] = !ua.browser.name ? '' : ua.browser.name;
            data['OS'] = !ua.os.name ? '' : ua.os.name;
            data['Device'] = !ua.device.name ? '' : ua.device.name;
        }
        catch(e) {}
    
        console.groupCollapsed('Error: ' + data['Error']);
        console.log('URL: ' + data['URL']);
        console.log('Line: ' + data['Line']);
        if(data['Column'])
            console.log('Column: ' + data['Column']);
        if(data['Message'])
            console.log('Message: ' + data['Message']);
        console.groupEnd();
    
        try {
            $.post('/frontend/error/', data);
        }
        catch(e) {}
    
        return true; //suppressErrorAlert
    };


    а на сервере настроить обработчик, сохраняющий полученные ошибки в файл.
    Ответ написан
    1 комментарий
  • Как добавить класс при наведении на блок в Angular?

    @VanKrock
    angular.ru/api/ng.directive:ngClass

    HTML
    <div ng-app>
    <table ng-controller="buyCtrl">
    <tr ng-repeat="product in products" ng-mouseover="productHovered($index)">
        <td >{{product.name}}</td>
        <td class="buy">{{product.count}}/10</td>
        <td><a ng-class="product.buttonCss">Купить</a></td>
    </tr>
    </table>
    </div>


    CSS
    .red{
        color:red;
    }
    
    .green{
        color:green;
    }


    JavaScript
    function buyCtrl($scope) {
      $scope.products = [
        {name:'Помидоры', count:1, buttonCss:"green"},
        {name:'Огурцы', count:0, buttonCss:"green"},
        {name:'Картофель', count:0, buttonCss:"green"}
      ];
        
      $scope.productHovered = function(selectedProductIndex){
          $scope.products.forEach(function(product){
              product.buttonCss = "green";
          });
          $scope.products[selectedProductIndex].buttonCss = "red";
      }
    }


    ну и просто меняете buttonsCss у product на нужный вам

    залил на JsFiddle
    Ответ написан
    5 комментариев
  • Выбор фреймворка для нового проекта - Angular? React? Vue?

    dom1n1k
    @dom1n1k
    Лично для меня Vue - это такой "фреймворк с человеческим лицом".
    В целом JS-мир похож на поле боевых действий, где постоянно то налеты авиации, то кононада гремит, то хипстерская конница с новым логотипом на знамёнах проскачет.
    А "обычный" человек сидит в подвале, обхватив голову руками, и думает - мама дорогая, куда я попал, и чё ваще вокруг происходит?
    Какие-то новые паттерны, подходы, языки... Раньше, чтобы начать, достаточно было блокнота и браузера. Пишешь hello world и сразу его видишь. Теперь нужно поставить ноду, овер 9000 пакетов, десять транспиляторов, таск-менеджеров и бандлеров. Пока увидишь рабочий результат - поседеешь.
    И вдруг какая-то добрая душа взяла у хипстоты всё самое лучшее и разумное, что та родила, но очистив от лишних абстракций и усложнений - и выкатила велосипед в виде велосипеда, а не турбо-космолета с инструкцией толщиной как "Капитал". И снова можно писать в блокноте и смотреть в браузере. При этом почти не проигрывая в возможностях.
    Ответ написан
    1 комментарий
  • Как создать домашнюю локальную сеть?

    Jump
    @Jump
    Системный администратор со стажем.
    1) Компьютеры подключены к интернету через роутер.
    2)по wi-fi
    3)Сетевая папка будет на одном компьютере

    В таком случае собственно сеть настраивать не надо.
    Если интернет работает - просто создавайте сетевую папку и все будет работать..
    Если интернет не работает - настройте интернет на роутере в соответствии с настройками выданными провайдером.

    Если не получается - пишите конкретно в чем сложность, и что не получается.
    Ответ написан
    2 комментария
  • Что означает криптографически безопасное случайное целое число?

    Sanasol
    @Sanasol Куратор тега PHP
    нельзя просто так взять и загуглить ошибку
    Хороший рандом:
    randbitmap_true.png

    Плохой рандом:
    randbitmap_computer.pngsource
    Ответ написан
    3 комментария
  • Как сделать переход на якорь с дочерней страницы?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Нет, описали хреново, если честно. Если суть в том что по клику на определенный пункт меню должен быть переход на определенную страницу и скролл до заданного якоря - то тогда достаточно в хрефе указать путь до страницы(для индекса будет достаточно "/"), после чего добавить # и имя якоря:
    <ul id="menu-topen-1" class="menu">
    <li class="menu-item"><a href="/#some_anchor">Solutions</a></li>
    <li class="menu-item"><a href="/about/#team">Team</a></li>
    <li class="menu-item"><a href="/blog.php#myblog">Blog</a></li>
    <li class="menu-item"><a href="/contacts.html#headline">Contact</a></li>
    </ul>
    Ответ написан
    Комментировать
  • Как правильно отлавливать все исключения через фильтр исключений?

    1) Фильтры исключений
    С помощью свойства actionExecutedContext.Exception мы можем получить информацию об исключении, возникшем в методе контроллера. У вас походу исключение возникло в самом фильтре, и стэк трейс начинается от туда.

    2) Глобальные фильтры и переопределение фильтров

    Второй вариант для исключений более правильный.
    Ответ написан
    2 комментария
  • Как избавиться от Cookie?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Отключить в браузере
    Ответ написан
    Комментировать
  • Почему фрилансеры готовы общаться только в чате?

    sadisme
    @sadisme
    font-size:30rem
    Всё просто. В 99% ситуаций общения голосом, желают типичные "гуманитарии", которые от темы разработки бесконечно далеко. Ты им говоришь "напишите ТЗ", а они в ответ "давайте я лучше вам всё по телефону расскажу". Они думают если не разбираются в вопросе и не могут ТЗ написать, то уж голосом точно всё объяснят как надо. И не дай бог вам согласиться (а просят как правило настойчиво, ибо самим лень разбираться в вопросе и что-то писать), вынесут вам мозг по полной.
    Ответ написан
    6 комментариев
  • Как структура баз данных эффективнее: много записей, много таблиц или много баз?

    petermzg
    @petermzg
    Самый лучший программист
    Лучше: 1 база данных, 6 таблиц, и грамотные индексы.
    Ответ написан
    2 комментария
  • Какие есть библиотеки для работы с MS Word на C#?

    Rou1997
    @Rou1997
    NPOI и для Word и для Excel, и docx.codeplex.com для DocX (новый формат Word).

    а воспользоваться последним не получится, потому что тут уже требуется .NET 4 и выше.

    Не требуется.
    Ответ написан
    2 комментария
  • Как задать свой размер иконок FontAwesome?

    @IllusionTurtle
    вы что-то делаете не так - СУТЬ иконочных шрифтов в том что это шрифт - лего менять размер и цвет.
    если вы не можете задать размер через font-size значит где-то есь font-size с более высоким приоритетом.
    Ответ написан
    Комментировать
  • Как изменить путь установки программ после изменения тома диска?

    @res2001
    Developer, ex-admin
    У вас перестали работать ярлыки на рабочем столе?
    Если да, то правой мышкой на ярлыке - свойства - закладка Ярлык - изменить поле Объект и Рабочая папка.

    Если имелось ввиду что-то более сложное, то переустанавливайте нужные программы или меняйте обратно букву диска.
    Если первые 2 варианта по каким-то причинам не подходят, то нужно разбираться с каждой конкретной программой - искать где она хранит пути (реестр, какие-то настроечные файлы и т.п.) и исправлять в соответствующем месте.
    Ответ написан
    1 комментарий
  • Как изменить путь установки программ после изменения тома диска?

    sizaik
    @sizaik
    сисадмин, Витебск
    Простой путь - извернуться и вернуть букву диска на место, как она была. В большинстве случаев это возможно.
    Если нельзя, то нужно идти сложным путем - брать документацию к каждой программе и разбираться, как поменять пути в каждом конкретном случае.
    Можно, конечно, поменять пути через поиск в реестре и текстовых конфигурационных файлах, но велика вероятность где-нибудь накосячить.
    Ответ написан
    2 комментария
  • Какую литературу читать новичку по C#?

    Литература по языку C#

    Книги для новичков: а о чём это вообще?

    • Head First C#, Jennifer Greene, Andrew Stellman (русский перевод: Изучаем C#, Д. Грин, Э. Стиллмен). Содержит упражнения. Рекомендуется многими как хорошая книга для новичков.
    • Язык программирования C# 5.0 и платформа .NET 4.5 - Эндрю Троелсен. Популярная книга, многие начинали с неё.
    • C# 4.0: полное руководство, Герберт Шилдт. Несмотря на неоднозначное отношение к автору, книга пользуется популярностью.
    • C# 2010. Ускоренный курс для профессионалов, Нэш Трей
    Книги среднего уровня: если hello world не проблема
    • CLR via C#. Программирование на платформе Microsoft .NET Framework 4.5 на языке C#, Джеффри Рихтер. Неувядающая классика. Хотите знать, что и как происходит на самом деле? Это книжка для вас. Не самое живое изложение, зато максимум подробностей из первых рук.
    • C# 6.0 in a Nutshell, Joseph Albahari, Ben Albahari (русский перевод предыдущей версии:C# 5.0. Справочник. Полное описание языка, Джозеф Албахари, Бен Албахари). Отличная книга, затрагивает многие аспекты, расставляет по местам ваши знания о предмете. Сводит разрозненные отрывочные знания в общую понятную картину, объясняет, какими средствами нужно пользоваться, а для чего есть уже более хорошие подходы. Есть online-глава о многопоточности (русский частичный перевод), почитайте!
    • Essential C# 5.0, Mark Michaelis в сооавторстве с Эриком Липпертом. Хорошая книга для программистов, желающих овладеть C#. Знания других языков, перед чтением, приветствуются. От Эрика Липперта в книге представлены продвинутые советы, которые встречаются на протяжении всей книги.
    • Effective C# и More Effective C#, Bill Wagner. О том, как надо и как не надо программировать на C#. Разбираются отдельные аспекты программирования, способствует углублению понимания языка.
    • Programming C# 5.0: Building Windows 8, Web, and Desktop Applications for the .NET 4.5 Framework, Ian Griffiths. (Русского перевода пока нет.) Очень детальная, подробная книга, в которой найдутся ответы на продвинутые вопросы.

    Книги для специалистов: внутренние механизмы и пыльные углы

    • C# in Depth, Jon Skeet, Third Edition (русский перевод: C#. Программирование для профессионалов, Джон Скит, пока переведено лишь второе издание). Имя автораговорит само за себя. Джон один из лучших людей, которые умеют доходчиво объяснять сложные вещи.
    • C# 5 Unleashed, Барт де Смет. Фундаментальная книга.
    • Debugging Microsoft .NET 2.0 Applications, John Robbins (русский перевод: Отладка приложений для Microsoft .NET, Джон Роббинс). Основы промышленной отладки: WinDbg/SOS, дампы памяти и решение проблем в приложениях (почти) без Visual Studio.
    • Under the Hood of .NET Memory Management, Chris Farrell, Nick Harrison. Полное описание всех тонкостей управления памятью в платформе .NET. Книга доступнабесплатно на английском.
    • Expert .NET 2.0 IL Assembler, Serge Lidin. В книге представлены ответы почти на все тонкости низкоуровневого программирования на .NET, а именно на языке IL. В книге описаны детали .NET Framework 2.0, по этому на данный момент какие то аспекты могут быть не актуальны.
    • Оптимизация приложений на платформе .NET с использованием языка C#, Саша Голдштейн, Дима Зурбалев, Идо Флатов (Переводчик: Александр Киселев). В книге рассматривается моменты .NET с точки зрения производительности. Рассказывается об способах замеров и шаблонах оптимизации. Также там рассматриваются вопросы, связанные с GC и небезопасным кодом.

    Дополнительные ресурсы:

    • Официальная спецификация C# 5
    • Framework Design Guidelines. Руководства и соглашения по проектированию многократно используемого кода. Является выдержкой из одноимённой книги, Krzysztof Cwalina, Brad Abrams. Книга переведена на русский под названием Инфраструктура программных проектов, Кржиштоф Цвалина, Брэд Абрамс.

    Литература по асинхронному программированию и многопоточности

    • Concurrent Programming on Windows, Joe Duffy. Профессиональное использование многопоточности в инфраструктуре .NET от одного из лучших мировых специалистов по многопоточности. В книги описаны тонкости использования как stream'oв так и thread'ов. Раскрыто, как и когда использовать Concurrent-, Parallel- и Asynchronous-модели. Примеры в книге присутствуют от достаточно низкоуровневых (с использованием системных потоков через WinAPI) до высокоуровневых Task'ов и PLINQ. Книга написана под .NET Framework 4.0, поэтому работа с ключевыми словами async/await в книгу не вошла.
    • Concurrency in C# Cookbook, Stephen Cleary. (Русского перевода пока нет.) Очень толковое разъяснение современных паттернов использования многопоточности, особое внимание уделено использованию конструкции async/await. Обсуждается решение типичных проблем, решаемых асинхронным кодом. Отдельно описывается работа с Reactive Extensions и TPL Dataflow.

    Литература по WPF
    • Pro WPF 4.5 in C#: Windows Presentation Foundation in .NET 4.5, Matthew MacDonald (русский перевод: WPF: Windows Presentation Foundation в .NET 4.5 с примерами на C# 5.0 для профессионалов, Мэтью Макдональд). Разбор XAML'а, лаконичные, но полезные примеры. Пристальное, но не навязчивое внимание к деталям.
    • Windows Presentation Foundation Unleashed, Adam Nathan. Наверное, лучшая книга для новичка.
    • Applications = Code + Markup: A Guide to the Microsoft Windows Presentation Foundation, Чарльз Петцольд. Фундаментальная книга великолепного специалиста. Написана довольно тяжело, много листингов, плотный поток информации

    Литература по ASP.NET
    • Pro ASP.NET MVC 5, Adam Freeman (русский перевод: ASP.NET MVC 5 с примерами на C# 5.0 для профессионалов, Адам Фримен). Поэтапное написание веб-приложения с рассмотрением большинства важных аспектов разработки приложения: паттерн MVC, юнит-тестирование, инверсия зависимостей и т. п.
    • Pro ASP.NET 4.5 in C#, Adam Freeman (русский перевод: ASP.NET 4.5 с примерами на C# 5.0 для профессионалов, Адам Фримен).
    • Professional ASP.NET MVC 5, Jon Galloway, Phil Haack, Brad Wilson, K. Scott Allen
    • Programming ASP.NET MVC 4: Developing Real-World Web Applications with ASP.NET MVC, Jess Chadwick, Todd Snyder, Hrusikesh Panda (русский перевод: ASP.NET MVC 4. Разработка реальных веб-приложений с помощью ASP.NET MVC, Джесс Чедвик, Хришикеш Панда, Тодд Снайдер).
    • ASP.NET MVC Framework, Гайдар Магдануров, Владимир Юнев
    • Pro ASP.NET MVC 2 Framework, Steven Sanderson (русский перевод: ASP.NET MVC Framework с примерами на C# для профессионалов, Стивен Сандерсон)
    Дополнительные ресурсы:
    • Get Started with ASP.NET от Microsoft
    • Видеокурсы на intuit.ru: Разработка веб-приложений на ASP.NET, Разработка веб-приложений с использованием ASP.NET MVC Framework.

    Литература по LINQ
    • Pro LINQ: Language Integrated Query in C# 2010, Joseph Rattz, Adam Freeman (русский перевод: LINQ. Язык интегрированных запросов в C# 2010 для профессионалов, Адам Фримен, Джозеф С. Раттц). Учебно-справочное пособие, в котором понятно и подробно описаны возможности языка LINQ. Хороша для старта.
    • LINQ Pocket Reference, Joseph Albahari, Ben Albahari (русский перевод: LINQ. Карманный справочник, Джозеф Албахари, Бен Албахари). Хороший справочник по всему, что относится к LINQ. Рассмотрены новые конструкции C# для поддержки LINQ. Много примеров.
    • C# in Depth, Jon Skeet (русский перевод: C#. Программирование для профессионалов, Джон Скит). Немалая часть книги посвящена тому, как работает LINQ.

    Литература по принципам, шаблонам и методикам разработки
    • Внедрение зависимостей в .NET, Марк Симан. Несложно написанная книга про управление зависимостями в приложениях.
    • Принципы, паттерны и методики гибкой разработки на языке C#, Роберт С. Мартин, Мика Мартин

    Литература по Windows Workflow Foundation
    • Essential Windows Workflow Foundation, Dharma Shukla, Bob Schmidt (русский перевод:Основы Windows Workflow Foundation, Дхарма Шукла, Боб Шмидт). Для тех, кого заинтересовала 26 глава («Введение в Windows Workflow Foundation») из книги Эндрю Троелсена Язык программирования C# 5.0 и платформа .NET 4.5.
    • Pro WF 4.5, Bayer White (русской версии нет). Более углубленный взгляд на WF.

    Литература по XML
    • XML.NET, Джо Грей, Динар Дальви, Бипин Джоши, Фредрик Нормен, Фрэнсис Нортон, Энди Ольсен, Дж. Майкл Палермо IV, Даршан Сингх, Джон Слэйтер, Кевин Уильямс (Переводчик: И. Штерев). В книги содержится всё про применение XML в .NET за исключением LINQ. Старовата уже, но зато там есть объяснение, как внедрить свои функции на C# в XSLT.

    Литература по ADO.NET
    • Основы ADO.NET, Боб Бошемин (Переводчики: О.А. Лещинский, А.В. Журавлев, Н.Н. Селина)

    Литература по .NET Remoting / WCF
    • Microsoft .NET Remoting, Скотт Маклин, Джеймс Нафтел, Ким Уильямс
    • Создание служб WCF, Джувел Леве (Переводчики: Е. Матвеев, А. Пасечник)

    Литература по безопасности
    • Криптография и безопасность в технологии .NET, Питер Торстейнсон, Гнана Ганеш (Переводчик: В. Хорев). Книга дает представление .NET разработчику о реализации и применении криптографии, цифровой подписи, аутентификации, авторизации и доступа к коду (CAS). В ней описывается, что такое симметричное и асимметричное шифрование, что представляют собой цифровые подписи и как их использовать в .NET приложениях.
    • Microsoft ASP.NET. Обеспечение безопасности, Доминик Байер. Не смотря на то, что в названии указано ASP.NET в книге рассматриваются технологии безопасности под Windows, применимые из .NET для всех типов приложений. Это аутентификация, авторизация, олицетворение и Membership.
    Ответ написан
    5 комментариев