Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (3)

Наибольший вклад в теги

Все теги (32)

Лучшие ответы пользователя

Все ответы (51)
  • Насколько пригоден ASP.NET Core для стартового проекта?

    @denismaster
    Добрый день! Поднимали уже два проекта на asp.net core, остались довольны. В целом технология готова, многое что еще не допилили - допиливают активно, работает стабильно.
    По вашим вопросам:
    • Реализация BCL в целом почти полная, все что нужно в 90% случаев уже давно есть, обработка данных, криптография и рефлексия поддерживается.
    • Возможно запустить asp.net core поверх полного дотнета, можно и так. Проблем в целом нет, без каких либо проблем тот же код, если не использует что-то специфичное, запускается и на других платформах.
    • PInvoke не применяли, но в интернете довольно много успешных историй его применения, в частности, фреймворк Avalonia его успешно применяет вроде как.
    • Kestrel отлично справляется в связке с nginx, да и сам по себе годен. Работает быстро.

    Как по мне, будущее за .NET Core. Использовать его уже реально.
    Ответ написан
  • Можно ли начинать разработку проекта на ASP.NET Core?

    @denismaster
    Да, можно и нужно начинать! Проблем с ним нет, используем .NET Core 2.0 в продакшне. Работает быстро, проблем нет. Многое уже есть из коробки. Это будущее .NET.
    Ответ написан
  • Написать компилятор на C# или C++ или Python?

    @denismaster
    Видел парня на хабре. В 11 лет не каждый может такого достичь, как он, но все же.

    Итак, вы хотите написать компилятор. Это не так сложно, как кажется(иначе не было бы такого количества языков).
    1. Понадобится выучить, что такое грамматики, формальные и регулярные языки, контекстно-свободные грамматики и так далее. Необходимо достаточно глубоко понимать, что это и для чего. Также нужны знания структур данных, ассемблера, паттернов проектирования.
    2. Для опыта необходимо посмотреть грамматики современных языков, благо, они есть в свободном доступе. Пример раз, пример 2
    3. На основе полученных знаний, а также опыта изучения грамматик существующих языков необходимо написать свою грамматику
    4. К этому моменту вы сильно подрастете, если не физически, то скиллом уж точно, поэтому заведите себе хобби или девушку, чтобы отвлекаться от этой дребедени, иначе сойдете с ума.
    5. На основе данной грамматики пишется на любом известном вам языке лексер и парсер, которые переводят эту грамматику в набор токенов(задача лексера), а парсер эти токены в Абстрактное Синтаксическое Дерево (Abstract Syntax Tree)
    6. На основе данного дерева вы можете проводить анализ кода, проверку на ошибки, оптимизации.
    7. Данное дерево мы можем трансформировать в другую форму. После чего на его основе сгенерировать код, который мы хотим получить.
    8. Крайне советую посмотреть исходники открытых компиляторов, например, Roslyn для шарпа или аналогов для других языков, чтобы посмотреть, как оно вообще работает.


    В одиночку написать компилятор для языка высокого уровня достаточно сложно, поэтому советую выбрать язык, который вам нравится, но который вы хотели бы поменять, изучить теоретическую часть, а дальше идти на гитхаб к проекту компилятора для вашего языка и делать пулл-реквесты. Заодно вы получите опыт командной разработки, глубокие знания самого языка, который вам нравится.

    И да, придется оооочень много читать, а также хороший английский, на русском намного меньше литературы по данной специфике.
    Ответ написан
  • Целесообразно ли использовать Angular 4 на классическом PHP сайте, а не в роли SPA?

    @denismaster
    SEO возможно с использованием серверного пререндеринга и Angular Universal.

    А по скорости загрузки - достаточно большой сайт с использованием Lazy Loading и Ahead Of Time грузится вполне себе быстро, за секунду.

    Советую вам попробовать, возможно, у вас получится полностью перейти на SPA=)
    Ответ написан
  • Что нужно изучить для разработки современных веб-приложений?

    @denismaster
    Backend - ASP.NET Core \ NodeJS
    Frontend - Angular 4, Vue

    Node.JS на фронтенде нужен для использования модулей и сборки всего воедино. В результате получится набор файлов, не привязанный к Node, предназначенный для браузера.
    Ответ написан

Лучшие вопросы пользователя

Все вопросы (6)