• В какой профессии можно применить все это?

    @kiru
    Аналитик
    1. Аналитик больших данных
    2. Аналитик бизнес-информации
    3. Бизнес-аналитик (ИТ сфера)
    4. Дизайнер инфографики
    5. Экономист-планировщик
    6. Маркетолог
    7. Специалист по продвижению (SMM, сайты, директолог и т.д.)
    Ответ написан
    2 комментария
  • Как создать браузер на C# или C++?

    @SolidMinus
    UPD: сообщение обрезает... почему-то
    UPD2: Защита от cross-site-scripting, из-за блока
    <script>
    вне кода он удалил часть сообщения................


    Народ, вы чего? Автор не говорил, что будет его кодить. Имхо, ему интересно как это делается. Я верно понял?

    Чтобы сделать ядро для браузера надо идти от самого нуля:

    0. Запросы к сети. Реализация http протокола. Прикрутить еще потом SSL/TLS и будет https.
    1. Парсинг домена. распарсить вида domain_name:port, сделать DNS запрос на резолв домена, и в заголовках http указывать host:domain_name, подключаться на port. Он может быть отличным от 80-го, например.
    2. Сделать рендер html. Пишешь движок анализатор хтмла который распределяет элементы по экрану. Если встречается блок script то передает в соответствующий интерпретатор языка, например, javascript.
    3. Сделать обратную связь с юзером. Если он клацает по кнопке на экране, то надо сопоставить эту кнопку с тем, куда она ведет. Далее совершить запрос к той странице и получить ответ.

    итого имеем:

    * Анализатор html/css, рендер графики.
    * Интерпретатор как минимум javascript

    В итоге - свой браузер, это еще сложнее чем свой интерпретатор языка программирования... да...Поэтому если решились сделать свой браузер с нуля - лучше сделайте язык программирования :)))))))
    Ответ написан
    Комментировать
  • Как создать браузер на C# или C++?

    @asd111
    Используйте blink. www.chromium.org/blink
    В Qt framework есть компонент qt web engine, основанный на blink doc.qt.io/qt-5/qtwebengine-index.html
    Или почитайте исходники blink https://chromium.googlesource.com/chromium/blink/+... Это форк webkit, на котором работает нынешний chrome.
    Ответ написан
    Комментировать
  • Какой фронтенд фреймворк лучше выбрать для изучения?

    @campus1
    1. Прочекай вакансии, какой фреймворк востребован, на какой больше вакансий и от этого отталкивайся.
    2. Попробуй и то и то, если время не ограничено. Поймешь что тебе по душе.
    3. Рекомендую взглянуть на статистику .
    4. Можете взглянуть видео сравнение
    Ответ написан
    Комментировать
  • Как составить план проектирования проекта?

    MarcusAurelius
    @MarcusAurelius
    автор Impress Application Server для Node.js
    Идея/концепция к проектированию не относится, это отдельный предварительный этап. Для проектов побольше, и в общем случае, проектирование включает такие шаги, многие из которых, конечно, можно пропустить или сократить до минимума, если задача не сложная:
    1. Системный анализ и изучение предметной области
    2. Формирование требований к разрабатываемой системе
    3. Архитектуная задача, которая сводится к простой формуле: разделять, называть и связывать подсистемы
    3.1. Декомпозиция сложных задач
    3.2. Слои (построение слоев абстракций)
    3.3. Планирование топологии системы, программной и серверной инфраструктур
    3.4. Решение вопроса интеграции подсистем, программные интерфейсы, контракты и связывание
    3.5. Интеграция с унаследованными приложениями
    3.6. Минимизация изменений, для случаев, когда постоянно происходят изменения в предметной области
    4. Выбор инструментов решения
    4.1. Выбор парадигм программирования и языков
    4.2. Выбор технологий и платформ
    4.3. Выбор моделей данных, алгоритмов и библиотек
    4.4. Выбор топологий и протоколов
    4.5. Выбор паттернов программирования
    5. Предварительные исследования
    5.1. Проверка гипотез, эксперименты
    5.2. Изучение особенностей технологий
    5.3. Прототипирование
    6. Задачи обеспечения надежности
    6.1. Планирование безопасности и защиты от несанкционированного доступа
    6.2. Планирование отказоустойчивости
    6.3. Планирование мер по обслуживанию системы в режиме эксплуатации
    6.4. Задачи высоких нагрузок, балансировки и масштабирования, если таковые предполагаются
    7. Организация процесса разработки
    7.1. Жизненный цикл программной системы
    7.2. Конвенции кода, соглашения и стандарты
    7.3. Оценка необходимых временных и финансовых ресурсов для разработки системы
    7.4. Календарный план
    7.5. Анализ и минимизация рисков, выявление слабых мест технологий и коллектива
    7.6. Закрепление принципов управления процессом разработки и корректировки задания в процессе
    8. Сборка технического задания из результатов всех предыдущих пунктов
    Ответ написан
    2 комментария