• Где лучше хранить контент?

    Код храним только в файлах. Хранение в базе изначально не продуманная идея.
    - Во-первых, текстовые данные (код) нехило ломает кэширование MySQL.
    - Во-вторых, доступ к файлам гораздо быстрее.
    - В-третих, когда код находиться в базе становиться весьма проблематичным его модифицировать.
    - В-четвёртых, лучше использовать Sphinx для поиска по файлам, чем поиск по базе.
    Ответ написан
    1 комментарий
  • Где лучше хранить контент?

    @stas3572
    Конечно из базы! Также стоит задуматься о хранении скриптов и стилей в отдельных табличках.
    Выгода: колоссальная, вы только представьте в вашем index.php будут в итоге всего лишь несколько запросов к базе - на подключение разметки/шаблона, скриптов и стилей, а не всякий лапшакод из html, js, css и php вперемешку
    Ответ написан
    4 комментария
  • Где лучше хранить контент?

    dimsog
    @dimsog
    Переносил код с PHP 4 на 7.4...
    Хм, зачем код хранить в базе? MySQL создан как раз для того, чтобы хранить контент.
    Ответ написан
    Комментировать
  • Как передать данные для строго типизированного частичного представления или для _Layout.cshtml?

    Valeriy1991
    @Valeriy1991
    Разработчик .NET C# (ASP.NET MVC) в Alfa-B, Moscow
    Добрый день!
    Используя
    @{Html.RenderPartial("_Navigation");}
    Вы просто отображаете представление.

    Чтобы передать модель в представление, нужно эту модель сформировать. Модель лучше сформировать в методе действия, например, так:
    [HttpGet]
    public ActionResult Navigation()
    {
    	List<MyClass> classes = new List<MyClass>();
    	classes.Add(new MyClass() { Id = 1, Name = "item 1" });
    	classes.Add(new MyClass() { Id = 2, Name = "item 2" });
    	classes.Add(new MyClass() { Id = 3, Name = "item 3" });
    	
    	return View("_Navigation", classes);
    }


    Теперь Вам нужно заменить
    @{Html.RenderPartial("_Navigation");}
    на это:
    @{Html.RenderAction("Navigation", "YourController");}


    RenderPartial просто рендерит представление, а RenderAction грубо говоря, "запрашивает представление у метода действия".

    Второй Ваш вопрос
    Или можно ли как то передать для _Layout.cshtml? тогда получится глобально
    не понял.

    Надеюсь, помог Вам чем-нибудь.
    Успехов!
    Ответ написан
    1 комментарий
  • Какую выбрать технологию и язык для написания диплома (ASP.NET MVC 4 или Yii PHP Framework или Ruby on Rails)?

    Valeriy1991
    @Valeriy1991
    Разработчик .NET C# (ASP.NET MVC) в Alfa-B, Moscow
    Добрый день!
    Вставлю свои 5 копеек по ASP.NET MVC:

    1. Скорость изучения.
    Учитывая, что Вы уже знакомы с C#, то изучение основ ASP.NET и особенностей разработки на ASP.NET MVC с помощью книг "Microsoft ASP .NET 4 с примерами на c# 2010 для профессионалов" (Мэтью МакДональд, Адам Фримен, Марио Шпушта) и "ASP.NET MVC3 (или 4) Framework с примерами на C# для профессионалов" (Адам Фримен, Стивен Сандерсон) займет у Вас примерно месяц при условии 4-5 часов занятий в день.
    Если будете разрабатывать на ASP.NET MVC и выберете ORM EntityFramework, то берите сразу последнюю (6.1.) версию. Статья по EF6 Вам в помощь.

    2. Функциональность.
    Этого пункта не понял, поэтому лучше промолчу.

    3. Создание api (или через что лучше организовать доступ с сайту через мобильное приложение?) для приложения андроид.
    На asp.net есть отличные статьи по ASP.NET WebAPI.

    4. Возможность найти помощь по проблемам (другими словами размер лояльного сообщества)
    К Вашим услугам:
    MSDN
    asp.net
    Stackoverflow
    Собственно, сам Toster и Хабр
    Лично я обычно делаю так: захожу в гугл и формирую запрос по английски, потому что по личному опыту, так решить проблему можно быстрее, чем искать на русскоязычных источниках.

    5. Сложность изучения
    Опять-таки учитывая тот факт, что с C# Вы уже знакомы, то - примерно средняя (чисто субъективно).

    6. Производительность
    Боюсь, тут я ничем Вам не смогу помочь, т.к. на PHP/RoR я не программировал и производительность всех трех технологий не сравнивал. Что касательно MVC, то заметил, что на локальном ПК (localhost) при разработке веб-приложение грузится чуть медленнее, чем на реальном хостинге или выделенном сервере (Да оно, собственно говоря, и понятно, т.к. на хостинге-то стоит нормальный IIS, а в VisualStudio при build проекта он запускается под Local IIS Express)

    7. Подскажите что еще важно при выборе?
    Пожалуй, цена вопроса. Так, для разработки на PHP Вам достаточно (если я не ошибаюсь) любого бесплатного редактора (Eclipse, Aptana, Codelobster, ...) и бесплатного веб-сервера Apache. Что касается разработки под ASP.NET MVC (да и вообще на стеке технологий .NET), то тут у Вас есть 2 пути:
    1) использование free Express-версий продуктов (Visual Studio, MS SQL Server)
    2) соответственно, использование платных версий тех же продуктов.

    И еще пару моментов:
    1. Узнайте, состоит ли Ваш универ в альянсе Microsoft Academy Alliance (или как-то так). Мой универ состоял, и нам в Dreamspark были доступны все платные продукты за бесплатно - VS вплоть до Ultimate, MS SQL Server, все версии Windows и др. (естесственно, "в образовательных целях"). Если состоит, то узнайте у Ваших IT-преподователей, как получить доступ. Когда учился в универе, меня регистрирова препод, а потом на мой email пришло письмо на english, что-то вроде "ура, вы зарегистрированы, ваши данные для входа такие-то...".
    2. Если п.1 не сработал, то есть сайт - ИНТУИТ. Закончив там (вроде бы достаточно только 1 курса) курс от Microsoft, вы получаете ключ для регистрации на Dreamspark, в котором Вам открываются след.возможности:
    - Visual Studio all versions professional
    - MS SQL Server all versions
    - Windows + Windows Server
    И это, опять-таки, все бесплатно.

    По поводу Вашей темы диплома.
    Лично я немного не согласен с @SamDark в том плане, что "важна тема диплома, ее новизна и практическое значение". Новизна и практическое значение важны больше при разработке и защите различных диссертаций (докторских и какие там еще есть?), чем для диплома. Ваша идея, считаю, отличная, и неважно, что кто-то говорит, что "таких много". Да, много, но можно предложить свое решение задач, которое будет интереснее, красивее, удобнее, дешевле, проще, ... (нужное подчеркнуть). Если Вам эта тема интересна, и, что называется, тревожит душу, то беритесь за нее. Важна не идея, а ее реализация. К примеру: zappos.com - интернет-магазин обуви. Вроде бы чертова обувь... А если присмотреться, то их бизнес уникален (точнее, уникально предложенное ими решение проблемы - покупка обуви в интернете). Или basecamp от 37signals - вроде бы система управления проектами. А ведь Microsoft Project - тоже система управления проектами. Но на мой субъективный взгляд они и рядом не стоят. Разница в идее? Нет. Разница в реализации. А если получится действительно хороший продукт, то можно его превратить в SaaS и получать за это свои кровные.

    Надеюсь, я Вам немного помог в Вашем выборе.
    Ответ написан
    2 комментария
  • На чем писать портал типа twitter.com и подобный сервис?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Есть отличный пост Александра Горного (бывший CTO РБК, ныне CIO mail.ru)

    gornal.livejournal.com/81969.html
    Ответ написан
    Комментировать
  • На чем писать портал типа twitter.com и подобный сервис?

    @Snewer
    На том что вам по душе!
    На любом из предложенных языков можно написать как отличный так и не очень отличный проект. Если проанализировать подобные вопросы за последнее время на тостере, то все заключается не столько в языке, сколько в архитектуре приложения
    Ответ написан
    Комментировать
  • Как реализовать систему сообщений на сайте?

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

    Куда проще и логичнее сделать систему связи с администрацией прямо на сайте. Обычный пользователь отправляет сообщение администрации, оно отображается в личном кабинете администратора. Администратор, в свою очередь, помимо самого сообщения выбирает также и пользователя, которому письмо уйдет.

    Реализация проста: таблица с тремя полями: текст, отправитель, получатель (ну еще всякие дополнительные типа id, даты). Можно прикрутить уведомления на почту.
    Ответ написан
    2 комментария
  • Как реализовать авторизацию через api?

    zBit
    @zBit
    Full stack web developer
    OAuth2.0 и обязательное использование защищённого соединения (SSL).
    Ответ написан
    Комментировать
  • Какую выбрать технологию и язык для написания диплома (ASP.NET MVC 4 или Yii PHP Framework или Ruby on Rails)?

    miraage
    @miraage
    Старый прогер
    Пишу на php около 3 лет, юзаю Yii.
    Однако, если бы вернуть время назад, то я бы выбрал рельсы.
    Ответ написан
    5 комментариев
  • Какой есть легкий для изучения, хорошо документированный php фреймворк?

    Однозначно Yii.
    Вот видеоуроки rutracker.org/forum/viewtopic.php?t=4172581
    Вот русская инструкция www.yiiframework.com/doc/guide/1.1/ru/index
    Есть еще потрясная книжка ru.yiicookbook.org
    Фреймворк активно развивается, на подходе вторая версия. Огромное число расширений под него www.yiiframework.com/extensions
    Ответ написан
    Комментировать
  • Какую выбрать технологию и язык для написания диплома (ASP.NET MVC 4 или Yii PHP Framework или Ruby on Rails)?

    SamDark
    @SamDark
    Yii2 core team
    По мне не так важна тема, как язык и технологии на котором его писать.


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

    В качестве темы склоняюсь к информационной системе для веб-студии.


    Это уже было в симпсонах. Одни из важных критериев оценки дипломов — новизна и практическое значение. По новизне проект получается не нов. На практике да, полезен, но революцию в области или хотя-бы в её части не делает.

    По пунктам могу прокомментировать по Yii 2.0.

    1. Скорость изучения высокая, если с ООП нормально и с PHP знакомы.
    2. Функциональность: почти всё для веб, много для API.
    3. Создание API: есть из коробки.
    4. Возможность найти помощь по проблемам. С этим всё отлично. Сообщество у Yii что надо.
    5. Сложность изучения. Относительно низкая.
    6. Производительность. Хорошая даже если специально не оптимизировать.
    7. Подскажите что еще важно при выборе? Чтобы нравилось.
    Ответ написан
    9 комментариев
  • Какую выбрать технологию и язык для написания диплома (ASP.NET MVC 4 или Yii PHP Framework или Ruby on Rails)?

    viktorvsk
    @viktorvsk
    Врядли за такое короткое время, не располагая большим опытом, самому получится написать что-то стоящее по типу CRM, менеджера проектов и т.д.
    Конечно, все зависит от того, что значит "с с# намного больше", но если нет реального опыта разработки продакшн приложения на нем, то я бы посоветовал взять https://github.com/redmine/redmine на ruby и к нему клиент написать клиент на фронтэенде (backbone, angular...), далее, если будет время, завернуть в экстеншн для браузера, или с фонгапом сделать приложение.

    Ruby - много синтаксического сахара для быстрой разработки
    Redmine - его используют даже там, где о руби вообще не знают, насколько мне известно, довольно качественный и гибкий продукт: не придется городить тонну своих велосипедов.
    Клиент на фронтэнде - это довольно популярный скилл, заставит освоить много технологий, очень большое количество юзкейсов, просто интересно.
    Плюс, если все-таки хоть что-то получится, то хорошие клиенты на рейдман покупают, вроде как ( rmclient.org/ru )
    Ответ написан
    7 комментариев
  • Какую выбрать технологию и язык для написания диплома (ASP.NET MVC 4 или Yii PHP Framework или Ruby on Rails)?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    По мне не так важен язык и технология, сколько грамотное их использование.

    В контексте вопроса, для диплома, лучше бы подошел ASP.NET, как минимум потому что есть возможность быстро и в пару кликов все что нужно для оформления диплома сгенерить (структура классов, таблиц в базе). Да и если изучить ASP.NET переход на популярные PHP/Java фреймворки не составит особого труда.
    Ответ написан
    3 комментария
  • Зачем писать свой движок сайта?

    akubintsev
    @akubintsev
    Опытный backend разработчик
    Написать "универсальный движок сайта" невозможно. Нужны конкретные спецификации, ТЗ.
    Потом следовало бы задать вопрос "чем не устраивают существующие готовые решения?"
    Ответ написан
    Комментировать
  • Зачем писать свой движок сайта?

    @samodroid
    Старайтесь выполнять работу по своим силам,простой движок сайта можно сделать, это не такая уж трудная задача.Так как пхп-это язык с ооп, то воспользуйтесь этим козырем, разложите все задачи движка по классам, вам будет намного легче. Главное написать план действий на бумаге на каждый день и не переутомляться. Вот пример плана:
    1 день: сделать главную страницу.
    2 день: сделать стиль элементов.
    3 день: создать модуль загрузки картинок.
    4 день: создать модуль добавления новых страниц сайта.
    5 день: создать модуль меню.
    Две недели-это достаточный срок для написания основы для движка и минимальный функционал. Возможно это просто проект для набора опыта, потом легче будет работать. В крайнем случае если вас уволят с работы, то хотябы будет опыт, после дома вы всегда сможете улучшить свои результаты и найти другую работу, где вы пройдете испытание. Главное- не отчаиваться, отчаяние- самый большой враг человека! Очень часто бывает,что человек по-многу раз ищет новую работу.
    Ответ написан
    1 комментарий
  • Как улучшить знания по .NET?

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

    По второму вопрос сложно что-то сказать. У всех понимание правильности кода разное, и все его видят по своему. Если кажется что написали не очень, но работает, то просто остановитесь здесь, и подумайте, можно ли как-то оптимизировать. Только не перестарайтесь.
    Ответ написан
    2 комментария
  • Веб сервис: WCF или ASP.NET MVC?

    Funbit
    @Funbit
    Всё зависит от проекта и области применения.
    В общем случае, варианты архитектуры могут выглядить вот так:

    [ASP.NET MVC]  <->   [ASP.NET WebAPI]    <->   [WCF SERVER]    <->    [DATABASE]

    Данная связка рекомендуется для серьезных, высоконагруженных и кроссплатформенных проектов с серьезными требованиями безопасности. WebAPI (фактически, это будет прокси для WCF SERVER'a) и MVC могут крутиться на одном и том же IIS сервере. WCF SERVER же лучше держать отдельным сервисом либо на той же машине, либо отдельно.

    [ASP.NET MVC]  <->   [WCF SERVER]    <->    [DATABASE]

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

    [ASP.NET MVC]  <->   [ASP.NET WebAPI]   <->    [DATABASE]

    Такая архитектура годится для 99% интернет стартапов. Самая простая и быстрая в разработке, при этом не сильно уступающая более сложным вариантам, описанным выше. А с выходом MVC 6 исчезнет необходимость крутить такой сервер на IIS'e и позволит запускать его на Linux.

    Скорее всего вам больше подходит последний вариант.
    Ответ написан