Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 92 • Страница 5 из 5<  1  2  3  4  5
  Версия для печати (полностью) Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 28.03.2006
За много лет использования и изучения С++ у меня есть следующее мнение, новичкам советую внимательно прочитать - вам будет очень полезно.

1) Если вы не хотите использовать никаких библиотек потому, что вам лень их изучать или же вам кажется, что свои вы напишите лучше - хорошо подумайте готовы ли вы к тому, что скоро выстрелите себе в ногу. Это адресовано тем, кто уже знает что такое классы, шаблоны и думает что он уже "уверенный программист С++". Язык С++ гораздо сложнее и запутаннее , чем многие люди думают, с помощью него очень просто придти к сложнейшим ситуациям, таким как: "непонятно_почему_прога_не_работает_целый_день_уже_дебагю" и "написал_5000_строк_кода_ничего_не_понимаю_капец".

2) Самая лучшая ( опять же , имхо) книга по С++ для людей, изучающих язык с нуля это Джесс Либерти "Освой С++ за 21 день", даже не думая, покупайте/скачивайте её.

3) Книга Страуструпа, как правильно было замечено, она бесполезна. Причем, мое мнение, что она и опытным программистам тоже бесполезна, потому что есть книге в этом классе и получше.

4) Есть мнение, что перед тем как изучать язык С++ нужно сначала изучать язык Си. На мой взгляд- никаких подтверждений серьёзных этому высказванию нет. Я бы рекомендовал сразу изучать С++ как минимум по следующим причинам: На чистом Си вы не найдёте программиста уже. Так или иначе - что-либо из С++ будет использоваться, потому что программировать на чистом Си - это практически тоже самое. что на ассемблере, его даже называют макроассемблер. Отсуствие типа bool, глобальные переменные и extern'ы вас гарантированно заколебут.

5) Также есть мнение, что мол Си (Си++) не сложнее чем Паскаль и более очевиден. Мой опыт говорит об обратном. Я прекрасно помню каким мне сложным показался С++, когда я только начинал изучать программирование, но уже программировал на Паскале. Кроме того, именно так и говорит массовое мнение. Потому что почти все опытные программисты на С++ начинали не с него, с Паскаля.

6) Не зацикливайтесь на С++. Сейчас программистов, желающих писать на этом языке становится все меньше и меньше. Программистов на С# и Java уже почти столько же, сколько на С++. И вероятнее всего тенденция идет к тому, то скоро языком номер 1 станет именно Сишарп. Причем чуть ли не во всех областях программирования массовых.

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



Партнер
 

Member
Статус: Не в сети
Регистрация: 21.01.2004
Откуда: ядерная помойка
Obscury писал(а):
Это точно. Его учебник по С++ по объёму такой же как и по С. Причём читать учебник по С перед чтением учебника по С++, по его уверениям, не нужно...Добавлено спустя 18 минут, 38 секундядерный отход, насколько я помню, меня удивил учебник Подбельского тем, что в нём нет ни слова про глубокое копирование (ну там про копи-конструктор и оператор присваивания). Поправь если я ошибаюсь, может меня подводит память...

именно так и есть. Он значительный объём уделяет именно "сишным" вещам (т.е. ненужным тем, кто уже знает си, и хочет узнать си++) - массивы, указатели, адресная арифметика, да что там - вообще начиная с лексических основ, типов и операторов.
Классам уделено, вроде, две главы, сведения общие, но хороший задел на будущее. ПРо конструктор копирования там сказано совсем мельком. Почему- не знаю, особенно при его особой внимательности к вопросам работы с памятью.
Добавлено спустя 9 минут, 47 секунд
ядерный отход писал(а):
4) Есть мнение, что перед тем как изучать язык С++ нужно сначала изучать язык Си. На мой взгляд- никаких подтверждений серьёзных этому высказванию нет. Я бы рекомендовал сразу изучать С++ как минимум по следующим причинам: На чистом Си вы не найдёте программиста уже. Так или иначе - что-либо из С++ будет использоваться, потому что программировать на чистом Си - это практически тоже самое. что на ассемблере, его даже называют макроассемблер. Отсуствие типа bool, глобальные переменные и extern'ы вас гарантированно заколебут.


Я согласен с основной мыслью. Тем более, что от СИ++ проще переходить ко всяким явам и дотнета, а они сегодня востребованы. Кстати, в С99 _Bool есть.

Aside писал(а):
Также есть мнение, что мол Си (Си++) не сложнее чем Паскаль и более очевиден. Мой опыт говорит об обратном. Я прекрасно помню каким мне сложным показался С++, когда я только начинал изучать программирование, но уже программировал на Паскале. Кроме того, именно так и говорит массовое мнение. Потому что почти все опытные программисты на С++ начинали не с него, с Паскаля.


Это совсем не так. Я, например, окончил МатМех СПбГУ, и ни на одной кафедре Паскаль не изучался. В школе у меня тоже был Си. Я, может, и не показатель, ибо "опытным программистом" себя назвать не могу - мне приходится этим заниматься, но это издержки профессии, однако с утверждением "все начинали с паскаля" не согласен совершенно.

Aside писал(а):
6) Не зацикливайтесь на С++. Сейчас программистов, желающих писать на этом языке становится все меньше и меньше. Программистов на С# и Java уже почти столько же, сколько на С++. И вероятнее всего тенденция идет к тому, то скоро языком номер 1 станет именно Сишарп. Причем чуть ли не во всех областях программирования массовых.

Человеку, знакомому с Си++ освоить джаву и шарп не будет стоить никаких усилий. Грубо говоря, сел, и начал писать, сходу причём, лишь заглядывая в хелп.

_________________
memento mori


 

Member
Статус: Не в сети
Регистрация: 28.03.2006
ядерный отход писал(а):
Это совсем не так. Я, например, окончил МатМех СПбГУ, и ни на одной кафедре Паскаль не изучался.

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

ядерный отход писал(а):
однако с утверждением "все начинали с паскаля" не согласен совершенно.

Ну вот дядьки крутые, которым щас за 30 - они с него и начинали :) и таких полно. и не только дядек. я вот например тоже застал.

Цитата:
Человеку, знакомому с Си++ освоить джаву и шарп не будет стоить никаких усилий.

Да, все правильно.

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


 

Member
Статус: Не в сети
Регистрация: 30.07.2006
Откуда: Москва-Ярик
Aside писал(а):
я изучал паскаль в школе

Мне вообще пришлось начинать с Бейсика, который сейчас просто ненавижу :) Потом перешел на паскаль, и можно сказать что успешно на нем застрял. Для разработок в финансовой сфере (торговля ЦБ и фьючерсами, роботы/МТС), вообще говоря это самый предпочтительный язык - цена ошибок очень велика, поэтому текст программ должен быть не только хорошо откомментирован, документирован, но и сам по себе обязан являться образцом читабельности. Никакой лаконичности, присущей Си диалектам, никаких суперсжатых мощных выражений, не рекомендуется использовать. Этап отладки должен быть по возможности самым коротким и элементарным в процессе разработки серьезной МТС. Слышал что некоторые банки в Европе предпочитают брать программистов на Обероне для написания подобных систем. Вобщем, могу с уверенностью утверждать, что роль Паскале-подобных языков школой не ограничивается, хотя нашим правительством вроде как много лицензий на Turbo Delphi закуплено именно для школ :)

_________________
Плавайте поездами Аэрофлота!
И синий BSOD нам заменяет небосвод...


 

Member
Статус: Не в сети
Регистрация: 28.03.2006
Ну я имел в виду именно Turbo Pascal, а не делфи. Делфи это уже совсем другое программирование. Безусловно хорошая вещь, я тоже на ней успел посидеть, пока в итоге полностью не перешёл на С++. Затем когда Шарп стал популярным я изучил и его. Вот эти 2 языка я щас и юзаю , и никакие другие. Я бы сказал про Шарп, что он имеет всё то удобство и простоту, которые там всем нравятся в Delphi, и так же он взял в себя всю ту мощность, за которую любят С++.

Зы. Говоря "Шарп", я не отделяю его от .NET. Вообще сейчас уже сам язык рассматривать бесполезно. Любой. Даже С++.
Зы2. Есть мнение , что мол "C# это не С++ скорее, а Джава. А джава появилась ещё в девяностых. Но такого ажиотажа она не вызвала. Почему такой ажиотаж вокруг Шарпа ???". Насчет схожести Java & C# тут все верно. Однако ажиотаж, имхо вызван тем, что:
1) С# программисты, это как правило бывшие и текущие C++ программисты - а таких навалом.
2) У C# есть среда, а у джавы её в тот момент... ну не то, что не было, но разница между Visual Studio 2003 и тем что было сто лет назад просто катастрофическая. Я даже больше скажу - из всего того, что я видел для Джавы современного мне понравился только Eclipse, но даже он уступает студии. (имхо конечно, не бейте)
3) Джава тормозит, а Сишарп нет.
4) сам язык мощнее. Можно перегружать операторы. Можно юзать указатели. В Джаве этого делать нельзя.

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


 

Member
Статус: Не в сети
Регистрация: 09.01.2008
Откуда: Питер
Ну вот люди я знаю тока ХТМЛ. Вот с чего мне начать изучать программирование?
Пока я вижу два пути:
1)Начать с простых и прикладных языков => Сложные языки проще изучать с начала
2)Начать с сложный языков (типа c++\с#) => в последуююще просто орректировка знаний под другие языки
Правильны ли мои выводы?

_________________
Загавариваю компьютеры от вирусов, привораживаю разгон.


 

Member
Статус: Не в сети
Регистрация: 07.10.2003
Откуда: Russia, Moscow
начни с паскаля или С простого.

_________________
В поиске включайте "Искать все слова". Избегайте многоточий.
Зачем нужен разгон? http://tsc.overclockers.ru


 

Member
Статус: Не в сети
Регистрация: 11.04.2004
Откуда: СПБ
Aside писал(а):
Но такого ажиотажа она не вызвала.

да, потому что сыра была. Сейчас жавобум, жавовакансий щас в разы больше чем .NET (по крайней мере тут в Питере), каждая аутсорс-контора занимается клепанием проектиков на J2EE.
Aside писал(а):
Я даже больше скажу - из всего того, что я видел для Джавы современного мне понравился только Eclipse, но даже он уступает студии.

давно смотрел. На мой взгляд Intellij IDEA как среда намного мощнее студии. Но это имхо.
Aside писал(а):
Джава тормозит, а Сишарп нет.

весьма спорно.
Aside писал(а):
сам язык мощнее. Можно перегружать операторы. Можно юзать указатели. В Джаве этого делать нельзя.

Это да. Особенно если взять С# 3.0. Хотя указатели используются в 0.0001% случаев.


 

Member
Статус: Не в сети
Регистрация: 21.01.2004
Откуда: ядерная помойка
Aside писал(а):
Понимаете, я изучал паскаль в школе, глазами школьника С++ смотрелся очень сложным. Речь идет о первом языке программирования, а не о языке, которому вас первый раз учат в универе. В универах сейчас паскаль все меньше и меньше встречается. (А встречается ли вообще ?)Да и это правильно, потому что такой уровень программирования должна давать школа. В универе должны уже давать что-то более серьёзное.

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


Aside писал(а):
Ну вот дядьки крутые, которым щас за 30 - они с него и начиналии таких полно. и не только дядек. я вот например тоже застал.

Видимо, мы разных дядек видели. Так или иначе, ваше обобщение некорректно хотя бы потому, что я таких не знаю.


alpet писал(а):
Вобщем, могу с уверенностью утверждать, что роль Паскале-подобных языков школой не ограничивается, хотя нашим правительством вроде как много лицензий на Turbo Delphi закуплено именно для школ

Турбо делфи вообще бесплатно распространяется, а изучение делфи сегодня - это обречение себя в лучшем случае на поддержку уже готовых программ - так себе перспектива. Сейчас практически нигде ничего не начинают с нуля на делфи. Если вы действительно этими вопросами интересуетесь, то знали бы, что сейчас в основном всё пишется на шарпе и джаве и различные системы управления, и даже банковские системы. И, кстати, код очень удобочитаем и понятен. Всё это си-подобный синтаксис.

Aside писал(а):
Ну я имел в виду именно Turbo Pascal, а не делфи. Делфи это уже совсем другое программирование.

Без разницы. В первом приближении можно считать, что Делфи = это паскаль + ООП.

Aside писал(а):
1) С# программисты, это как правило бывшие и текущие C++ программисты - а таких навалом.2) У C# есть среда, а у джавы её в тот момент... ну не то, что не было, но разница между Visual Studio 2003 и тем что было сто лет назад просто катастрофическая. Я даже больше скажу - из всего того, что я видел для Джавы современного мне понравился только Eclipse, но даже он уступает студии. (имхо конечно, не бейте)3) Джава тормозит, а Сишарп нет.4) сам язык мощнее. Можно перегружать операторы. Можно юзать указатели. В Джаве этого делать нельзя.


Я не согласен с этими пунктами. Джава - очень популярна, особенно на западе. Не хочется просто затевать религиозные войны, но ваша категоричность здесь совсем неправильна, особенно насчёт тормозов. Да и по поводу IDE неправда. Да и указатели - не аргумент (тут уже говорили об этом).

armadillo писал(а):
начни с паскаля или С простого

странный совет.

AimCube писал(а):
1)Начать с простых и прикладных языков => Сложные языки проще изучать с начала2)Начать с сложный языков (типа c++\с#) => в последуююще просто орректировка знаний под другие языки

Я плохо понимаю, что такое простые языки, а что такое сложные. C# - простой язык, если есть понимание. что такое классы. Я бы советовал изучать C++ и основы ООП, ну а дальше всё по колено уже будет.

_________________
memento mori


 

member+
Статус: Не в сети
Регистрация: 16.01.2004
Откуда: Estonia,Tallinn
AimCube писал(а):
Ну вот люди я знаю тока ХТМЛ. Вот с чего мне начать изучать программирование?

Учитывая вопрос лучше начать JavaScript, и им-же и закончить. (человек действительно желающий серьёзно заниматься программированием не будет задавать такой вопрос)
Добавлено спустя 4 минуты, 24 секунды
Catar писал(а):
Aside писал(а):
Джава тормозит, а Сишарп нет.

весьма спорно.

При прочих равных бесспорно, но на практике (в коммерческих продуктах) чаще всего зависит от слишком многих факторов. (Начиная с жадности инвесторов, и до того в каком настроении офисная уборщица подметала пол.)

_________________
X99-TF/E5-2678v3+Evo212/2x16Gb-DDR4-Gloway-TYPE-a@2133-12-13-13-26/GTX1070TI/KINGSTON-SNV2S1000G


 

Member
Статус: Не в сети
Регистрация: 11.04.2004
Откуда: СПБ
Vladson писал(а):
При прочих равных бесспорно, но на практике (в коммерческих продуктах) чаще всего зависит от слишком многих факторов. (Начиная с жадности инвесторов, и до того в каком настроении офисная уборщица подметала пол.)

Обоснования? результаты тестов? корявый и тормозной софт можно и там и там написать, а от интерпретации в Java отказались уже черти когда.


 

Member
Статус: Не в сети
Регистрация: 28.03.2006
Ничего больше подробно объяснять не буду. За меня уже всё объяснили другие:

http://www.kriconf.ru/2006/rec/KRI_2006 ... _Nival.ogg

http://www.kriconf.ru/2006/rec/KRI_2006 ... _forum.ogg


ЗЫ. У меня есть пример проекта, где указатели в Сишарпе становятся краеугольным камнем. Обработка изображений. Т.к. эти приложения очень критичны к скорости, то использование указателей спасает производительность там.

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


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 92 • Страница 5 из 5<  1  2  3  4  5
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan