Задать вопрос
Профиль пользователя заблокирован сроком с 16 октября 2023 г. и навсегда по причине: систематические нарушения правил сервиса
  • Какие распределенные реляционные базы данных бывают?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    MSSQL
    тут главное что вы подразумеваете под "распределенные"
    Ответ написан
    Комментировать
  • Какой софт использует расчеты на видеокарте?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Adobe Photoshop.
    Any of AAA games
    Ответ написан
  • Как пройтись по ComboBox'ам?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    У формы есть потомки, пройдитесь по ним.
    foreach (Control control in Controls)
                {
                    Debug.WriteLine(control.Name);
                }


    Другой вариант
    var cmBox = new List<ComboBox>();
     foreach (ComboBox box in cmBox)
                {
                    if(box.Name == "startCompound1"){
    // что то 
                          }
                }
    Ответ написан
  • Как создать счетчик запуска программ внутри самой программе(внутри поля класса)?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Выберите любое доступное хранилище.
    Реестр
    Облако
    Стрим в файле
    Ответ написан
    2 комментария
  • Как десереализировать json и значение объекта вставить в ComboBox?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Ваш код не валидный
    [{
    		"name": "SiO2",
    		"h": 906,
    		"s": -477,
    		"a": 44,
    		"b": 67,
    		"c": 47
    	},
    	{
    		"name": "Al2O3",
    		"h": 805,
    		"s": -155,
    		"a": 53,
    		"b": 73,
    		"c": 62
    	}
    ]


    using (FileStream fs = new FileStream("db1.json", FileMode.OpenOrCreate))
                {
                    CompoundProps propss = JsonSerializer.Deserialize<CompoundProps[]>(fs.ReadToEnd());
                    var props = propss[0];
                    Console.WriteLine($"Name: {props.name}  H: {props.h} S: {props.s} a: {props.a} b: {props.b} c: {props.c}");
                }
    Ответ написан
    Комментировать
  • Как обстоят дела SEO с многостраничных приложений на Vue?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Как пример пререндеренга, выносите сюда что нужно индексировать
    // vue.config.js
    var path = require('path')
    const PrerenderSPAPlugin = require('prerender-spa-plugin')
    const Renderer = PrerenderSPAPlugin.PuppeteerRenderer
    const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
    
    module.exports = {
        configureWebpack: {
            module: {
                rules: [
                    {
                        test: /\assets\/.*.css$/i,
                        use: ['style-loader', 'css-loader'],
                    },
                ],
            },
            plugins: [
                new BundleAnalyzerPlugin(),
                new PrerenderSPAPlugin({
                    // Required - The path to the webpack-outputted app to prerender.
                    staticDir: path.join(__dirname, 'dist'),
    
                    // Optional - The path your rendered app should be output to.
                    // (Defaults to staticDir.)
                    outputDir: path.join(__dirname, 'prerendered'),
    
                    // Optional - The location of index.html
                    indexPath: path.join(__dirname, 'dist', 'index.html'),
    
                    // Required - Routes to render.
                    routes: ['/', '/about'],
    
                    // Optional - Allows you to customize the HTML and output path before
                    // writing the rendered contents to a file.
                    // renderedRoute can be modified and it or an equivelant should be returned.
                    // renderedRoute format:
                    // {
                    //   route: String, // Where the output file will end up (relative to outputDir)
                    //   originalRoute: String, // The route that was passed into the renderer, before redirects.
                    //   html: String, // The rendered HTML for this route.
                    //   outputPath: String // The path the rendered HTML will be written to.
                    // }
                    postProcess(renderedRoute) {
                        // Ignore any redirects.
                        renderedRoute.route = renderedRoute.originalRoute;
                        // Basic whitespace removal. (Don't use this in production.)
                        renderedRoute.html = renderedRoute.html.split(/>[\s]+</gmi).join('><')
                        // Remove /index.html from the output path if the dir name ends with a .html file extension.
                        // For example: /dist/dir/special.html/index.html -> /dist/dir/special.html
                        if (renderedRoute.route.endsWith('.html')) {
                            renderedRoute.outputPath = path.join(__dirname, 'dist', renderedRoute.route);
                        }
    
                        return renderedRoute;
                    },
    
                    // Optional - Uses html-minifier (https://github.com/kangax/html-minifier)
                    // To minify the resulting HTML.
                    // Option reference: https://github.com/kangax/html-minifier#options-quick-reference
                    minify: {
                        collapseBooleanAttributes: true,
                        collapseWhitespace: true,
                        decodeEntities: true,
                        keepClosingSlash: true,
                        sortAttributes: true
                    },
    
                    // Server configuration options.
                    server: {
                        // Normally a free port is autodetected, but feel free to set this if needed.
                        port: 8001
                    },
    
                    // The actual renderer to use. (Feel free to write your own)
                    // Available renderers: https://github.com/Tribex/prerenderer/tree/master/renderers
                    renderer: new Renderer({
                        // Optional - The name of the property to add to the window object with the contents of `inject`.
                        // injectProperty: '__PRERENDER_INJECTED',
                        // Optional - Any values you'd like your app to have access to via `window.injectProperty`.
                        //  inject: {
                        //    foo: 'bar'
                        // },
    
                        // Optional - defaults to 0, no limit.
                        // Routes are rendered asynchronously.
                        // Use this to limit the number of routes rendered in parallel.
                        maxConcurrentRoutes: 4,
    
                        // Optional - Wait to render until the specified event is dispatched on the document.
                        // eg, with `document.dispatchEvent(new Event('custom-render-trigger'))`
                        // renderAfterDocumentEvent: 'custom-render-trigger',
    
                        // Optional - Wait to render until the specified element is detected using `document.querySelector`
                        // renderAfterElementExists: 'my-app-element',
    
                        // Optional - Wait to render until a certain amount of time has passed.
                        // NOT RECOMMENDED
                        // renderAfterTime: 5000, // Wait 5 seconds.
    
                        // Other puppeteer options.
                        // (See here: https://github.com/GoogleChrome/puppeteer/blob/master/docs/api.md#puppeteerlaunchoptions)
                        headless: true //  было false Display the browser window when rendering. Useful for debugging.
                    })
                })
            ]
        }
    }
    Ответ написан
  • Как в полной мере изучить c#?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Какие курсы по C шарп лучше выбрать?
    Посмотрите мой ответ. Там целая куча экзаменов по C#, внизу описания курса идут ссылки на обучающие курсы.
    Ответ написан
    Комментировать
  • Как достать переменную?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Один из методов
    private _someValue;
    void FirstMethod(){
       _somevalue = value;
    }
    void SecondMethod(){
       var value = _somevalue;
    }
    Ответ написан
  • Выигрывает ли nodejs в производительности php на примере обычного сайта?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Конечный, ультимативный, окончательный ответ даст только профайлер и то на двух ветках написанных очень знающими людьми.
    Ответ написан
  • Textbox как отобразить?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
  • Как можно реализовать привязку данных TreeView к RichTextBox?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Первые 2 класса хранят данные, загружают из бд, ну тут сами придумаете. См LoadData
    Последний это форма обрабатываются события NodeMouseClick и TextChanged на текст боксах.
    Логика простейшая, но это в общем то пример, в реальности усложните по вкусу.
    using System.Collections.Generic;
    
    namespace TreeViewBinding.Code
    {
        public class TreeSource
        {
            public TreeSource()
            {
                Leaves = new List<TreeLeaf>();
            }
            public List<TreeLeaf> Leaves { get; set; }
    
            /// <summary>
            /// Load data stub. In this example use mock data. In real application load data from database or web service
            /// </summary>
            public void LoadData()
            {
                var first = new TreeLeaf { Description = "First description", Title = "First" };
                var firstSubs = new[]
                {
                    new TreeLeaf(first){Description = "First desc",Title = "First"},
                    new TreeLeaf(first){Description = "Second desc",Title = "Second"},
                    new TreeLeaf(first){Description = "Third desc",Title = "Third"}
                };
                first.Leaves.AddRange(firstSubs);
                var second = new TreeLeaf { Description = "Second description", Title = "Second" };
                var third = new TreeLeaf { Description = "Third description", Title = "Third" };
                Leaves.AddRange(new[]
                {
                    first,
                    second,
                    third,
                });
            }
        }
    }


    using System.Collections.Generic;
    
    namespace TreeViewBinding.Code
    {
        public class TreeLeaf
        {
            public TreeLeaf(TreeLeaf parent = null)
            {
                Leaves = new List<TreeLeaf>();
                Parent = parent;
            }
            public int Id { get; set; }
            public string Title { get; set; }
            public string Description { get; set; }
            public string Icon { get; set; }
            public List<TreeLeaf> Leaves { get; private set; }
            public TreeLeaf Parent { get; private set; }
        }
    }


    #region License
    // // Разработано: Коротенко Владимиром Николаевичем (Vladimir N. Korotenko)
    // // email: koroten@ya.ru
    // // skype:vladimir-korotenko
    // // https://vkorotenko.ru
    // // Создано:  09.05.2020 8:26
    #endregion
    
    using System.Collections.Generic;
    using System.Windows.Forms;
    using TreeViewBinding.Code;
    
    namespace TreeViewBinding
    {
        public partial class TreeViewBindingForm : Form
        {
            private TreeSource _treeSource;
            private TreeLeaf _currentLeaf;
            private TreeNode _node;
            public TreeViewBindingForm()
            {
                InitializeComponent();
                _treeSource = new TreeSource();
                _treeSource.LoadData();
                FillInTree(treeView.Nodes, _treeSource.Leaves);
            }
    
            private static void FillInTree(TreeNodeCollection  nodes, IEnumerable<TreeLeaf> leafs)
            {
                foreach (var leaf in leafs)
                {
                    var treeNode = new TreeNode(leaf.Title) {Tag = leaf};
                    nodes.Add(treeNode);
                    if (leaf.Leaves.Count > 0) FillInTree(treeNode.Nodes, leaf.Leaves);
                }
            }
    
            private void treeView_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
            {
                if (e.Node.Tag is TreeLeaf item)
                {
                    _node = e.Node;
                    _currentLeaf = item;
                    titleTextBox.Text = item.Title;
                    descriptionTexBox.Text = item.Description;
                }
            }
    
            private void titleTextBox_TextChanged(object sender, System.EventArgs e)
            {
                if (_node != null)
                {
                    _currentLeaf.Title = _node.Text = titleTextBox.Text;
                }
            }
    
            private void descriptionTexBox_TextChanged(object sender, System.EventArgs e)
            {
                if (_node != null)
                {
                    _currentLeaf.Description = descriptionTexBox.Text;
                }
            }
        }
    }
    Ответ написан
    Комментировать
  • Как перенести переменную на другую страницу?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Вот вам пример. Создаете инстанс общий для всего приложения, в нем храните только нужные вам данные и вызываете по мере надобности
    public class DataContext
        {
            private static readonly object Lock = new object();
            private static DataContext _ctx;
            private static SQLiteAsyncConnection _database;
            private static SQLiteAsyncConnection _userDatabase;
    
            public static DataContext Instance
            {
                get
                {
                    lock (Lock)
                    {
                        if (_ctx != null) return _ctx;
                        var filePathOnPlatform = GetFilePathOnPlatform(Settings.DataBaseName);
                        var userDb = GetFilePathOnPlatform(Settings.UserDatabaseName);
                        _ctx = new DataContext(filePathOnPlatform, userDb); 
                        return _ctx;
                    }
                }
            }
    }
    Ответ написан
  • Нормальная windows 10. Миф или реальность?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Первое правило клуба не устанавливайте сборок
    Второе правило клуба не устанавливайте сборок
    Третье правило клуба не устанавливайте сборок

    Если же серьезно я сижу дома на yota, резервный канал на билайне.

    1. Отключены ВСЕ обновления навсегда и система не скачивает драйвера при появлении нового устройства
    Вам тогда не стоит ходить в инет

    2. Нет никакой синхронизации и отправки данных куда-либо. Вообще ничего, что может повлиять на работу моего интернета
    Настройте отключение отправки
    3. Вырезаны все обновления (где бы вообще список их узнать), которые влияют на скорость работы.
    Узнать в списке обновлений, удалять ну явно не стоит

    Пс ну добавьте памяти, она как грязь стоит. Ну коммон. Я когда ценники дизайнеров узнаю у меня просто ступор возникает.

    23ae188f85.jpg
    Ответ написан
    32 комментария
  • Как запустить Xamarin.Forms приложение на айфоне?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Нет
    Ответ написан
    Комментировать
  • Как хранить клиентские базы данных?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Базе с нормальной архитектурой плевать на миллион ваших записей.

    Вот вам пример запроса.

    9aa00fdc50.jpg
    Ответ написан
    Комментировать
  • Производительность 1-2 сокетных систем?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Все зависит от программ. Хорошо написанные увеличивают скорость практически линейно. Плохо работают сугубо на 1 ядре.
    Плюс еще шина обмена данными между ядрами, в хорошем случае обмена вообще не происходит, в общем целая куча факторов.

    Примеры хорошо оптимизированных:
    Компиляторы
    Кодировщики видео и аудио
    системы нелинейного монтажа
    рендереры
    виртуалки
    базы данных, кроме разве что MySql

    Примеры плохо оптимизированных
    практически все игры
    настольные приложения
    javascript движки
    программы написанные в лоб.

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

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Отключите анонимную авторизацию оставьте только авторизацию WINDOWS, IIS сделает за вас все остальное.

    https://forums.iis.net/t/1165306.aspx?IIS+Issues+A...

    https://support.microsoft.com/ru-ru/help/323176/ho...

    web.config

    <authentication mode="Windows" />

    Доступ только группе
    <configuration>  <system.web>    <authorization>      <allow roles="domainname\Managers" />      <deny users="*" />    </authorization>  </system.web></configuration>
    Ответ написан
  • Как разработать мобильное приложение соц.сеть с нуля?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Обычно начинают с идеи. После оформления идеи в ТЗ, выбирают инструменты, потом считают сколько это будет стоить, после идут к инвестору за деньгами.
    Ответ написан
    Комментировать
  • Как извлечь данные из бэкапа БД (SQL Server)?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Не надо их извлекать. Восстановите бэкап и у вас появится база данных.
    Все это абсолютно штатные и много раз описанные процедуры. Уже из этой базы делаете эту ИПС.

    И оправдано это только в случае "Киосков данных", когда нет возможности реплицировать данные или вообще запросить данные по сети.

    Вот вам примерный сценарий.
    1. Ваше приложение
    2. SqlExpress 2019 (см его ограничения на обьем бд)
    3.1 Скрипты для развертывания бэкапа.
    3.2 Или в самом приложении делаете процедуру (отключения от всех датасорсов, и развертывание бэкапа)

    PS а разбирать формат bak Так себе идея он для другого
    Ответ написан
    Комментировать
  • Как устроена андроид разработка по аналогии с веб фронтенд разработкой?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    1. Что вместо HTML, CSS, на чем строится интерфейс?
    Разметка, графика, и немного (много) документации
    2. Есть ли разделение на структуру, стили и программный код?
    Есть макеты, к ним применяются стили, всем этим хозяйством управляете из кода
    3. Какие вообще самые значимые отличия от веба?
    Скорость, плавность, отсутствие костылей, и рекомендации от вендора.
    Ответ написан
    Комментировать