Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
15 / 14 / 10
Регистрация: 22.03.2010
Сообщений: 695
1

Материал по ООП

09.07.2011, 23:20. Показов 1895. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Сейчас изучаю начало начал в с++. То есть простейшие консольные программы строю. Хотелось бы уже попробовать поработать с настоящим программо-строем. То есть посоздавать программы на WindowsForm с кнопочками, с полями.. Не знаю как точно объяснить. Чтобы программы были не консольные а с помощью различных диалоговых окон общались с пользователем. Не могли бы помочь мне и дать мне материала по этой теме (видео уроки, книжки, статьи). Сразу извеняюсь за то что скорее всего повторяю эту тему миллионный раз, но материала по своему уровню я не нашел. Надеюсь на помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.07.2011, 23:20
Ответы с готовыми решениями:

Перестали загружаться разделы Материал: [ Изменить ] и Материал: [ Создать ]
Доброго времени суток. Стоит Joomla 1.5.20 Перестали загружаться разделы Материал: и Материал: ....

Текстовый материал (а также пхп-код) не загружается как материал в движке сайта если присутствует символ "верхняя запятая"
Здравствуйте! Проблема такая. Я являюсь администратором сайта на php (скорее всего битрикс) и...

ООП ради ООП
Доброго времени суток! Есть к примеру класс Cat который реализует интерфейс Movable, инкапсулирует...

не добавляется материал
два часа просидел так и не смог добаить материал. почему-то кнопки не работают. Еле создал разделы...

18
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
09.07.2011, 23:35 2
изучите для начала WinApi, а так клепать формочки, непонимая как это работает изнутри , нету смысла
Щупак win32 api
Петцольд Ч. Программирование для Windows 95
1
230 / 227 / 65
Регистрация: 18.12.2009
Сообщений: 316
09.07.2011, 23:45 3
У меня была та же проблема.
Начал с Borland C++ Builder 5. Книга называлась
"Самоучитель программирования на языке C++ в системе Borland C++Builder 5.0
Автор: Бобровский С."
Именно то, что мне дало алгоритмику.
Простая книга написана человеком, который очень доходчиво дает материал. Там, например, рассматривается написание пасьянса паук.
И одновременно взял себе для изучения всех этих "кнопочек"
"ПРОГРАММИРОВАНИЕ В C++Builder 5
Архангельский А.Я"

Потом, со временем, начал пользоваться Visual Studio.
Но самый большой скачок в понимании дали эти 2 книги.

Ни в коем случае не учите сразу WIN API. Потеряете кучу времени ни на что. Когда научитесь работать со всеми этими компонентами,
потребность в WinApi сама появится.
Для использования магнитофона не нужно сразу разбираться во внутреннем устройстве.
2
15 / 14 / 10
Регистрация: 22.03.2010
Сообщений: 695
09.07.2011, 23:52  [ТС] 4
Спасибо. Обязательно попробую. А мультимедийного контента не кто не использовал ? Или видио уроки пустая трата времени ? Лучше книги ?
0
102 / 36 / 0
Регистрация: 21.04.2011
Сообщений: 155
09.07.2011, 23:55 5
У меня была та же проблема.
Начал с Borland C++ Builder 5. Книга называлась
"Самоучитель программирования на языке C++ в системе Borland C++Builder 5.0
Автор: Бобровский С."
Вы прямо с этой книги начали свое знакомство с С++ или до этого был опыт программирования?

Лучше книги ?
ИМХО, лучше книги.
0
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
10.07.2011, 00:16 6
Зоти Сергей, клепать формочки, будь-то в билдере, будь-то в WinForms непонимая как это работает изнутри, нет смысла, ибо весь код генерируеться IDE. От WinApi можно переходить к билдеру или WinForms, но ни как не наоборот. Билдер и WinForms это всего лишь объектно ориентированная обертка над WinApi, которой умело можно пользоватся, но зная что внутри.
1
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
10.07.2011, 00:20 7
Maxwe11, к билдеру и WinForm можно отнести MFC?
0
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
10.07.2011, 00:33 8
Цитата Сообщение от neske Посмотреть сообщение
к билдеру и WinForm можно отнести MFC?
в смысле внутреннего строения, да, MFC такая же обертка над WinApi, только с нарушением некоторых принципов ООП, но опять же таки, вся суть - функция main(WinMain) от программиста скрыта, в билдере и WinForms можно увидить лиш загадочное Application.Run(), в MFC доступа к главной функции вообще нет, потому лучше все же изучить основы WinApi, узнать что же все таки скрываеться в main-не и в процедуре окна, а потом переходить к библиотекам
1
230 / 227 / 65
Регистрация: 18.12.2009
Сообщений: 316
10.07.2011, 00:57 9
Maxwe11,
Оно придет само собой.
Начинающему не нужно тратить на это время. Похер, как и кем оно генерируется.
Потеряется всякий интерес к программированию. Нужно начинать от простого к сложному. Набить руку. Когда набьется рука, можно переходить к изучению WinApi.
Это мое мнение... Я делал именно так и считаю, что это было правильно.
Если бы я, первоначально, начинал вникать во все тонкости, подобным WinApi, я бы послал программирование нахрен через месяц изучения.

Добавлено через 2 минуты
Mole[Z], До этого не было ни компьютера, никакого знания языка.
1
155 / 155 / 44
Регистрация: 03.11.2010
Сообщений: 393
10.07.2011, 01:58 10
Лучший ответ Сообщение было отмечено как решение

Решение

удалено

Добавлено через 16 минут
2 parkito все сказанное в этом посте является только моим личным мнение, моими личными выводами.
Так как Вы говорите, что вы пишите простейшие программы и судя по Вашим сообщениям с данного форума - выкладываю свое мнение:
"Настоящим программо-строем", на мой взгляд, можно назвать - написание логической функциональной части приложения ( классы, функции ). Назовем это основой. Прежде всего хорошему программисту нужно это уметь.
А использование готовых визуальных компонентов как форм, кнопочек, различных полей, сеток - это лишь дополнение к основе, которое даже мешает на начальных этапах изучения программирования (сужу по своему опыту). Когда научитесь разрабатывать самостоятельно многофункциональные консольные программы, (также в них используя различные библиотеки, например STL) вот тогда можно и к кнопочкам вернуться, но уже с приличным багажом знаний. И сможете при разработке ПО отделить логику приложения от интерфейса - а это очень важно.
Могу посоветовать Стенли Липпман, Жози Лажойе - Язык программирования C++. Вводный курс.
Сейчас сам эту книгу изучаю подробно.
3
230 / 227 / 65
Регистрация: 18.12.2009
Сообщений: 316
10.07.2011, 03:01 11
Roof,
Да.. и заканчивается все это образование бесконечными программами хеллоу уорлд с cin cout..
И человек постоянно думает как с этого дела "слезть". Можно не тратить время на консоль, а начать сразу с библиотеки компонентов. Какая разница, где писать? Просто начав писать оконные приложения человек видит конкретный результат своей работы, оформляет свою программу, создает интерфейс. Появляется чувство уверенности в себе, после того, как появляется программа, которая что-то действительно делает. Пусть она написана с использованием 3 строчек кода и 1000 компонентов.
Со временем человек начинает лавировать, ориентироваться во всем этом (не задумываясь о внутренней реализации всех этих инструментов). Начинает вписывать код в оконное приложение. Тогда необходимость в консоли просто отпадает.
Потом приходит момент, когда каких-то знаний не хватает и начинающий программист может так же обратиться к каким-то методам но делать это он уже будет не как новичок, который смотрел в черный экран консоли. На этом этапе все будет даваться проще и время не будет потрачено впустую.
Самый быстрый вариант научиться писать современные программы - поставить себе задачу написать современное приложение и начать над ним работать. Задача, которая будет интересной и которую не захочется закончить через пару дней, после начала работы над ней.
В моем случае это была игра.
2
155 / 155 / 44
Регистрация: 03.11.2010
Сообщений: 393
10.07.2011, 03:49 12
Лучший ответ Сообщение было отмечено как решение

Решение

2 Зоти Сергей
У каждого свои точки зрения и это хорошо.
Лично я очень уважаю разработчиков визуальных компонентов, в особенности тех, кто позволяет свободно использовать эти компоненты в своих разработках. Да и использование визуальных компонентов значительно упрощает процесс построения интерфейса некоторого программного обеспечения.

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

1)
Да.. и заканчивается все это образование бесконечными программами хеллоу уорлд с cin cout..
это смотря как учиться, это м.б. как при обучении программированию консольных приложений, так и при изучении программирования с использованием визуальных компонентов.

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

Мое личное мнение таково - учиться разработке приложений для начинающего программиста проще всего в консольном режиме.

3)
Самый быстрый вариант научиться писать современные программы - поставить себе задачу написать современное приложение и начать над ним работать
- что по Вашему мнению является современными приложениями?
Думаю, что быстрых вариантов "научиться писать современные программы " - не существует.
5
Jupiter
10.07.2011, 04:23
  #13

Не по теме:

очердной холивар начался, думаю ТСу будет интересно Редактор форм или код вручную

1
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
10.07.2011, 04:45 14
Цитата Сообщение от Maxwe11 Посмотреть сообщение

Не по теме:

очердной холивар начался, думаю ТСу будет интересно Редактор форм или код вручную

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

ну в результате отсутствие понимания построения качественного по и прочих очевидных вещей
1
935 / 760 / 299
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
10.07.2011, 06:27 15
Зоти Сергей, я с тобой соглашусь, ведь потраченное время не вернуть пока в консоли ковыряешься другой осваивает GUI уже пытается делать что-то похожее на современное приложение, а зачем лести в дебри новичку всё равно будет как робот по памяти забивать код, я вот знаю не плохо WinAPI и что это мне даёт, да ничего проще открыть проект в MFC или Borland-e VCL что там процедурами или сообщениями в компоненты набиваешь код, здесь методами объектов пользуешься, понимаю что уже абстрактная-прослойка но мышкой в колесе долго не покрутишься. Для чего новичку понимать саму суть реализации графической системы пользовательских элементов, если она от нас скрыта в user32.dll(или в 64). Вспоминаю времена когда я COM объекты реализовывал с нуля писал повторяющий код пока не плюнул, теперь стал использовать готовые ATL. Некоторые до сих прикладные программисты думают что работают с железом напрямую, хотя используют в своих программах функции WinAPI, вот это и есть ошибка прикладная процедура вызывает модульную процедуру DLL kernel, user, gdi, advapi... те в свою очередь вызывают процедуры драйверов устройств, я это к тому что только стандартные драйверы могут работать с железом(регистрами РОН, физ-памятью...) напрямую. Например если SSE3 процессор поддерживает а ОС нет, то вы не с можете в ASM эту технолoгию использовать.
0
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
10.07.2011, 06:52 16
Лучший ответ Сообщение было отмечено как решение

Решение

ну если уж говорить откровенно, то мс в очередной раз собираются отказатся от winapi, хотя это конечно фантастика, но я бы возможно сейчас не стал бы сильно углублятся в часть winapi связанную с оконной системой - потоки, ресурсы итп все еще полезные знания, а окошки для общего развития
mfc как ни крути труп - сейчас я считаю, что время потраченное на него было потраченно не очень осмысленно. во всяком случае изучать mfc бессмысленней чем winapi
winforms не есть мир c++, а c++/clr я считаю не лучшим, что есть в .net, уж лучше использовать c#, wpf все дела

для c++ считаю более интересным и практически полезным изучение Qt/wxWidgets, хотя насчет рыночной успешности wxWidgets я не уверен
4
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
10.07.2011, 10:31 17
Лучший ответ Сообщение было отмечено как решение

Решение

Зоти Сергей,
Самый быстрый вариант научиться писать современные программы - поставить себе задачу написать современное приложение и начать над ним работать.
Тогда давай сразу многопользовательское клиент-серверное с использованием Silverlite 4 и MS SQL Server 2008 - это и будет СОВРЕМЕННАЯ прога.
Хотя бы и игра.
Или еще круче и современней - в SharePoint.
То, что ты предлагаешь, как современное - это позавчерашний день.
А прежде, чем брать интегралы, надо бы таблицу умножения вызубрить.
3
15 / 14 / 10
Регистрация: 22.03.2010
Сообщений: 695
10.07.2011, 11:32  [ТС] 18
Всем спасибо что откликнулись. Кое какие выводы я для себя сделал. Сейчас я пройду курс самых основ с Лафоре - ООП в С++, а потом попробую найти, рекомендованную литературу про WinApi и по интерефейсу-строению. Еще раз спасибо !
0
Эксперт С++
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
10.07.2011, 11:46 19
Цитата Сообщение от parkito Посмотреть сообщение
Всем спасибо что откликнулись. Кое какие выводы я для себя сделал. Сейчас я пройду курс самых основ с Лафоре - ООП в С++, а потом попробую найти, рекомендованную литературу про WinApi и по интерефейсу-строению. Еще раз спасибо !
1. Лафоре - правильно.
2. Далее - изучение STL. Как обязательная часть стандарта С++.
3. Стороннюю библиотеку интерфейса. Лучше Qt - там не только интерфейс, но и огромное количество всяких нужных и удобных вещей.
В качестве альтернативы обрати внимание на wxWidget - но литературы маловато, только в инете и в среде wxDevC++.
4. Для изучения WinAPI есть масса книжек! Можно начать либо с книжки Ганеева, либо с книжки Юрия Щупака. Но лучше всего Ч. Петцольд. Хотя там программирование для Win95, зато все работает и в сети легко найти файлы книжки и примеры. Это двухтомник.
2
10.07.2011, 11:46
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.07.2011, 11:46
Помогаю со студенческими работами здесь

материал по разработке
Добрый день. вопрос по вордпрессу. я уже немного владею php + бд + вордпрессом. подскажите...

Ортотропный материал
Помогите пожалуйста, нужны срочно примеры ортотропных материалов и их !технические постоянные!....

Материал, Тайлы
Есть тайл из 55 картинок, поместил его в материал. Как указать объекту, какую из 55 картинок...

Материал в 2 колонки
Народ не могу понять как разбить материал на 2 колонки. А точнее мне нужно отобразить один материал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru