• Запрос с функцией COUNT с помесячный разбивкой?

    @MonadTeq
    Как Alex Karo или:
    SELECT 
      COUNT(admin_id), 
      admin_id, 
      a.admname, 
      extract(month from f.created_at)
    FROM new_1report f
       JOIN admin a ON f.admin_id = a.id
    GROUP BY admin_id, a.admname, extract(month from f.created_at)
    Ответ написан
    Комментировать
  • Зачем и когда нужно использовать указатели в C++?

    @MonadTeq
    Вот это крутяк -
    Я выбрал четыре языка, так как и платят немало и работа интересная(python, c#, java, c++).
    . А зачем? Ну понятно JAVA и C# конкуренты в Enterprise (Благодаря Xamarin еще и в Mobile). Про Python и C++ - пригодятся в ML и Data Science. Ну кто знает. Фишек у каждого языка тьма, как и недостатков. Люди годами по локоть в кодине и бывает сложно разобраться в одном-то. Они зараза развиваются ещё. Просто знания синтаксиса недостаточно. Junior - это человек всё же с опытом работы. Он был? Денег платили?

    Странный вопрос про указатели. Вообще то, что в C# чаще приходиться работать с ссылками не значит, что с указателями там не работают (просто Вы об этом не знаете, видимо).

    Джуниор вот сможет объяснить следующие конструкции, где память выделена (хотя бы рядом с истиной ткнуть), где указатель на указатель, а где копирование значения:
    class Sample 
    {
      private int _a;
    
      public void Method1(int a) 
      {
            // Logic...
      }
      
      public void Method2(ref int a, ref Sample s) 
      {  
            // Logic...
      }
    
       static unsafe void Method3() {
             int a = 5;
             int* p = &a;
    
            // Logic...
      }
    }


    Джаву я собираюсь учить через годик, так как это самая высокооплачиваемая работа, а так же самая скучная.
    - Супир! Вы ещё пока не поднимали упавший продукт банка и не писали патч за пару часов, чтобы клиенты с говном не съели. А так да - скукота. Поседеть от скуки можно.

    Возьмите ASSEMBLER для x86 (эмулятор emu8086 где-то можно было дёрнуть нахаляву) встанет что-нибудь на места. По отладчику походите.
    Ответ написан
    Комментировать
  • Бесплатное обучение? Что вы об этом думаете?

    @MonadTeq
    Во! Теперь я знаю, где прошлые вендоры набирали "специалистов". Читайте контракт, а главное - Что за компания? :)
    Ответ написан
  • Как сделать суммирование рандомных чисел?

    @MonadTeq
    Эх...WinForms. Как вспомню, так вздрогну. В дремучее время было как-то так:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Runtime.CompilerServices;
    using System.Windows.Forms;
    
    using MonadTeq.Toster.UI.Annotations;
    
    namespace MonadTeq.Toster.UI
    {
      /// <summary>
      /// An abstraction of view model for data binding.
      /// </summary>
      public abstract class ViewModel
        : INotifyPropertyChanged
      {
        public event PropertyChangedEventHandler PropertyChanged;
    
        [NotifyPropertyChangedInvocator]
        protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
        {
          PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
        }
    
        protected bool UpdateProperty<T>(ref T oldValue, T newValue, [CallerMemberName] string propertyName = null)
        {
          if (EqualityComparer<T>.Default.Equals(oldValue, newValue))
          {
            return false;
          }
    
          oldValue = newValue;
          OnPropertyChanged(propertyName);
          return true;
        }
      }
    
      /// <summary>
      /// Represents a view model for business logic.
      /// </summary>
      public sealed class RandomSummaryViewModel
        : ViewModel
      {
        private int _accumulatedValue;
        private int _value;
    
        public RandomSummaryViewModel(int initialValue = 0)
        {
          _accumulatedValue = initialValue;
        }
    
        public int Value
        {
          get => _value;
          set => UpdateProperty(ref _value, value);
        }
    
        public int AccumulatedValue
        {
          get => _accumulatedValue;
          set => UpdateProperty(ref _accumulatedValue, value);
        }
      }
    
      public partial class RandomNumberSumForm : Form
      {
        private readonly RandomSummaryViewModel _vm = new RandomSummaryViewModel();
        private readonly Random _rnd = new Random();
    
        public RandomNumberSumForm()
        {
          InitializeComponent();
    
          //
          // Configure data bindings here...
          //
    
          // Bind text box (id: tbxCurrentRandom) property Text to 'Value' property of RandomSummaryViewModel instance...
          tbxCurrentRandom.DataBindings.Add("Text", _vm, "Value", false, DataSourceUpdateMode.OnPropertyChanged);
    
          // The same but for label (See logic above)
          lblSum.DataBindings.Add("Text", _vm, "AccumulatedValue", true, DataSourceUpdateMode.OnPropertyChanged);
        }
    
        private void btnNextRandom_Click(object sender, EventArgs e)
        {
          _vm.Value = _rnd.Next(0, 100);
          _vm.AccumulatedValue += _vm.Value;
        }
      }
    }


    Сумеете объяснить, что тут происходит и добавить сумму по следующему нажатию, а не мгновенно - приходите junior'ом :)
    Ответ написан
  • Cреда разработки под android?

    @MonadTeq
    Как вариант можно использовать VSCode. Оно полегче, но и повозиться с настройкой придётся. Toolchain в скрипт с параметрами сложить.

    В этом варианте, хоть в vi, nano или в другом текстовом редакторе. Т.е. без IDE совсем. Этот вариант полезен для "начала" разработки. Вообще даёт понимание что к чему в SDK.
    Ответ написан