Задать вопрос
  • Самый приемлемый язык программирования для девушки

    Мне кажется, философия программирования - понятие очень неоднозначное. Это примудрости проектирования архитектуры приложений вне зависимости от языка или же кунг-фу на низком уровне с простыми инструментами? Си все-таки ближе ко второму, ибо язык прост, как дубина, хотя использовать его в реальном мире сложно. При этом, языки высокого уровня, вроде Java или C#, позволяют абстрагироваться от любых премудростей и конкретики реализации, посвящая себя теории ООП, ФП и т.п. *С++ имеет регулируемую степень красноглазия, так что я пока его обойду*
  • Где можно потренироваться написанию "идеального кода"?

    Слабая связь компонентов имеет смысл в крупных, развивающихся проектах и универсальных модулях, а для цельных разработок это часто лишние трудозатраты и избыточная гибкость, выраженая излишним кодом. (Тут можно до хрипоты спорить с людьми, утверждающими что всегда нужно рассчитывать на возможность масштабирования, повторное использование кода, локализации приложения и прочее нужное в случае коммерческого успеха).

    Всякого рода MVC (на сколько я знаю, довольно популярная парадигма для фреймворков php) на полную катушку используют подобную абстракцию. Получается, вы всю абстракцию используете косвенно =) Если бы было желание писать свой фреймворк (или, скажем так, приложение "с нуля"), вполне очевидно столкнулись бы с этими-самыми абстрактными интерфесами-классами.
  • Как решить проблему работы с классом диалога в MFC проекте?

    @Free_ze Автор вопроса
    Не помогает. Были подозрения, что вмешиваются предкомпилированные заголовки - отключил, не помогло.
    Что странно, работает с предварительным объявлением типа диалога:

    /* Test.h */
    #pragma once
    #include "afxwin.h"
    #include "Project_nameDlg.h"

    class CProject_nameDlg;

    stuct Test {
    CProject_nameDlg* ptr_;

    Test(CProject_nameDlg* ptr) : ptr_( ptr ) { }
    };

    При этом видит даже все члены, компилируется и выполняется как нужно, без этого - считает CProject_nameDlg идентификатором, а не типом.