уж очень не удобно получается у меня со временем брать отдельные курсы в универах, колледжах и тд, да еще и не на родном русском. Мне это не для работы, а для собственного интереса, поэтому никакой спешки нету. С удовольствием возьму репетитора на дом за разумную стоимость. Все предложения в личку/ Мерси
Комментариев нет
Ответить
Для отправки комментария вам необходимо авторизоваться.
Материалы сайта:
CanadaRoast.com
Извиняюсь за офтоп, но очень интересно почему С++, а не новомодныи С#?
а пофигу, можно и новомодныи С#? ))))
А купить / скачать классику типа Страуструпа и читать до полного просветления?
[quote="Новичок":1cseiook]А купить / скачать классику типа Страуструпа и читать до полного просветления?[/quote:1cseiook]
действительно С++ такой язык что лучше самому читать по Страуструпу и потихоньку игратся.
Вот когда уже наигравшись потребуется с этим Страуструпом найти работу , то тогда лучше взять репетитора , чтобы он подготовил к прохожднию интервью и рассказал что реально происходит в жизн.
[quote="MaxRiga":2948ib7b]уж очень не удобно получается у меня со временем брать отдельные курсы в универах, колледжах и тд, да еще и не на родном русском. Мне это не для работы, а для собственного интереса, поэтому никакой спешки нету. С удовольствием возьму репетитора на дом за разумную стоимость. Все предложения в личку или на имейл info@webmir.tv ( пропишите в subject — с++ )[/quote:2948ib7b]
Если чисто для интереса — таки с# лучше, и с точки зрения освоения, и с т.з. стройности конструкции, что не отменяет его сложности. С++ — это куча древнего legacy, работа с памятью, отвратительный экспорт типов и отсутствие б-м внятного родного фреймворка
Плюс, синтаксически сам по себе язык сложнее
Я бы с удовольствие попреподавал, но
Для того чтоб начинать с 0, надо
1. Общее устройство компютера
2. Особенности ОС
3 Булева арифметика
4 Общее описание языка — что оно вообще ьакое и для чего
5 Описание типов — зачем они и что с ними делать
6 Функции — как логическая единица исполнения
7 Классы и ООП — что это, для чего придумано и как использовать
8 Фреймворк — хотя бы основные неймспейсы, т.к. без него чего-то делать будет трудоемко
Это если кратенько, как показывает опыт — народ обламывается на пункте 3.
[quote="circumbendibus":ty4yotm2][quote="Новичок":ty4yotm2]А купить / скачать классику типа Страуструпа и читать до полного просветления?[/quote:ty4yotm2]
действительно С++ такой язык что лучше самому читать по Страуструпу и потихоньку игратся.
Вот когда уже наигравшись потребуется с этим Страуструпом найти работу , то тогда лучше взять репетитора , чтобы он подготовил к прохожднию интервью и рассказал что реально происходит в жизн.[/quote:ty4yotm2]
Я крайне сомневаюсь, что удастся найти работу только после прочтения страуструпа и с репетитором
В смысле, нормальную работу.
Надо минимум года 2 опыта на плюсах, чтоб чего-то начать понимать и не делать идиотских ошибок
Это я по собственному опыту:)
[quote="MaxRiga":21zfu0fk]а пофигу, можно и новомодныи С#? ))))[/quote:21zfu0fk]
Какой же он новомодный, версия 4.0 уже выходит
В заглавном посту написано — «для собственного интереса»… а не для работы.
Для собственного интереса С++ более увлекательный, чем шарп или его близнец-джава.
На нем научно-фантастические романы можно писать.
[quote="loco":25glxwnw]1. Общее устройство компютера
2. Особенности ОС
3 Булева арифметика
4 Общее описание языка — что оно вообще ьакое и для чего
5 Описание типов — зачем они и что с ними делать
6 Функции — как логическая единица исполнения
7 Классы и ООП — что это, для чего придумано и как использовать
8 Фреймворк — хотя бы основные неймспейсы, т.к. без него чего-то делать будет трудоемко
Это если кратенько, как показывает опыт — народ обламывается на пункте 3.[/quote:25glxwnw]Где обо всём этом (ну, может, кроме п.1) почитать для «чайников» и желательно на русском (на крайняк на английском)? Можно только авторы-названия соотв. литературы. Чтобы всё максимально разжёвано, и не возникало со второго параграфа вопросов типа «шо это за слово? в этом учебнике такого слова ещё не было.»
[quote="Traveller":2wqt150s]В заглавном посту написано — «для собственного интереса»… а не для работы.
[/quote:2wqt150s]
Для собственного интереса С++ более увлекательный, чем шарп или его близнец-джава.
На нем научно-фантастические романы можно писать.
А вот и нет
На шарпе уже можно писать гораздо более интересно, с появлением в нем лямбд, женериков и прочих радостей.
К тому же основной минус плюсов, как я уже говорил, экспорт типов, что делает многие простые в .net вещи жутким геморроем. МС его пробовала сделать б-м ээ generic, что привело к появлению монструозного ATL
И .net — это по сути отказ от того, что они пробовали сделать с плюсами и COM. Потому что намного проще.
Ну т.е. если написание собственных аллокаторов памяти возбуждает, тогда, конечно, С++:)
[quote="Merlion":1ycd2g3j][quote="loco":1ycd2g3j]1. Общее устройство компютера
2. Особенности ОС
3 Булева арифметика
4 Общее описание языка — что оно вообще ьакое и для чего
5 Описание типов — зачем они и что с ними делать
6 Функции — как логическая единица исполнения
7 Классы и ООП — что это, для чего придумано и как использовать
8 Фреймворк — хотя бы основные неймспейсы, т.к. без него чего-то делать будет трудоемко
Это если кратенько, как показывает опыт — народ обламывается на пункте 3.[/quote:1ycd2g3j]Где обо всём этом (ну, может, кроме п.1) почитать для «чайников» и желательно на русском (на крайняк на английском)? Можно только авторы-названия соотв. литературы. Чтобы всё максимально разжёвано, и не возникало со второго параграфа вопросов типа «шо это за слово? в этом учебнике такого слова ещё не было.»[/quote:1ycd2g3j]
Эээ
Ну нету, нету ничего для чайников:)
Булева арифметика(алгебра) — тут даже не знаю. Она, в принципе, нужна, т.к. на ней все и построено. С другой стороны, это такой довольно-таки серьезный курс, например — http://psi-logic.shadanakar.org/boo/boo.htm
Можно поискать основы + битовые операции в сети
например — http://ru.wikipedia.org/wiki/%D0%91%D0% … 0%B8%D0%B8
Но надо понимать, что такое представление чисел в двоичной системе
Про языки — лучше читать применительно к платформе(ОС+язык). Про жаву я знаю мало, про .net — рихтер, просиз ну и Pro C# 2008 and the NET 3.5 Platform Fourth Edition
Первые два у меня на русском есть, пдфки. Просиз мне попроще кажется.
[quote="loco":1d901qok][quote="Traveller":1d901qok]В заглавном посту написано — «для собственного интереса»… а не для работы…[/quote:1d901qok]
А вот и нет
На шарпе уже можно писать гораздо более интересно, с появлением в нем лямбд, женериков и прочих радостей…
И .net — это по сути отказ от того, что они пробовали сделать с плюсами и COM. Потому что намного проще.
[/quote:1d901qok]
имхо, это плюсы для корпоративных проектов, а не для собственного интереса.
С++ был и остается языком «more low-level approach» и как следствие — более гибким, универсальным и платформо-независимым (я имею ввиду сам язык, а не скомпилированные на нем .exe, и другие, файлы)
так же, и по тем же причинам, он до сих пор остается самым популярным языком в научно-исследовательских проектах
И самое главное — набив на нем нормально руку… ну, скажем, в классическом («страусруповском») варианте…
перейти, по мере надобности, на всякием шарпы, джавы и бэйсики — дело не архи-сложное.
То есть, для начала — очень даже интересно и перспективно именно С++.
[quote:20gl0cph]Для собственного интереса С++ более увлекательный, чем шарп или его близнец-джава.
[/quote:20gl0cph]
мне действительно для себя, а не для поиска работы в будущем.
А для себя, это значит — научится писать маленькие программки, ну например, хочется написать видео архив в виде установочной программы, видео тур по Монреалю в виде программы, создать какую-нибудь примитивную игрушку, ну и конечно же написать собственную ОС (шутка).
Браузерное программирование, пока, не интересует. Хочется начать с семейства C.
[quote="MaxRiga":171zbiri]
А для себя, это значит — научится писать маленькие программки, ну например, хочется написать видео архив в виде установочной программы, видео тур по Монреалю в виде программы, создать какую-нибудь примитивную игрушку, ну и конечно же написать собственную ОС (шутка).[/quote:171zbiri]
из четырех упомянутых задач, проект «видеотур по Монреалю», в плане программирования, мне не совсем понятен (не исключено, что там можно обойтись одними легкими скриптами)
а вот игрушки и всякие «программки» под винду на си всегда рулили.
И по широте возможностей трудно найти ему конкурента.
А по последней задаче (которая в шутку) — ядро винды и линукса (читай, самые популярные на сегодня пользовательские оси) тоже на C++ написаны.
[quote="MaxRiga":11pe7hu1][quote:11pe7hu1]Для собственного интереса С++ более увлекательный, чем шарп или его близнец-джава.
[/quote:11pe7hu1]
мне действительно для себя, а не для поиска работы в будущем.
А для себя, это значит — научится писать маленькие программки, ну например, хочется написать видео архив в виде установочной программы, видео тур по Монреалю в виде программы, создать какую-нибудь примитивную игрушку, ну и конечно же написать собственную ОС (шутка).
Браузерное программирование, пока, не интересует. Хочется начать с семейства C.[/quote:11pe7hu1]
MaxRiga — а может Вам объединить две задачи и начать с flash
?
[quote="Pochemychker":2beiv9gj][quote="MaxRiga":2beiv9gj][quote:2beiv9gj]Для собственного интереса С++ более увлекательный, чем шарп или его близнец-джава.
[/quote:2beiv9gj]
мне действительно для себя, а не для поиска работы в будущем.
А для себя, это значит — научится писать маленькие программки, ну например, хочется написать видео архив в виде установочной программы, видео тур по Монреалю в виде программы, создать какую-нибудь примитивную игрушку, ну и конечно же написать собственную ОС (шутка).
[b:2beiv9gj]Браузерное программирование, пока, не интересует. Хочется начать с семейства C.[/[/b:2beiv9gj]quote]
MaxRiga — а может Вам объединить две задачи и начать с flash
?[/quote:2beiv9gj][/quote:2beiv9gj]
[quote="MaxRiga":fv7850rs]
[b:fv7850rs]Браузерное программирование, пока, не интересует. Хочется начать с семейства C.[/[/b:fv7850rs]quote]
MaxRiga — а может Вам объединить две задачи и начать с flash
?[/quote:fv7850rs]
MaxRiga, по-секрету — flash не имеет никакого отношения к «браузерному программированию». Есть такой зверь «standalone flash player» под все платформы.
А показывать фильмы и т.п. с разными спецэффектами и интерактивностью с помощью flash проще чем на C на порядки
[quote="Pochemychker":1w8lgnei]
[/quote:1w8lgnei]
MaxRiga — а может Вам объединить две задачи и начать с flash…
…
показывать фильмы и т.п. с разными спецэффектами и интерактивностью с помощью flash проще чем на C на порядки
«Видеоархив в виде установочной программы» тоже на flash писать будем?
имхо, если научиться нормально пользоваться библиотеками (открытыми и коммерческими), написанными под C++ за долгие годы,
то тоже можно быстро делать практически любые вещи.
А репетитор автору топика нужен, как я понимаю, лишь для того, что бы не тратить время на разборку всяких… скажем так, не самых актуальных на сегодняшний день «примеров кода», которые — в изобилии в классических книгах по С++ — то есть, вопроса отделения «ядер» от «плевел»
[quote="Traveller":2xw4a809]
[/quote:2xw4a809]
«Видеоархив в виде установочной программы» тоже на flash писать будем?
Traveller — а ты понял что это такое должно быть?
Если это горка фильмов к которым надо показать общую страничку запуска, то — да, на флэше, на чём же ещё.
[quote="Pochemychker":2kxpl4pc][quote="Traveller":2kxpl4pc]
[/quote:2kxpl4pc]
«Видеоархив в виде установочной программы» тоже на flash писать будем?
Traveller — а ты понял что это такое должно быть? [/quote:2kxpl4pc]
подозреваю, это что то (что угодно) предначенное для установки с помощью Windows Installer.
[quote="Traveller":19p0znol][quote="Pochemychker":19p0znol][quote="Traveller":19p0znol]
[/quote:19p0znol]
«Видеоархив в виде установочной программы» тоже на flash писать будем?
Traveller — а ты понял что это такое должно быть? [/quote:19p0znol]
подозреваю, это набор заархивированных файлов, прикладываемый к setup.exe.[/quote:19p0znol]
да, вы поняли совершенно верно. Если бы я был подкован правильным языком программистов, то и изъяснялся бы понятнее. Но так как ни разу к этому не прикасался, то и объяснить что нужно, сложно ))))
[quote:19p0znol]А репетитор автору топика нужен, как я понимаю, лишь для того, что бы не тратить время на разборку всяких… скажем так, не самых актуальных на сегодняшний день «примеров кода», которые — в изобилии в классических книгах по С++ — то есть, вопроса отделения «ядер» от «плевел»[/quote:19p0znol]
и это верно, у меня свободное время только полдня в субботу и полдня в воскресение. Вот в это время, на протяжении месяцев и собираюсь осваивать азы C. Читать материал самостоятельно все равно придется, но так хоть объяснят в каком направлении двигаться и за что браться в первую очередь.
to Pochemychker
успокойтесь. я вас понял.
to loco
спасибо за советы, приятно будет выслушать ваше мнение в целом
[quote="Traveller":2fi831uy]
можно поинтересоваться чем собираемся архивировать видео? И для чего конкретно нужен setup в данном случае (саморазархивирующиеся архивы делаются без программирования)?
подозреваю, это набор заархивированных файлов, прикладываемый к setup.exe.[/quote:2fi831uy]
[quote="Pochemychker":1zx6sfhm]
можно поинтересоваться чем собираемся архивировать видео? И для чего конкретно нужен setup в данном случае (саморазархивирующиеся архивы делаются без программирования)?[/quote:1zx6sfhm]
зачем — это второй вопрос.
сделать можно просто для развлекухи или для обучения, если хочется поупражнятся на том что «ближе к телу».
заодно, и понимание «зачем так, если можно проще» придет.
а потом придет еще и понимание, что «не все что проще дается нахаляву или не требует доп. ресурсов» — иной раз проще самому три строчки кода написать… вообще, на эту абстрактную тему можно долго рассуждать
[quote="Traveller":24zgtff5][quote="Pochemychker":24zgtff5]
можно поинтересоваться чем собираемся архивировать видео? И для чего конкретно нужен setup в данном случае (саморазархивирующиеся архивы делаются без программирования)?[/quote:24zgtff5]
зачем — это второй вопрос.
но сделать можно — просто для развлекухи или для обучения.[/quote:24zgtff5]
Traveller — ты ему плохо желаешь. То-есть банально «для развлекухи и обучения» УДВОИТЬ место требующееся на дисках несчастных пользователей, влепить многочасовую процедуру разархивации и т.д. … ну-ну.
[quote="loco":1hxk07zn]
[quote="Merlion":1hxk07zn]Чтобы всё максимально разжёвано, и не возникало со второго параграфа вопросов типа «шо это за слово? в этом учебнике такого слова ещё не было.»[/quote:1hxk07zn]Эээ
Ну нету, нету ничего для чайников:)
Булева арифметика(алгебра) — тут даже не знаю. Она, в принципе, нужна, т.к. на ней все и построено. С другой стороны, это такой довольно-таки серьезный курс, например — http://psi-logic.shadanakar.org/boo/boo.htm
Можно поискать основы + битовые операции в сети
например — http://ru.wikipedia.org/wiki/%D0%91%D0% … 0%B8%D0%B8
Но надо понимать, что такое представление чисел в двоичной системе[/quote:1hxk07zn]Вот ты знаешь, понятие и представлении чисел в двоичной системе есть. Даже про восьмеричную и шестнадцатиричную систему ещё не всё выветрилось с уроков древней информатики в универе. Но вот, например, из нескольких строк, написанных тобой, уже не понятно следующее:
— каким образом всё построено на булевой арифметике? почему не на обычной?
— не очень ясно, что такое битовые операции и каким боком они к булевой арифметике и всему остальному. К чему они принадлежат? К языку? К арифметике? К «типам-функциям-классам»? К чему-то ещё?
— а сами типы, функции и классы к чему принадлежат?
Если для тебя многие понятия уже знакомы, как и для большинства авторов, которые пишут книжки «для чайников», то для самих чайников это тёмный лес.
Помнится, книжку «action script [u:1hxk07zn]для чайников[/u:1hxk07zn]» мне пришлось закрыть после третьей же страницы, поскольку количество непонятного материала превысило допустимый порог и сделало невозможным дальнейшее чтение.
[quote="Merlion":1ua1kwi4]
Помнится, книжку «action script [u:1ua1kwi4]для чайников[/u:1ua1kwi4]» мне пришлось закрыть после третьей же страницы, поскольку количество непонятного материала превысило допустимый порог и сделало невозможным дальнейшее чтение.[/quote:1ua1kwi4]
Merlion, loco дядя забавный, но в программировании он … эмм … подобен флюсу
почитай http://en.wikipedia.org/wiki/First-order_logic если продерёшься — молодец.
deleted double
[quote="Pochemychker":1q8wozex][quote="Traveller":1q8wozex]
но сделать можно — просто для развлекухи или для обучения.[/quote:1q8wozex]
Traveller — ты ему плохо желаешь. То-есть банально «для развлекухи и обучения» УДВОИТЬ место требующееся на дисках несчастных пользователей[/quote:1q8wozex]
какие еще пользователи?
пользователь — один, начинающий программист. до поры до времени.
да, насчет удвоить место на диске я чего-то недопонял. С чего это вдруг?
Есть у тебя , допустим, набор AVI файлов, клипов.
Написал ты, допустим, программку под Windows с пользовательским интерфейсом на VC++ и бизнес-логикой, запускающей просмотр этих клипов,
потом скомпилировал приложение под стандартный Windows Installer.
И все.
С чего там удвоиться месту на дискe, когда EXE файл весит миллиграммы.
достоинства flash технологии как таковой и целесообразность ее применения вместо avi (mpg, wmv, etc.) — это, наверное, дискуссионный вопрос из другой области.
[quote="Traveller":2x4fkpe9][quote="Pochemychker":2x4fkpe9][quote="Traveller":2x4fkpe9]
но сделать можно — просто для развлекухи или для обучения.[/quote:2x4fkpe9]
Traveller — ты ему плохо желаешь. То-есть банально «для развлекухи и обучения» УДВОИТЬ место требующееся на дисках несчастных пользователей[/quote:2x4fkpe9]
какие еще пользователи?
[/quote:2x4fkpe9]
которые будут инсталлировать
[quote="Traveller":2x4fkpe9]
да, насчет удвоить место на диске я чего-то недопонял. С чего это вдруг?
Есть у тебя , допустим, набор AVI файлов, клипов.
Написал ты, допустим, программку под Windows с пользовательским интерфейсом на VC++ и бизнес-логикой, запускающей просмотр этих клипов,
потом скомпилировал приложение под стандартный Windows Installer.
И все.
С чего там удвоиться месту на дискe, когда EXE файл весит миллиграммы.
[/quote:2x4fkpe9]
Ты меня где-то потерял .. а зачем инсталлировать экзе файл вообще?
Инсталляция нужна если _ВСЕ_ кусочки (включая видео) запихнуты куда-то, откуда их надо доставать с расшифровкой (из-за специфики видеофайлов результат получится приблизительно того же объёма что
и исходный архив). Если расшифровки не нужно, то и инсталляции не нужно. Зачем бы
[quote="Traveller":2x4fkpe9]
?
достоинства flash технологии как таковой и целесообразность ее применения вместо avi (mpg, wmv, etc.) — это, наверное,
дискуссионный вопрос из другой области.[/quote:2x4fkpe9]
Почему «вместо» то? И почему дискуссионный? Ты когда последний раз видел что-то аналогичное youtube / rutube и т.д. работающее без флеша
[quote="Pochemychker":8nf28ba8][quote:8nf28ba8]какие еще пользователи?
[/quote:8nf28ba8]которые будут инсталлировать[/quote:8nf28ba8]
учебный пример по освоению языка программирования никто кроме разработчика инсталлировать не будет.
[quote:8nf28ba8]Ты меня где-то потерял .. а зачем инсталлировать экзе файл вообще?[/quote:8nf28ba8]
Еxe файл появится в папке «С:\Program Files\XXX» после инталляции.
В каком виде он будет упакован в дистрибутиве, можно, по большому, вообще не знать, если не возится специально с Windows Installer.
[quote:8nf28ba8]Инсталляция нужна если _ВСЕ_ кусочки (включая видео) запихнуты куда-то, откуда их надо доставать с расшифровкой (из-за специфики видеофайлов результат получится приблизительно того же объёма что и исходный архив). Если расшифровки не нужно, то и инсталляции не нужно.[/quote:8nf28ba8]
технически я могу любой набор файлов в дистрибутив запихнуть. Легко.
И разок-другой это сделать, на этапе освоения Visual Studio, полезно.
[quote="Traveller":254pio57]Еxe файл появится в папке «С:\Program Files\XXX» после инталляции.[/quote:254pio57]
Зачем?
[quote="Traveller":254pio57]
)
«надо — не надо» — вопрос философский.
А технически я могу любой набор файлов в дистрибутив запихнуть. Легко.[/quote:254pio57]
Угу, и знать для этого ничего не надо (ни си ни флеша) .. надо уметь пользоваться windows installer
[quote="Pochemychker":2qa76k6u][quote="Traveller":2qa76k6u]Еxe файл появится в папке «С:\Program Files\XXX» после инталляции.[/quote:2qa76k6u]
Зачем?[/quote:2qa76k6u]
что потом старовать WORD, or EXEL, or Abode Reader, or…
[quote="Traveller":8u84zp8x]что потом старовать WORD, or EXEL, or Abode Reader, or…[/quote:8u84zp8x]
а зачем для этого надо быть в папке Program Files ?
[quote="loco":3ear2yx2][quote="MaxRiga":3ear2yx2]уж очень не удобно получается у меня со временем брать отдельные курсы в универах, колледжах и тд, да еще и не на родном русском. Мне это не для работы, а для собственного интереса, поэтому никакой спешки нету. С удовольствием возьму репетитора на дом за разумную стоимость. Все предложения в личку или на имейл info@webmir.tv ( пропишите в subject — с++ )[/quote:3ear2yx2]
Если чисто для интереса — таки с# лучше, и с точки зрения освоения, и с т.з. стройности конструкции, что не отменяет его сложности. С++ — это куча древнего legacy, работа с памятью, отвратительный экспорт типов и отсутствие б-м внятного родного фреймворка
Плюс, синтаксически сам по себе язык сложнее
Я бы с удовольствие попреподавал, но
Для того чтоб начинать с 0, надо
1. Общее устройство компютера
2. Особенности ОС
3 Булева арифметика
4 Общее описание языка — что оно вообще ьакое и для чего
5 Описание типов — зачем они и что с ними делать
6 Функции — как логическая единица исполнения
7 Классы и ООП — что это, для чего придумано и как использовать
8 Фреймворк — хотя бы основные неймспейсы, т.к. без него чего-то делать будет трудоемко
Это если кратенько, как показывает опыт — народ обламывается на пункте 3.[/quote:3ear2yx2]
была книжка . кажется эффективный С++. рассказывает с 0 и сразу на С++. и это заблуждение что надо учить С++ зная С и функции с битиками. надо учить сразу С++. не заморачиваясь на всякую древнюю ерунду.
2автору: могу дать уроке С++ или Objective C быстро качественно и с 0. после трех занятий вы будете уже понимать, а через 5 уже говорить
[quote="Pochemychker":3q7g6f88][quote="Traveller":3q7g6f88]что потом старовать WORD, or EXEL, or Abode Reader, or…[/quote:3q7g6f88]
а зачем для этого надо быть в папке Program Files ?[/quote:3q7g6f88]
потому что «Program Files» обычно выбирают папкой для установки пользовательских приложений по умолчанию.
[quote="Traveller":1ajksilc]
имхо, это плюсы для корпоративных проектов, а не для собственного интереса.
С++ был и остается языком «more low-level approach» и как следствие — более гибким, универсальным и платформо-независимым
[/quote:1ajksilc]
Совсем не для корпоративных. Лямбды, или функциональный подход — как раз таки не корпоративное. Шарп сейчас вообще активно двигается в опен-сорс сторону, ты хотя бы на codeplex зайди глянь
1. Гибкий. Нет. Возми тот же экспорт типов — в плюсах ты б-м безгеморно можешь экспортировать только интерфейсы, а с конкретными классами — это жуткий геморрой. Одно из следствий — TDD и юнит-тесты пишутся ч-з одно место(в сравнении с)
2. Универсальный. Опять нет. Для embedded pure C намного лучше — тупо потому что ехе займет меньше места. Для десктопа? Уволь, на шарпе все пишется гораздо быстрее. Про веб я не говорю вообще
3. Платформо-независимый. Ооооо, богатая тема. Нифига он не независимый, т.к. язык — это еще не все. Есть еще и компилятор. И несморя на наличие стандарта, каждая контора пишет его по своему. И gcc в большинстве случаев сгенерит не так, как VS. И будет у тебя геморрой. Про шарп я тут не говорю — хоть и есть mono, но это не совсем полноценный CLR
[quote="Traveller":1ajksilc]
И самое главное — набив на нем нормально руку… ну, скажем, в классическом («страусруповском») варианте…
перейти, по мере надобности, на всякием шарпы, джавы и бэйсики — дело не архи-сложное.
То есть, для начала — очень даже интересно и перспективно именно С++.[/quote:1ajksilc]
Если речь идет о классической страуструпщине — так это плюсы и стл
И набивать на ней руку придется года два. При этом, С++, повторюсь, не самый лучший образчик ООП подхода
Переходить с него на шарпы и проч. — непросто, хочу заметить. Зачем время терять?
[quote="MaxRiga":vuyedtpt]
Браузерное программирование, пока, не интересует. Хочется начать с семейства C.[/quote:vuyedtpt]
Мой тебе совет — начни с С#
Гораздо быстрее перейдешь к программированию б-м полезных вещей
[quote="Traveller":2lerwyqd]
имхо, если научиться нормально пользоваться библиотеками (открытыми и коммерческими), написанными под C++ за долгие годы,
то тоже можно быстро делать практически любые вещи.
[/quote:2lerwyqd]
Ты ему еще boost порекомендуй, чтоб он мозг поломал
[quote="Traveller":1h0n8zm6][quote="Pochemychker":1h0n8zm6][quote="Traveller":1h0n8zm6]
[/quote:1h0n8zm6]
«Видеоархив в виде установочной программы» тоже на flash писать будем?
Traveller — а ты понял что это такое должно быть? [/quote:1h0n8zm6]
подозреваю, это что то (что угодно) предначенное для установки с помощью Windows Installer.[/quote:1h0n8zm6]
Граждане, вы чего
Зачем вам монструозный вининсталлер? InnoSetup — наше все
[quote="loco":2wgpf6pg]
Граждане, вы чего
Зачем вам монструозный вининсталлер? InnoSetup — наше все[/quote:2wgpf6pg]
loco, я собственно это к тому писал, что ни разу не нужно знать c++ чтобы создать инсталляшку .. а уж чем именно её создавать — дело вкуса и цвета
Ааааааааааааааааааааааааааааа!!!!!!!!!!!!!!
Набирал ответ и закрыл таб
Чума
[quote="Merlion":1c6i7pit]
— каким образом всё построено на булевой арифметике? почему не на обычной?
[/quote:1c6i7pit]
Потому что компутер не знает 1-2-3-4-5
Он знает только отсутствие сигнала(1) и его наличие(0)
т.е., 1 — 0001, 2 — 0010, 3 — 0011 етц
[quote="Merlion":1c6i7pit]
— не очень ясно, что такое битовые операции и каким боком они к булевой арифметике и всему остальному. К чему они принадлежат? К языку? К арифметике? К «типам-функциям-классам»? К чему-то ещё?
— а сами типы, функции и классы к чему принадлежат?
[/quote:1c6i7pit]
Э. Битовые операции — операции с битами числа:)
Реализуются опреаторами языка, как правило — unary &,|,^
Используются часто для поиска бита в маске. Нпример, есть 2 числа:
а = 0001; b = 0010; (маски)
Есть число d = 0110. Надо узнать, есть ли там а например, иными словами, установлен ли нулевой бит
у = a | d; результат > 0 — да, установлен
Есть операторы сдвига << и >>
a = 0001(1); b = a << 1; c = a<<2; d = a >> 1;
b == 0010(2), c == 0100(4), d == 0000(0)
Про типы
Если у тебя комп с 32-х битной шиной, это значит, что любое число представляестя в виде набора(наборов) 32-х битных «слов» — т.к. в шину больше не влезет:) Т.е. шина — это 32 провода, в каждом из которых или есть сигнал, или нет(0 или 1).
Т.к. у тебя есть только биты, ты не знаешь, что они представляют. Для представления нужна типизация, т.е. приведение этих битов к типу — int, short, float, char etc
Они встроенные в язык — т.е. ты ими можешь пользоваться сразу
Функция — это единичный логический блок состоящий из одной или нескольких операций.
например, у тебя есть выражение — x; y = x*x и ты хочешь сохранить этот бриллиант для потомства.
Ты выделяешь операцию в функцию —
int diamond(int x){return x*x;} , после чего используешь везде уже не операцию x*x, а символическое имя int diamond(int x)
Классы — примерно то же самое, но уже для функций. Если у тебя есть набор функций, описывающих какое-то явление, так сказать, их можно выделить в класс, описывающий это явление
Классы еще называют пользовательскими типами(в отличие от встроенных). Т.е. ты сам должен их сперва написать, а потом пользоваться
И классы и функции — это конструкции, _поддерживаемые_ языком(компилятором).
Иными словами, если ты напишешь несто вроде class MyClass{} то компилятор сообразит, что это именно класс, и относиться к нему надо как к классу. И если где-нить в коде он встретит нечто вроде MyClass mc = new MyClass(); то он скажет — ага! А я знаю, что такое MyClass!! Это пользовательский тип!!
ну и на закуску, про битовые операции
Классическая задача — разворот строки в полпрохода без временной переменной. Если не знаешь про XOR — ни за что не сделаешь
public static void Main(String[] args)
{
char[] reverted = {‘a’,’b’,’c’,’d’,’e’,’f’};
Console.WriteLine(reverted);
int length = reverted.Length;
for(int i = 0, j = length-1; i < length/2; ++i, j)
{
reverted[i] ^= reverted[j];
reverted[j] ^= reverted[i];
reverted[i] ^= reverted[j];
}
Console.WriteLine(reverted);
Console.ReadLine();
}
[quote="Pochemychker":2jgnqdiy][quote="loco":2jgnqdiy]
Граждане, вы чего
Зачем вам монструозный вининсталлер? InnoSetup — наше все[/quote:2jgnqdiy]
loco, я собственно это к тому писал, что ни разу не нужно знать c++ чтобы создать инсталляшку .. а уж чем именно её создавать — дело вкуса и цвета
[/quote:2jgnqdiy]
А. Ну да.
Это у меня просто болезненная фиксация
При словах installshield — вообще зверею
[quote="loco":2bflub4v] { }[/quote:2bflub4v]loco, если ты это написал, чтобы произвести впечатление, то произвёл. Если написал, чтобы понял чайник, то у тебя это не получилось. Вот приблизительно так же пишут авторы всех книг для чайников.
Если даже взять первый параграф твоей китайской грамоты
[quote:2bflub4v]Э. Битовые операции — операции с битами числаSmile
Реализуются опреаторами языка, как правило — unary &,|,^
Используются часто для поиска бита в маске. Нпример, есть 2 числа:
а = 0001; b = 0010; (маски)
Есть число d = 0110. Надо узнать, есть ли там а например, иными словами, установлен ли нулевой бит
у = a | d; результат > 0 — да, установлен [/quote:2bflub4v]
то при его прочтении возникают следующие вопросы:
— для чего нужны операции с битами числа и что такое бит числа?
— что такое операторы языка ? для чего служат вот эти символы: unary &,|,^ ?
— что такое маска и зачем с ней надо искать бит? И кто его ищет? И какими способами?
— числа а и b они где есть? и для чего узнать, есть ли а в d? И каким образом может быть а в d, если там уже есть а? оно поверху что ли?
— в формуле у = a | d что такое этот игрек? и куда делась b? Почему результат > 0 ? где это видно?
На эти вопросы сейчас отвечать не обязательно. Я их вообще тут задаю, чтобы проиллюстрировать полёт мысли чайника, читающего учебник по программированию.
Где бы найти такой учебник, чтобы вопросов поменьше возникало?
P.S.: Скачай плагин Lazarus для FireFox, чтобы не терять содержимое случайно закрытых страниц с формами
[quote="Merlion":14bp5mai]
то при его прочтении возникают следующие вопросы:
— для чего нужны операции с битами числа и что такое бит числа?
[/quote:14bp5mai]
есть 10-теричное представление числа. Например, 4 — это 4(набор из 1..9)
Есть 2-ичное. 4 там будет представлено как 0100(набор из 0..1)
Каждый ноль или 1 — это бит, счет битов ведется справо налево, с нуля. В указанном числе бит №2 — это единица
Считай, индекс
Я ж грю, надо сперва про двоичное представление читать, а то так все непонятно будет
[quote="Merlion":14bp5mai]
— что такое операторы языка ? для чего служат вот эти символы: unary &,|,^ ?
[/quote:14bp5mai]
Операторы — это то, что совершает операции над числами. Например, + — это оператор «плюс»
Символы — в программировании так обычно пишутся операторы И, ИЛИ, НЕ-ИЛИ
[quote="Merlion":14bp5mai]
— что такое маска и зачем с ней надо искать бит? И кто его ищет? И какими способами?
[/quote:14bp5mai]
Маска — число, представляющее собой набор битов, тех, которые тебе нужны
Ну например есть такая Win32 API функция FindFile. Она возварщает описатель обьекта файловой системы, причем описание что это — файл или каталог это число состоящее из вот этих вот установленных битов(т.е. выставленных в 1 или в 0)
Ищут просто, применяя унарный оператор ИЛИ(|) и маску — число, у которого все биты выставлены в ноль, за исключением того бита, который тебе нужен.
[quote="Merlion":14bp5mai]
— числа а и b они где есть? и для чего узнать, есть ли а в d? И каким образом может быть а в d, если там уже есть а? оно поверху что ли?
[/quote:14bp5mai]
Там не число, там бит
0001 — бит 0 выставлет=н в 1
0010 — бит 1 выставлен в 1
0100 — бит 2 выставлен в 1
0110 — биты 1 и 2 выставлены в единицы
[quote="Merlion":14bp5mai]
— в формуле у = a | d что такое этот игрек? и куда делась b? Почему результат > 0 ? где это видно?
[/quote:14bp5mai]
у — результат
б мне не надо, мне надо узнать, выставлен ли нулевой бит в 1 или нет
результат > 0 — ну, сделай побитовое ИЛИ и посмотри, что будет в результате
Блин
Это на бумажке рисовать надо
[quote="Merlion":14bp5mai]
Где бы найти такой учебник, чтобы вопросов поменьше возникало?
[/quote:14bp5mai]
Я же говорю, что надо с азов начинать, иначе трудно обьяснить. Это как я тебя попрошу обьяснить, что такое артикли, не зная языка вообще.
[quote="lelik93":1a0p4h27]
была книжка . кажется эффективный С++. рассказывает с 0 и сразу на С++. и это заблуждение что надо учить С++ зная С и функции с битиками. надо учить сразу С++. не заморачиваясь на всякую древнюю ерунду.[/quote:1a0p4h27]
Угу
Потом начинается такое —
public virtual bool IsUpload()
{
return IsAdmin() || (Mask==80)||(Mask==624)||(Mask==848)
|| (Mask==880)||(Mask==2128)||(Mask==2416)
|| (Mask==2544)||(Mask==2640)||(Mask==2672)
|| (Mask==2768)||(Mask==2800)||(Mask==2896)
|| (Mask == 2928) || (Mask == 3024) || (Mask == 3056);
}
Эта древняя ерунда — основа, без которой ты будешь попросту неэффективен
Простыми словами — будешь делать банальнейшие вещи ч-з одно место
loco, спасибо за ответы, но они мне в рамках одного этого топика ничего не дадут.
мне бы книжку… основы…
101, как это тут называется.
Loco, сори — ты идеальный критик, спорщик и любитель «гонять импульсы»
А я, наверное, по натуре больше адвокат — люблю говорить о плюсах (чего угодно)…
Поэтому я, в своей привычной манере, накидаю сейчас привлекательность C++ для «домашнего» (а-ля-хобби) использования, а ты оспаривай:
1. Обе самые популярные пользовательские операционки — Винда и Линукс — написаны на C++. ==>
взломать/защитить систему проще всего на нем же.
То есть, открыто огромное поле полезной работы «не отходя от кассы» (читай — на своем домашнем компе)
2. По той же причине, системные утилиты пишутся на нем же —
то бишь, всякие сервисы, драйвера, дефрагментаторы, etc.
то есть, можно легко найти для себя какой нибудь полезный [i:wyy8q7mc]enhancement[/i:wyy8q7mc]
3. Программы под Винду с пользовательским интерфейсом (кнопочками-окошечками) и бизнес-логикой на Visuаl C++ уже много лет делаются (соответсвенно, примеров на все случаи жизни в инете легко нарыть можно) — актуальность этих программ не пропала и в обозримом бубущем пропадать не думает, учитывая популярность «Мелкософта» в Америке.
4. Можно так же иметь прицелы на профессиональную рабьоту с C++ в широком диапазоне направлений — embedded sytems, ресурсоемкие расчеты (научные, бухглтерские, etc.), телекоммуникации … даже [i:wyy8q7mc]backend[/i:wyy8q7mc] в Web приложениях.
+ все что Microsoft создает и развивает под шарп и VB (ну например, MS Office automation), ВСЕГДА можно и и VC++ использовать… потому что сам код компонетов на C++ и написан.
P.S. плиз, не надо только про сложность — сложный он, сложный, и требует большей осторожности и внимательности, чем шарп.
Но сложность мотивации не проблема, как я понимаю!
Если докажешь, что Шарп в неком обозримом будущем побьет (заменит) C++ по указанным выше критериям, или сами эти критерии потеряют интерес, или я их неправильно выделил — будет классно в тему!!!
А где интервью с консулом?
[quote="Lioleg":3brsavbn]А где интервью с консулом?[/quote:3brsavbn]
Э-э… полагаю, что в Human Resources департменте, в «фолдере» с остальными материалами дела.
[quote="Merlion":27d7133x]loco, спасибо за ответы, но они мне в рамках одного этого топика ничего не дадут.
мне бы книжку… основы…
101, как это тут называется.[/quote:27d7133x]
Я не знаю даже:( У нас-то просто курс был, в универе, ну и потом там и сям читал всякое.
При этом жутко завидовал ртишникам с программерских факультетов — они уже все знали
Про биты — в сети много всякого. Наприммер http://mylearn.ru/kurs/14/553
Про программирование на с# — могу заслать пару книжек
Но для чайника — я таких не знаю. Честно. Т.е., там будет что-то, что научит тебя как обезьяну делать определенные действия, но почему так — ты понимать не будешь, и как только условия задачки немного изменятся — все, алес. Попробуй начать вот с указанного курса хотя бы, там вполне так просто ( http://mylearn.ru/kurs/14/554 )
Про системы исчисления — http://mylearn.ru/kurs/13