• Нужно ли фильтровать данные file_exists(), file_get_contents()?

    Skiphog
    @Skiphog
    Crutch developer
    Некоторую информацию можно почерпнуть здесь
    Ответ написан
    Комментировать
  • В какой последовательности изучать языки программирования?

    skobkin
    @skobkin
    Гентушник, разработчик на PHP и Symfony.
    Имеет смысл начать с C/C++, чтобы понять некий базис и строгую типизацию. Потом попробовать Python/PHP и посмотреть, что такое динамическая типизация. Осознать для себя плюсы этих двух подходов. И если душа ещё не легла к какому-то из языков - можно попробовать энтерпрайзную Java или C#.
    Ответ написан
    Комментировать
  • Фриланс. Рассматривать ли российские биржи?

    dmitry_pavlov
    @dmitry_pavlov
    World-class .NET freelance contractor (remotely)
    Рассматривать надо все, что вам объективно подходит. Если хорошо с англйиским - имеет смысл рассматривать и англоязычные ресурсы, немецким - немецкие и тп. При этом никто не мешает продолжать просматривать варианты на русскоязычных сайтах.

    Мое личное мнение - что позиция "становитесь в очередь ко мне, презренные клиенты. может быть я и соблаговолю заняться вашими дурацкими проектами" - должна быть отвергнута в корне.

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

    В общем если цель - стабильные нормальные деньги - устраивайтесь в офис. Если пока не берут - качайте недостающие скиллы. Офисный опыт вообще очень полезная штука - всем советую начать с этого перед тем как ломиться на рынок фриланса и создавать там потом демпинг низкоквалифицированными руками :)

    Offtop: А то насмотрятся картинок "с ноутбуком под пальмами" сделают один сайт приятелю по классу и давать лезьть во фрилансеры :) Вы вообще пробовали на солнце под пальмой что-нить рассмотреть на экране ноутбука? :)
    Ответ написан
    Комментировать
  • Перегрузки методов без дублирования кода в C#?

    Gorily
    @Gorily
    В случаях, когда код это позволяет, можно вынести основной функционал в один из методов (базовый для вас) и вызывать его из других перегрузок:
    string GenerateText(string text)
    {
     return GenerateText(text, "Без заголовка");
    }
    
    string GenerateText(string title, string text)
    {
     return title + Environment.NewLine + text;
    }

    Можно использовать необязательные аргументы, они как раз должны хорошо подойти в случае 1-3 различающихся параметров:
    string GenerateText(string title, string text = "Без заголовка")
    {
     return title + Environment.NewLine + text;
     }

    Никто не может запретить вам передавать вместо не используемых аргументов null и обрабатывать в коде:
    string GenerateText(string title, string text)
    {
     return title + Environment.NewLine + (text ?? "Без заголовка");
    }

    А в случае неопределённого числа однотипных аргументов используем params:
    string GenerateText(string title, params string[] text)
    {
     return title + Environment.NewLine + string.Join(Environment.NewLine, text);
    }

    Комбинируйте этот базовый набор и его должно быть вполне достаточно для аккуратного кода. И само собой, выделяйте повторяемый функционал в методы и классы для последующего повторного использования.
    Ответ написан
    Комментировать
  • Как быть с моделями в ASP.NET MVC?

    Nipheris
    @Nipheris Куратор тега C#
    Короткий ответ на ваш вопрос: Code First, Mappings.
    Длинный ответ: вам действительно нужно разобраться, что называть моделью.
    Лично я убежден, что модельные классы, представляющие из себя DTO - это по-любому anemic data model, а анемичная модель - это в 90% случаев нехорошо. Поэтому, у вас два варианта: отказаться от генерации "по картинке" в пользу Code First (рекомендую), либо пойти по пути Евгений Колегов - сказать, что EF-овская модель - это и не модель, а так, граф примитивных объектов с get/set-ами, а настоящая модель - вот она, обертка над ними, с реальной бизнес-логикой и т.д.

    > По сути эти модели - это DTO то есть просто объекты содержащие только данные. А как быть с логикой обработки этих данных? Она должна быть в контроллерах что ли?
    Ну это тот же самый вопрос: нормальная модель должна содержать логику.
    > в Asp.net mvc должны быть "тонкими", то есть не содержать особой логики.
    В контроллере - минимум, там логика специфичная не для бизнес-процессов, а для процесса работы самого web api, т.е. определение того, что нужно сделать с бизнес-сущностями, чтобы удовлетворить запрос.
    > Или надо писать еще и дополнительные контроллеры в которых будет сосредоточена логика работы с моделями?
    не стоит, думаю в вашей задаче такой дополнительный слой совершенно излишен.

    Резюме: модель вполне может и должна следовать обычным правилам ООП, известным уже лет 40 - данные и логика их обработки должны быть рядом друг с другом. Отделение бизнес-логики отдельно от модели - это такой своеобразный фетиш разбиения приложения на много-много слоев (на самом деле выделение веб-сервиса с четко определенным api - уже неплохой слой). Если вы чувствуете себя некомфортно от того, что у вас модель без логики, и не можете ее туда поместить - нужно менять инстурменты или вариант их использования. Первые версии EF - это первый блин комом, отсутствие поддержки Code First и нормальных маппингов считалось серьезной проблемой. Сейчас это уже давно в прошлом.
    Бонусные варианты, если вы не связаны ограничениями:
    1) генерация ТАБЛИЦ ПО КЛАССАМ, а не маппинг классов на таблицы: для кого-то этот вариант очень даже подходит, плюс упрощает менеджмент схемой БД: у вас всегда есть один источник сведений о схеме данных - это ваша модель. По ней можно всегда получить текущую SQL-схему;
    2) если вам нравится отдельно следить за объектной моделью и за SQL (я вот именно так люблю), можете посмотреть и на другие ORM - NHibernate вполне себе торт. Сейчас конечно EF более популярна, ибо стандартная и раскрученная, но я 4 года назад выбрал NH для своего проекта из-за отсутствия неприятных ограничений (например, NH умеет мапать даже на приватное поле, а EF тогда не умел) и из-за наличия вменяемых механизмов маппинга.
    Ответ написан
    Комментировать
  • Как сделать круг с сегментами?

    @olrickx Автор вопроса
    Нашел решение кому нужно берите codepen.io/anon/pen/YPbKgw
    Ответ написан
    Комментировать
  • Сделать прозрачным цвет на картинки. CSS. .JavaScript?

    Olbery
    @Olbery
    Учащийся. Пытающийся.
    с помощью css треугольник делается через border - просто задаете три стороны вместо четырех. Вот статья на эту тему htmlbook.ru/blog/treugolniki-cherez-css - должно помочь в даном вопросе.
    Ответ написан
    Комментировать