Ответы пользователя по тегу Программирование
  • Когда-то мне сказал: язык программирования второстепенен. Что он имел в виду?

    @dmitryKovalskiy
    программист средней руки
    Это прям сложный вопрос, да? Ну представьте себе "Войну и Мир" Толстого. От того что произведение переведут на эфиопское наречие - сюжет другим не станет.
    Если вы можете написать алгоритм/логику обработки запроса - как этот алгоритм описать на языке программирования вопрос синтаксиса.
    Ответ написан
    3 комментария
  • Как быстро запускать проекты?

    @dmitryKovalskiy
    программист средней руки
    Для развертывания тут обсуждается несколько решений для Python/PostgreSQL. Для "быстрого" программирования? Лично я сторонник "быстро, качественно, дешево. выбирайте любые два". То что вы описываете как "не так базу спроектировали, нужня миграция" - это проблема agile с коротким спринтом и без малейшей мысли "а что потом?". Сам видел такие проекты. Тут на мой взгляд пути могут быть разные. один из них - "принятие". Да, на том шаге свернули не туда и разгребаем последствия - в следующий раз будем умнее(наверное). Второй - "увеличение спринта" до 2-3 недель. Третий - "аналитика". Вы пишете что у вас есть 3-4 исполнителя. А сколько аналитиков проекта? думаю что 0. Далее - вы говорите agile. ревью кода есть? Тестирование понятно что должно быть(кстати, есть?). Ревью тоже необходимо, пусть программисты поспорят о том как надо и как лучше.
    Ответ написан
    9 комментариев
  • Как быстро изменить оформление кода всего проекта?

    @dmitryKovalskiy
    программист средней руки
    Совсем автоматические не подскажу, но студия умеет и сама форматировать текущий файл кода. Правила форматирования можно скорректировать в настройках. "Параметры"->"Текстовый редактор"->C/C++-> "Форматирование"
    Ответ написан
    Комментировать
  • Заканчивал ли кто курсы по программированию в Центре компьютерного обучения «Специалист» при МГТУ им.Н.Э.Баумана?

    @dmitryKovalskiy
    программист средней руки
    Я проходил данный курс. И базовый курс по языку и по .NET технологиям. Данные курсы не являются авторскими и на 100% основаны на методичках от Microsoft. Данные методички пишутся примерно через год после релиза платформы. Сказать будут ли данные курсы полезны лично вам - я не могу. Не знаю ваших способностей к обучению и стартовой позиции. На мой взгляд проблема в том что стоимость данных курсов весьма высока и если вы не собираетесь сдавать сертификационные экзамены Microsoft - все необходимые материалы по изучению вы можете найти и дешевле и проще. Если проблемы денег перед вами нет - можете попробовать. Хуже точно не станет, а будет еще и преподаватель, который сможет ответить на возникающие вопросы.
    Ответ написан
    Комментировать
  • Обучение программированию ребенка?

    @dmitryKovalskiy
    программист средней руки
    Да оставьте вы детей в покое. Ему работать через 15 лет. За 15 лет может изменится индустрия так что программисты будут получать на уровне рядового менеджера по работе с клиентами, а востребовано будет что-то другое. Опять же не факт что ребенку будет это интересно и он захочет этим всю жизнь заниматься. 7 лет? ШУТИТЕ ЧТОЛИ? А через год вместо сказки на ночь - родители будут Страуструпа читать чтоли? Или вместо азбуки - подсунут Шилдта.
    Я начал учиться осознанно в 20. Да, я не стану лидом в Google или Microsoft. Но от того что вы с младых ногтей подсунете ребенку какую-нибудь великую книжку по программированию - не значит что ваш ребенок дотянет хотя бы до меня, забьет. А если вы предложите какой-то вариант книги для обучения детей программирования - могу вас немного расстроить. Все эти продукты сделаны не для того чтобы учить детей, а для того чтобы заботливые родители покупали эти продукты заботясь о будущем ребенка.
    Ответ написан
    4 комментария
  • Правда ли, что в MS SQL Server создавать временные таблицы лучше вне транзакции?

    @dmitryKovalskiy
    программист средней руки
    Временные таблицы создают запись в базе tempdb. их надо проверять на существование, не забывать дропать и вообще они порой требовательны к коду, особенно для кода, который может сгенерировать исключение.

    Для одиночных инструкций(одного запроса SELECT,INSERT,UPDATE,DELETE) существует альтернатива - Обобщенные табличные выражения(CTE) - link

    Разумеется если временная таблица вам нужна больше чем на 1 запрос - такой подход неприменим.
    Ответ написан
    7 комментариев
  • Как сформировать из массива (в который записан XML) HTML-таблицы?

    @dmitryKovalskiy
    программист средней руки
    Почитать про это можно по поиску "XSLT"
    Ответ написан
    3 комментария
  • В чем разница между контрольной суммой и хешированием?

    @dmitryKovalskiy
    программист средней руки
    Нет, это не одно и то же.
    Контрольная сумма - алгоритм подтверждения валидности данных. Например все банковские карты проверяются по алгоритму Луна.

    Соль - набор каких либо данных для усложнения процесса дешифровки. Например пароль 123456 без соли будет шифроваться или хешироваться в одинаковую последовательность символов и радужными таблицами расколется за доли секунды(даже на глаз можно дешифровать) но если присолить какой нибудь фигней и сделать шифровать уже сообщение "123456фигня1","123456фигня2" то результат шифрования хэширования будет уже разнообразным. А если еще и алгоритм засолки не дуболомный - вообще прекрасно.

    Хэширование - преобразование массива данных в битовую строку. Изучайте
    Ответ написан
    7 комментариев
  • Как вызывать метод производного класса, не объявленного в интерфейсе?

    @dmitryKovalskiy
    программист средней руки
    Можно конечно что-то такое
    var instance2 = instance1 as needClass
    if(instance2 !=null)
    {
    instance2.doSomething();
    }

    Но идея ниже среднего. Отойдите от сферической задачи в вакууме и сформулируйте проблему. Тогда может найдется красивое решение
    Ответ написан
  • Как узнать, что в проекте(файлах и папках) были изменения?

    @dmitryKovalskiy
    программист средней руки
    Для такой задачи есть source control.
    Ответ написан
    Комментировать
  • Почему goto зло?

    @dmitryKovalskiy
    программист средней руки
    Код то может и понятный, но тупой. Id должен быть сгенерирован уникальным, а не проверятся потом уникальный получился или нет(или что он вообще делает). Тот же код без goto
    do
    {
    id = GenerateString(32)
    }while(unique(id))


    Порядок выполнения кода должен быть понятен. Бросание хода выполнения по меткам понимания не добавляет.
    Вот вам пример из C#
    try{
    a=3;
    return a;
    }
    catch{
    a=0;
    return a;
    }
    finaly
    {
    a=5;
    }

    И вот эта конструкция вполне допустима, но многие молодые программисты споткнутся и не ответят что вернет функция. Причина? неявный goto. Вы привели в пример код с 1 переходом. А если таких переходов 5-10 и они не последовательны. Т.е. один внутри другого, третий сбоку. Любую задачу, которая решается использованием goto можно реализовать циклами, суперпозицией и другими более простыми инструкциями. Вопрос - зачем использовать goto? Приведите пример, в котором код на goto выглядит проще и очевиднее чем циклы и прочее - используйте goto. В других случаях применение goto не оправдан и кроме недоумения, при анализе кода, не вызывает ничего.
    Ответ написан
    7 комментариев
  • С чего начать писать тех.задание?

    @dmitryKovalskiy
    программист средней руки
    protect.gost.ru/v.aspx?control=8&baseC=-1&page=0&m... - 4 странички эти уже прочитали?из них 1 страничка обложки, а вторая пустая. Первые пункты - "Основание для разработки", "назначение разработки". На мой взгляд если вы не можете описать эти 2 пункта - вы не очень понимаете какую проблему вообще решаете, а соответственно написать конкретное тех.задание будет трудно
    Ответ написан
  • Почему не загружается view после POST-запроса?

    @dmitryKovalskiy
    программист средней руки
    Ткните пальцем в строчку кода, которая обрабатывает результат AJAX-запроса ? Вы ткнули контроллер - он вернул ответ. Вопрос - куда вы дели ответ?
    Ответ написан
  • Классы и методы в разных пакетах, должны быть PUBLIC?

    @dmitryKovalskiy
    программист средней руки
    Может что-то и не понимаете. В частности разницу между интерфейсом класса и его внутренней кухней. С public методами вы разобрались видимо. Проблема в том как они реализованы. Если они состоят из простынь кода - возможно есть необходимость свернуть простыни в private-методы. Если по вашей логике класс клиент для одной задачи вынужден последовательно вызвать 3 public метода одного класса в стороннем package - эти 3 класса надо сделать private и сделать 1 public метод, внутри которого последовательно вызываются эти 3 private. В любом случае без вашего кода я тут могу долго фантазировать о том что вы там понаписали и почему у вас все public.
    Ответ написан
    Комментировать
  • Как для List.ForEach() определить текущий элемент?

    @dmitryKovalskiy
    программист средней руки
    Используя List.ForEach вы над каждым объектом коллекции осуществляете некие действия. В принципе вы даже не можете надеяться на то в каком порядке они будут обработаны. Если вам нужно сделать эти действия, только над объектами, удовлетворяющими неким условиям, то сначала вы отбираете эти элементы, а затем вызываете ForEach... т.е. не List.ForEach() , а List.Where.ForEach()
    Ответ написан
    Комментировать
  • Что делают делегаты в C#?

    @dmitryKovalskiy
    программист средней руки
    В данном коде внутрь метода ForEach передается делегат, который вызывается для каждого элемента списка intList. По коду он прибавляет к переменной result все элементы списка. Для конкретной задачи есть десяток решений проще и надежнее, а данный выглядит как говно. Да, делегаты используют для передачи в качестве параметра метода - ссылки на метод, удовлетворяющей сигнатуре делегата.
    Ответ написан
    Комментировать
  • Как для переменной @nowtime присвоить значение времени "сейчас" в C#?

    @dmitryKovalskiy
    программист средней руки
    DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
    Насчет секунд не уверен. Может быть надо SS большими написать.
    Ответ написан
    Комментировать
  • C# Троелсен и Шилд, поворот не туда?

    @dmitryKovalskiy
    программист средней руки
    Шилдт считает что вы дерево, севшее за IDE второй раз в жизни. Троелсен считает что вы сидели уже раз 5 и способны написать Hello World, цикл и ветвление и вам нужны только причуды платформы. Вы дочитали до главы 3. И как самочуствие? Понимаете что там написано? Если да - то продолжайте без страха.
    Ответ написан
    Комментировать
  • Как написать программу на .Net 4.5 для windowx XP?

    @dmitryKovalskiy
    программист средней руки
    В двух словах - это невозможно. Чуть более длинно - stackoverflow.com/questions/17499351/is-it-possibl... .
    Потенциальное решение - стимулируйте пользователей обновлять систему. Что поддержка данной операционки усложняет и удлинняет процесс разработки и тестирования новых фич, а соответственно увеличивает стоимость продукта.
    Ответ написан
    Комментировать
  • Что отличает freelance программиста от корпоративного?

    @dmitryKovalskiy
    программист средней руки
    Дело скорее не в стеке технологий, а в том, что 2 большие разницы работать в команде в офисе и работать дома фрилансером. Как минимум атмосфера разнится, а по факту - процесс разработки построен иначе. Как вариант - кадровики не хотят связываться с человеком, который "попробует, ему не понравится в офисе" и он свалит обратно во фриланс.
    Ответ написан
    3 комментария